多维度视图和质量目标
多维度试图
按阶段划分:构造时/运行时
按动态性划分:时刻/阶段
按构造对象的层次划分:代码/构件
Build-time
1.build-time\moment\code-level view
1.词汇层面:Lexical-oriented source code
2.语法层面:AST
3.语义层面:Class Diagram
2.build-time\period\code-level view
Code churn:代码变化
3.build-time\moment\component-level view
Package\File\Static Linking\Library
4.build-time\period\component-level view
Configuration Item(配置项)\Version(版本)
Run-time
1.run-time\moment\code-level view
Snapshot diagram代码快照图\Memory Dump内存信息转储
2.run-time\period\code-level view
Execution stack trace执行跟踪:用日志方式记录程序执行的调用次序
3.run-time\moment\component-level view
Dynamic linking等
4.run-time\period\component-level view
Event log:事件日志
视图维度的转换
质量目标
外部质量因素
影响用户
1.正确性:发现不正确、消除不正确
2.健壮性:针对异常情况的处理
3.可扩展性:对spec的修改是否足够容易
4.可复用性:一次开发,多次使用
5.兼容性:不同软件系统之间相互可容易的集成
6.性能:与其他质量属性折中
7.可移植性:软件在不同的技术环境之间移植
8.易用性 :容易学、安装、操作
9.功能性
10.及时性
内部质量因素
影响软件本身和它的开发者
1.可读性 2.易理解性 3.清晰性 4.大小
两者关系
外部质量取决于内部质量