修改系统使其能适应于不同的用途或环境的能力,而不必对系统进行特定的设计。
◆可移植性
能修改所设计的某一系统使其能在其它环境下运行的能力。
◆可重用性
能将系统的一部分用于其它系统的难易程度。
◆可读性
能读懂或理解系统源代码的能力,尤其是在细节说明这一级上。
◆可测试性
对整个系统进行单元或系统测试以证实其满足所有需求性能的测试难易程度。
◆可理解性
能从整个系统水平或细节说明这一级上理解整个系统的难易程度。可理解性要比可读性从更一般的水平上讨论系统的紧密性。
对于一个实际的软件项目而言,想把上面的所有质量特征都做好是一件很难的事情,尤其是在项目有明确的进度压力下面。质量,资源和时间是项目管理的三要素,三者相互影响和制约,提高质量是有成本和代价的,提高质量可能带来更多资源的投入或进度的延后。因此项目经理的关注点就是如何根据项目的实际特点来平衡好这三要素,制订切实可行的质量目标。
2.提高软件质量的方法
首先应该确认的是质量需要一个持续改进和提高的过程。谈提高软件质量就是首先要有历史参照,根据参照制定新的质量目标,然后对产品进行验证达到新的更高级别的目标。你的软件是否可维护不是某个开发人员说了算,而是应该有一套明确的标准和准则。
PMBOK里面对于质量管理过程组提及到实施质量保证和实施质量控制两个重要的过程。质量保证是确保项目按照组织定义的过程在做事情;而质量控制是对你的结果进行检查,看是否达到了预期的质量目标。在CMMI里面我们关注过程改进和软件质量的关系,过程改进是否真正提高软件质量,一个重点就是过程的有效性问题,如果我们能干确保过程是有效的,那是肯定可以提高软件质量的。