目录

系统架构设计师系统架构设计篇基于体系结构的软件开发方法

系统架构设计师—系统架构设计篇—基于体系结构的软件开发方法

概述

基于体系结构(架构)的软件设计(Architecture-Based Software Design,ABSD)方法。

ABSD方法时 体系结构驱动 ,即指构成体系结构的商业、质量和功能需求的组合驱动的。在基于体系结构的软件设计方法中,采用 视角与视图 来描述软件架构,采用 用例 来描述功能需求,采用 质量场景 来描述质量需求。

ABSD方法是一个 自顶向下、递归细化 的方法,软件系统的体系结构通过该方法得到细化,直到能产生软件构件和类。

ABSD方法有三个基础:

  1. 功能的分解 :ABSD方法使用已有的、基于模块的内聚和耦合技术。
  2. 通过选择体系结构风格来实现质量和商业需求
  3. 软件模板的使用

基于体系结构的开发模型-ABSDM

ABSDM把整个基于体系结构的软件过程划分为 体系结构需求、体系结构设计、体系结构文档化、体系结构复审、体系结构实现、体系结构演化 的子过程,直到能产生软件构件和类。

https://i-blog.csdnimg.cn/direct/9a895789f2174b65bb0b084e67c3640c.png

体系结构需求

需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。

体系结构需求过程主要是 获取用户需求、标识系统中所要用到的构件,可以复用需求库中已有的构件

主要过程:

  1. 需求获取
  2. 标识构件:为系统生成初始逻辑结构,包含大致的构件。
    1. 第一步:生成类图。
    2. 第二步:对类进行分组。在生成的类图的基础上,使用一些标准对类进行分组可以大大简化类图结构,使之更清晰。
    3. 第三步:把类打包成构件。
  3. 需求评审
    1. 组织一个由不同代表(如分析人员、客户、设计人员、测试人员)组成的小组,对体系结构需求及相关构件进行仔细的审查。

    2. 审查的主要内容包括所获取的需求是否真实反映了用户的要求,类的分组是否合理,构件合并是否合理等。

    3. 必要时,可以再“需求获取—标识构件—需求评审”之间进行迭代。

      https://i-blog.csdnimg.cn/direct/144dfe600a6342ab9ad449ee25034c31.png

体系结构设计

主要过程:

  1. 提出体系结构模型:提出架构风格
  2. 映射构件:按照架构风格的思路映射构件
  3. 分析构件相互作用
  4. 产生体系结构
  5. 设计评审

https://i-blog.csdnimg.cn/direct/1cfd019fdb6940e3a8ec850698f2434a.png

体系结构文档化

主要输出结果是 体系结构规格说明 和测试体系结构需求的 质量设计说明书 这两个文件。

体系结构复审

体系结构复审是一个迭代过程,目的是标识出 潜在的风险 尽早发现体系结构设计中的 缺陷错误

从这个方面来说,在一个主版本的软件体系结构分析之后,要安排一次由外部人员( 用户代表领域专家 )参加的复审。

体系结构实现

主要过程:

  1. 复审后的文档化的体系结构

  2. 分析与设计

  3. 构件实现

  4. 构件组装

  5. 系统测试

  6. 体系结构演化

    https://i-blog.csdnimg.cn/direct/9a855f2f3a874d43a532eff76b684350.png

体系结构演化

主要过程:

  1. 需求变化归类

  2. 体系结构演化计划

  3. 构件变动:更新构件库

  4. 更新构件的相互作用

  5. 构件组装与测试

  6. 技术评审

  7. 演化后的体系结构

    https://i-blog.csdnimg.cn/direct/815950aec6e2484283ea697b7fdd59b7.png