欢迎来到天天文库
浏览记录
ID:58336537
大小:344.81 KB
页数:46页
时间:2020-09-07
《《软件质量模型》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、虽然有许多产品特性可以称为质量属性(QualityAttribute),但是在许多系统中需要认真考虑的仅是其中的一小部分。如果开发者知道哪些特性对项目的成功至关重要,那么他们就能选择软件工程方法来达到特定的质量目标。根据不同的设计可以把质量属性分类。一种属性分类的方法是把在运行时可识别的特性与那些不可识别的特性区分开。另一种方法是把对用户很重要的可见特性与对开发者和维护者很重要的不可见特性区分开。那些对开发者具有重要意义的属性使产品易于更改、验证,并易于移植到新的平台上,从而可以间接地满足客户的需要。质量属性1McCa
2、ll提出了表明软件质量的11个质量特性,表1给出了McCall提出的11个质量特性及其含意。表1McCall提出的质量特性质量特性含意可回答的问题正确性Correctness程序能够满足规格说明和完成用户业务目标的程度它做了该做的事吗?可靠性Reliability程序能够按要求的精度实现其预期功能的程度它总能准确地工作吗?2效率Efficiency程序实现其功能所需要的计算机资源量它能在硬件上尽力工作吗?完整性Integrity软件或数据不受未授权人控制的程度它是安全吗?可用性Usability学习、操作程序、为其准备
3、输入数据、解释其输出的工作量它可用吗?可维护性Maintainability对运行的程序找到错误并排除错误的工作量它可调整吗?测试性Testability为保证程序执行其规定的功能所需的测试工作量它可测试吗?3灵活性Flexibility修改运行的程序所需的工作量它可修改吗?可移植性Portability将程序从一种硬件配置和/或环境转移到另一硬件配置和/或环境所需的工作量可以在另一台机器上用它吗?可重用性Reusability程序可被用于与其实现功能相关的其他应用问题的程度可以重复使用它的某些部分吗?互操作性Inte
4、roperability一系统与另一系统协同运行所需的工作量它能够与另外系统联接吗?4运行修正转移维护性灵活性测试性可移植性可重复用互操作性正确性可靠性完整性使用性效率图1在运行阶段用户的质量特性观点用户对于已投人使用的软件,会关心软件运行以后表现出来的运行特性,修正特性和转移特性。也即从这3个方面理解上述11个质量特性,于是我们把11个质量特性分为3组,使其分别录属于上述3个方面,请参见图1。5主要用途质量因素评价准则效率产品运行正确性可靠性完整性使用性可跟踪性完整性一致性图2McCall等人提出的软件质量模型6效率
5、一致性准确性执行效率容错性模块性简洁性图3McCall等人提出的软件质量模型评价准则质量因素主要用途产品运行正确性可靠性完整性使用性7产品运行正确性可靠性完整性使用性效率主要用途质量因素评价准则图4McCall等人提出的软件质量模型执行效率简明性可操作性8安全性产品运行正确性可靠性完整性使用性效率主要用途质量因素评价准则图5McCall等人提出的软件质量模型工具性可审计性9可靠性完整性产品运行正确性使用性效率主要用途质量因素评价准则图6McCall等人提出的软件质量模型可训练性可操作性10图7McCall等人提出的软件
6、质量模型主要用途质量因素评价准则一致性工具性简明性模块性自描述性简洁性产品修改维护性灵活性测试性11图8McCall等人提出的软件质量模型主要用途质量因素评价准则复杂性工具性可审计性模块性自描述性简洁性产品修改维护性灵活性测试性12图9McCall等人提出的软件质量模型主要用途质量因素评价准则一致性复杂性简明性可扩充性模块性简洁性通用性产品修改维护性灵活性测试性13图10McCall等人提出的软件质量模型主要用途质量因素评价准则模块性自描述性软件独立性硬件独立性通用性产品转移移植性共运行性复用性14图11McCall等
7、人提出的软件质量模型主要用途质量因素评价准则模块性自描述性通用性硬件独立性软件独立性产品转移移植性共运行性复用性15图12McCall等人提出的软件质量模型主要用途质量因素评价准则模块性通用性通信共用性数据共用性产品转移移植性共运行性复用性16可跟踪性:沿一个设计说明或一个实际程序构件返回到需求的能力。完整性:所需功能实现的程度。一致性:在整个软件开发项目中使用统一的设计和文档编制技术的程度。容错性:当程序出错时,造成破坏的程度。准确性:计算和控制的精确程度。执行效率:程序的运行时间。复杂性:程序结构化、模块化、简明、
8、简洁、清晰和可理解的程度。17安全性:控制或保护程序和数据机制的有效性。工具性:程序监视自身运行和识别出现错误的程序。简明性:程序代码的紧密程度。可训练性:程序使新用户使用该系统的辅助程度。可操作性:程序操作的难易程度。可审计性:检查与标准是否符合的难易程度。可扩充性:系结构、数据或过程设计可扩充的程度。模块性:程序各构件的功能独
此文档下载收益归作者所有