软件质量属性
12-11
1.阐述软件系统功能性和质量属性之间的关系
2.我们在软件开发实践中通常关心系统的哪几种质量属性
3.请写出性能质量属性的一般质量属性场景
题目解答:
1. 软件系统功能性是指系统能够完成所期望的工作的能力,而质量属性则是高于系统功能基本要求的,它是对多种更高层次需求的抽象描述,如安全、可靠、易用及易于修改等,显然它适用于多个特定系统而非一个。由此我们可以看出,功能性和质量属性是正交的关系,即对应于相同的功能可以具有不同的质量属性。
2. 我们在软件开发实践中通常所关心的系统的质量属性有以下几种:
1)易用性(Usability):涉及到构架和非构架两个方面
2)可修改性(Modifiability):由划分功能的方式(构架)和模块中的编码技巧及注释(非构架)两方面决定
3)系统的性能(Performance):既受到构架的影响又受到具体算法的影响
4)安全性(Security)
5)可用性(Availability)
3. 性能与事件发生时,将要耗费系统多长时间做出响应有关.对性能进行分析,影响性能的因素包括:事件源的数量和到达模式,而到达系统的事件包括:周期性事件、随机事件或偶然事件。
根据我们所了解的,质量属性场景包括刺激源、刺激、环境、制品、响应和响应度量。根据各个部分的具体要求结合系统性能,我们可以将性能的一般质量属性场景描述为: