第一章软件构造的多维度视图和质量目标
本节主要是对课件PPT的一个摘要
多层次视图
Build-time: 构造阶段
Code-level: functions, classes, methods, interfaces 代码的逻辑组织
Component-level: files, directories, packages, libraries 代码的物理组织
Moment: 特定时刻的软件形态
Period: 软件形态随时间的变化
Runtime: 运行阶段 程序被载入目标机器,开始执行
Code-level: 代码层面:逻辑实体在内存中如何呈现
Component-level: 构件层面:物理实体在物理硬件环境中如何呈现
Moment: 逻辑/物理实体在内存/硬件环境中特定时刻的形态如何
Period: 逻辑/物理实体在内存/ 硬件环境中的形态随时间如何变化?

不同视图的转换
从无到有代码:
- 编程/写代码(ADT/OOP)
从Code到Component:
- Design(ADT/OOP;可复用性;可维护性)
从Buildtime到runtime:
- Debug,unit/integration testing(单元测试和集成测试(测试鲁棒性和正确性))
从Moment到Period:
- Version control(版本控制)
软件系统的质量属性
External quality factors:外部质量因素影响用户
Coreectness(正确性):最重要的质量指标
定义:正确性是软件产品能够安装预先定义的“规约”执行的能力
Robustness(健壮性又称鲁棒性):针对异常情况的处理
定义:健壮性是对正确性的补充,健壮性要求当出现规约定义之外的情形的时候,软件要做出恰当的反应。
正确性和鲁棒性的包含关系如图所示:

Extendibility(可拓展性):对软件的规约进行修改是否足够容易
Reusability(可复用性):一次开发,多次使用
对于可拓展性和可复用性主要可以通过良好的设计模式来实现。
浙公网安备 33010602011771号