一些刚实施GJB5000A组织的开发人员,不是很理解概要设计和详细设计的区别。这里再次解读下这个问题。 一般地说,概要设计又叫结构设计、部件设计,它主要是描述软件由哪些部件或模块构成的,以及这些部件或模块之间的关系。而详细设计则是具体描述每个部件或模块的实现方法。 除此之外,概要设计和详细设计还有以下不同点:
概要设计承接软件需求,所以概要设计可以由需求分析人员(熟悉软件需求)编写或者设计人员(站在设计的角度)来编写,而详细设计下后续软件实现,它可以由设计人员(站在设计的角度)编写,也可以由实现人员(站在实现的角度)来编写。
概要设计依据软件需求进行设计,而详细设计不仅依据软件需求,更要依据概要设计的成果。
概要设计对应于集成测试,是设计集成测试用例的主要依据;而详细设计对应于单元测试,是设计单元测试用例的主要依据。
概要设计给出了软件由哪些部件组成以及它们之间的关系,是最基本的设计要求,所以概要设计文档必须具备,不能裁剪;而详细设计用于指导代码实现的,详细设计文档可以合并到概要设计文档中,甚至在敏捷开发中,还可以用代码注释及可读性好的代码代替代详细说明。
在面向对象设计中,概要设计要将软件拆分到包和类。虽然并不一定能覆盖所有的类,但是包对外的接口类一定要覆盖,包内部的核心类要覆盖。在结构化设计中,概要设计要详细到模块,即函数的上级系统元素。而详细设计则要详细到完成方法或函数的逻辑设计。 这正是: 两种设计大不同,一为结构一详细 前定框架为基础,后描组件怎实现 |
|