虽然这些文档一般来说公司都是有模板的,但我写这些文档以来基本上是每写一次就把目录结构给改一次,应该说这是因为自己对这些文档的理解开始加深,慢慢的越来越明白这些文档的作用和其中需要阐述的东西,觉得这三份文档主要阐述了一个系统的设计和实现过程,从系统分解为层次、层次内的模块以及相互的接口、模块分解为对象以及对象的接口、实现这些对象接口的方法。这次又整了一份,^_^,欢迎大家指正。
http://www.blogjava.net/BlueDavy/archive/2005/06/13/6037.html
XXX架构设计说明书
(架构设计重点在于将系统分层并产生层次内的模块、阐明模块之间的关系)
一. 概述
描述本文的参考依据、资料以及大概内容。
二. 目的
描述本文编写的目的。
三. 架构设计
阐明进行架构设计的总体原则,如对问题域的分析方法。
3.1. 架构分析
对场景以及问题域进行分析,构成系统的架构级设计,阐明对于系统的分层思想。
3.2. 设计思想
阐明进行架构设计的思想,可参考一些架构设计的模式,需结合当前系统的实际情况而定。
3.3. 架构体系
根据架构分析和设计思想产生系统的架构图,并对架构图进行描述,说明分层的原因、层次的职责,并根据架构图绘制系统的物理部署图,描述系统的部署体系。
3.4. 模块划分
根据架构图进行模块的划分并阐明模块划分的理由,绘制模块物理图以及模块依赖图。
3.4.1. 模块描述
根据模块物理图描述各模块的职责,并声明其对其他模块的接口要求。。
3.4.2. 模块接口设计
对模块接口进行设计,并提供一定的伪代码。
XXX概要设计说明书
(概要设计重点在于将模块分解为对象并阐明对象之间的关系)
一. 概述
描述本文的参考依据、资料以及大概内容。
二. 目的
描述本文的编写目的。
三. 模块概要设计
引用架构设计说明书中的模块图,并阐述对于模块进行设计的大致思路。
3.1. 设计思想
阐明概要设计的思想,概要设计的思想通常是涉及设计模式的。
3.2. 模块A
3.2.1. 概要设计
根据该模块的职责对模块进行概要设计(分解模块为对象、描述对象的职责以及声明对象之间的接口),绘制模块的对象图、对象间的依赖图以及模块主要功能的序列图,分别加以描述并相应的描述模块异常的处理方法。
3.2.2. 模块接口实现
阐明对于架构设计中定义的模块接口的实现的设计。
XXX详细设计说明书
(详细设计重点在于对模块进行实现,将模块的对象分解为属性和方法,并阐述如何实现)
一. 概述
阐述本文的参考依据、资料以及大概内容。
二. 目的
阐述本文的编写目的。
三. 模块详细设计
3.1. 设计思想
阐述对模块进行详细设计的思想。
3.2. 模块A
3.2.1. 详细设计
根据模块概要设计详细描述对于模块内对象的实现,包括对象的职责、属性、方法、对象内功能的流程图、对象关联的类、对象的异常。(需要绘制的主要为类图)
问:架构设计在实际软件工程中应该归入概要设计的一部分,难道你们是单独列出吗?
BlueDavy答:
在大型的项目中是有必要分开的....
架构解决系统核心用例以及关键性需求的设计,形成抽象的基础结构,划分模块、形成模块接口.
概要解决模块以及模块接口的实现,形成模块中核心对象以及对象的接口定义..
详细解决模块中具体对象的实现以及对象接口的实现