乐于分享
好东西不私藏

软考(系统架构师)-软件架构设计之基于架构的开发方法

软考(系统架构师)-软件架构设计之基于架构的开发方法

基于架构的开发方法ABSD(Architecture Based Software Development)是架构驱动的,强调由业务质量功能需求的组合驱动架构设计。它是一个自顶向下、递归细化的软件开发方法,软件系统的架构通过该方法得到细化,直到能产生软件构件和类(模块)。
ABSD有三个基础:
功能的分解:在功能分解中,ABSD方法使用已有的基于模块的内聚和耦合技术
选择架构风格来实现质量和业务需求
软件模板的使用
ABSD强调采用视角和视图来描述软件架构,采用用例和质量场景来描述需求。进一步来说,用例描述的是功能需求,质量场景描述的是质量需求。
ABSD的开发过程包括:架构需求、架构设计、架构文档化、架构复审、架构实现以及架构演化

架构需求

需求来自三个方面:系统的质量目标系统的商业目标系统开发人员的商业目标
架构需求包括:需求获取、标识构件、架构需求评审
标识构件过程包括:生成类图、对类进行分组、把类打包成构件

架构设计

包括:提出架构模型、映射构件、分析构件相互作用、产生架构、设计评审

架构文档化

架构文档化过程的主要输出结果是架构规格说明测试架构需求的质量设计说明书
文档的完整性质量是软件架构成功的关键因素,架构文档有以下几点注意事项:

从使用者的角度书写,针对不同背景的人员采用不同的书写方式;
将文档分发给相关人员;
文档要保持较新,但不需要随时保证文档最新,要保持文档的稳定性

架构复审

目的是标识潜在的风险,及早发现架构设计中的缺陷和错误
需要外部独立人员参与(用户代表、领域专家

架构实现

包括复审后的文档化的架构、形成构件库、架构演化
形成构件库包括:分析与设计、构件实现、构件组装、系统测试、架构演化

架构演化

包括:需求变化归类、架构演化计划、构件变动、更新构件的相互作用、构件组装和测试、技术评审、演化后的架构
其中架构设计、架构文档化、架构复审是一个循环的过程