前言
本文描述软件系统的三个维度、软件系统的质量属性、软件构建的五个关键质量目标
一、软件构造的多维视角
下图能简单明了的概括软件构造的多维化视角,以及本课程中我们需要学习的重点(已标红)
从三个维度进行划分:
- 按阶段划分:构造时/运行时视图
- 按动态性划分:时刻/阶段视图
- 按构造对象划分:代码/构件视图
1.构造层面
Build-time (构造阶段): idea → requirement → design → code →
installable / executable packag
1)Build-time,moment,and code-level view
按照基本程序块(如函数、类、方法、接口等)以及它们之间的依赖关系在逻辑上组织源代码。
有三个相互关联的形式:
词汇层面(Lexical-oriented): source code(源代码)
语法层面(Syntax-oriented): AST,即Abstract Syntax Tree(抽象语法树)
语义层面(Semantics-oriented): nterface-Class-Attribute-Method(也叫做Class Diagram,即类图)
2)Build-time, period, and code-level view
- 描述随时间“变化”的视图。
- 代码生产代码变化:行添加、修改或删除一个文件从一个版本到另一个地方。