一、ABSD概念
基于架构的软件设计(ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程,是一个自顶向下,递归细化的软件开发方法。
- 它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。
- 采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始。因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。
二、ABSD阶段
采用ABSD方法进行软件开发时,需要经历6个阶段:
- 架构需求
- 架构设计
- 架构文档化
- 架构复审
- 架构实现
- 架构演化
三、架构需求
架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望,其主要活动包括需求获取、标识构件和架构需求评审。
- 需求获取活动需要定义开发人员必须实现的软件功能,满足功能需求。还要活动软件质量属性,满足一些非功能性需求。
- 标识构件活动首选需要获得系统的基本结构,对基本结构进行分组,最后将基本结构打包成构件。
- 架构需求评审活动组织一个由系统涉众组成的小组,对架构需求及相关构件进行审查,审查的主要内容包括所获取的需求是否真实反映了用户需求,以及构件合并是否合理。
四、架构设计
架构设计阶段是一个迭代过程,利用架构需求生成并