软件构造 第一章第二节 软件开发的质量属性
1.软件系统质量指标
External quality factors affect users
外部质量因素影响用户
Internal quality factors affect the software itself and its developers
内部质量因素影响软件本身和它的开发者
External quality results from internal quality
外部质量取决于内部质量
外部属性:
正确性:按照预先定义的"规约"执行,最重要的指标
保证的方法:
-Testing and debugging
-Defensive programming such as typing and assertions
-Formal approach: "check", "guarantee" and "ensure"
健壮性:
针对异常情况的处理
未被specification覆盖的情况即为"异常情况"
可扩展性
离散化:低耦合
可复用性
兼容性
跨平台、跨软件
实现方法:一致性和标准化(一致的方法和标准)
效率
可移植性
应用性
用户是否容易使用,不影响专业人员的使用情况下,方便初学者
功能性
(不好的现象:开发者开发越来越多的功能,造成程序的复杂和不灵活)
原则:在保证整体质量不降低的情况下进行更新
策略:增量式模型
及时性
在规定时间内完成:时间效率高
内部属性:
从LOC(line of code)到圈复杂度:用来衡量一个模型判定结构的复杂程序
耦合度和内聚度
代码是否可读、可理解、简洁
完整性
五个质量属性: