软件品质特性·副特性的构成
ISO/IEC9126将表示软件质量的特性分为6种品质特性,进一步细分为21种品质副特性。
6种品质特性: 機能性、信頼性、使用性、効率性、保守性、移植性
21种品质副特性:
1)機能性: 要求机能的实现度。 细分为:合目的性、正確性、相互運用性、標準適合性、セキュリティ
2)信頼性: 机能持续正常动作的能力。 细分为:成熟性、障害許容性、回復性
3)使用性: 理解、使用的难易度。 细分为:理解性、習得性、運用性
4)効率性: 系统运行效率。 细分为:時間効率性、資源効率性
5)保守性: 保守、修正工作的难易度。 细分为:解析性、変更性、安定性、試験性
6)移植性: 移植到其它环境的难易度。 细分为:環境適用性、設置性、規格適合性、置換性
理解软件品质的方法
软件的品质,可以分为“2个主要观点”和“2个补充观点”来理解。
2个主要观点是: 设计质量 和 程序质量。
设计质量 = “用户要求”和“设计式样”的一致程度 = 外部式样的质量
程序质量 = “设计式样”和“程序实现”的一致程度 = 内部式样的质量
2个补充观点是: 过程的质量 和 使用时的质量。
这2个补充观点都可以作为单独的文章来说明,在这里仅做简单的解说。
过程的质量:
过程的结果是成果物(例如:开发出来的系统)。为此而花费的工数、期间、利益,以及(使用系统之后)顾客或最终用户的满意度、目的达成程度等,都是成果。 这些成果的状况都被过程的目的和手段所左右。现在的系统开发通常不是一个技术这就能够完成的,团队开发已成为软件开发的“前提条件”。在这种情况下,过程 的改善,以及这种改善成果的好坏,最终会影响到成果物的质量。
使用时的质量:
软件系统是为了给人们带来便利才开发的,自然应该开发出让人易用的系统才行。由此产生了使用时的质量的概念。ISO 9241-11将使用时的质量定义为以下3点。
1)有效性: 正确、完全的实现了用户的要求;
2)效率性: 达成有效性所耗费的资源程度;
3)满足度: 使用产品时,没有不快感,对产品是肯定的态度。