1.2软件构造的性能指标
1.2软件构造的性能指标
1. 软件构造过程中应考虑的重要质量指标
2.如果达不到期望的质量目标,会有什么后果
3.有哪些面向质量指标的软件构造技术
Quality properties of software systems 软件系统的指标特征
– External vs. internal quality factors 内部和外部质量因素
– Important external quality factors 重要的外部因素
– Tradeoff between quality factors 权衡质量质量指标
§ Five key quality objectives of software construction 五个软件的质量指标
– Easy to understand: elegant and beautiful code / understandability 易理解性
– Ready for change: maintainability and adaptability 可维护性,可变化性
– Cheap for develop: design for/with reuse: reusability 可复用性
– Safe from bugs: robustness 健壮性
– Efficient to run: performance 表现
一.软件构造的质量指标
外部和内部因素,外部因素影响用户,内部因素影响软件本身和它的开发者,外部质量取决于内部质量。
(1)外部因素
Correctness正确性,按照预先定义的规约(spec)执行{
1) Test and debugging测试和调试:发现消除不正确->Robustness
2) Defensive programming 防御式编程:写程序的时候确保正确性
3) 形式化方法,形式化验证发现问题
Robustness健壮性:针对异常情况的处理(超出spec的行为)
出现异常时不崩溃
Extendibility 可扩展性:容易适应新的变化
1)简约主义设计Design simplicity
2)分离主义设计 Decentralization
Reusability 可复用性:一次开发多次使用
发现共性,DRY(DON’ T REPEAT YOURSELF )
Compatibility兼容性:不同的软件系统之间相互可容易的集成
保持设计的同构性
1)标准化文件格式 2)标准化数据结构 3)标准化用户接口
Efficiency高效性(注意,不过早优化)
Portability可移植性:软件可方便的在不同环境间移植
Ease of use 易用性(容易学和操作,给用户提供详细的指南)
Functionality 每损失一小点功能,都确保其他质量属性不受到损失
Timeliness 及时性, 用户需要时及时出现
其他特性:可验证性,完整性,可修复性,经济性
(2)内部因素
代码行数,复杂度。
Readability可读性 Understandability可理解性Clearness Size
(3)质量指标间的权衡
1)正确的软件开发过程中,开发者应该将不同质量因素之间如何做出折中的设
计决策和标准明确的写下来
2)虽然需要折中,但“正确性”绝不能与其他质量因素折中