软件构造的质量指标
3.1外部质量指标:面向用户
⇒Correctness 正确性
按照预先定义的规约(spec)来执行
保证正确性的方法:
1)测试和调试
2)防御性变成
3)形式化方法
⇒Robustness 健壮性
针对异常情况的处理
出现spec定义之外的情形时,软件做出适当的反应
⇒ Extendibility 可扩展性
对软件规约的修改是否足够容易
⇒ Design simplicity 简约主义设计
⇒ Decentralization分离主义设计
⇒ Reusability 可复用性
一次开发多次使用
⇒ Compatibility 兼容性
不同的软件系统之间相互可容易的集成
⇒ homogeneity of design (保持设计的同构性)
⇒ approach (标准化)
standardized file format
standardized data structures
standardized user interfaces
standardized access protocols
⇒ Efficiency
没有正确性的性能毫无意义
对性能的关注要与其他质量属性进行折中
⇒ Portability
不同技术环境之间;硬件,操作系统
⇒ Ease of use
a clear well-thought structure
know the user ; complete user guid.
⇒ Functionality
the extent of possibility provided by a system
⇒ Timeliness (及时性)
released when or before its users want it .
⇒ Others
Verifiability(可验证性):ease of providing acceptance procedures
Integrity(完整性): ability of software systems to protect their various
Repairability(可修复性)
Economy(经济型)
3.2软件的内部指标
⇒ 源码相关:
1)Lines of Code (LOC)
2) Cyclomatic complexity (圈复杂度)
⇒结构(Architecture)相关:
1) coupling 耦合度
2)conhesion 聚合度
⇒Readability;Understandability;Clearness ; Size .