软件质量管理与模型
目录
一.ISO
二.软件质量
三.质量模型(ISO9126)
一.ISO
背景
二.软件质量
小思考
三.质量模型(ISO9126)
ISO9126软件质量模型是评价软件质量的国际标准,由6个特性和27个子特性组成。
个别解释
功能性
是否满足了客户的需求
适合性
所提供的的功能是用户所需要的,及用户所需要的功能软件系统已提供。
例如:在医疗软件系统上如果有一款可供娱乐的游戏,试想医生一边给病人看病一边玩游戏会造成什么后果。
准确性
软件系统提供给用户的功能是否满足用户对该功能的精确度要求。
例如财务类软件,如果不涉及特殊用户的需求(如科研机构的特种应有),精度一般都容易满足。
操作性
软件系统与一个或多个周边关系进行信息交互的能力。
例如:Linux系统是数据的发送方,把数据发送到windows系统上,在windows系统上运行的应用软件需能读出数据格式的能力。
保密安全性
软件系统保护信息和数据的能力
1)防止未得到授权的人或系统访问相关的信息或数据
2)保证得到授权的人或系统能正常访问相关的信息或数据
例如:用户验证;用户权限管理;系统数据的保护
功能性的依从性
遵循相关的标准(国际标准、国家标准、行业标准企业内部规范等)约定或法规以及类似规定的能力。
可靠性
软件是否能够一直在一个稳定的状态上满足可用性
成熟性
软件系统防止内部错误扩散而导致失效的能力。
例如:模块A更改了某参数,但没考虑到某参数同时被模块B调用,由于模块B并未相关更改,结果使得模块B的相关功能失效。
容错性
软件系统防止外部接口错误扩散而导致失效的能力。
例如:应用软件在操作过程中需操作一个文件,但由于此文件已遭破坏,由于缺少容错处理,结果执行文件操作时,软件崩溃。
易恢复性
系统失效后重新恢复原有功能、性能的能力,包括对原有能力恢复的成都与速度。
例如:windows系统优势会遇到系统不响应的情况,只好按Reset或关掉电源重新开机。这种情况,当前未保存的数据当然是丢失了,系统重启后能否正常进入系统便是易恢复性的一种体现。
易用性
衡量用户使用软件需要付出多大的努力的质量属性。产品易于学习和使用。可减轻记忆负担等。
易理解性
用户在实验软件系统的过程中,展示给用户的信息是否准确、清晰、易懂,能帮助用户准确理解系统当前真实的状态,并指导其进一步的操作。
例如:登录界面,提示“用户名或密码不正确”。
易学性
软件提供相关的辅助手段,帮助用户学习使用它的能力
例如:是否具有在线帮助。在线帮助常见的有两种,一种是跟随功能而变得帮助,如Word、Excel中的菜单项鼠标提示(tips);另一种是在线帮助手册,如同windows程序按快捷键F1自动跳出帮助手册内容。
易操作性
用户基本不用额外学习即能操作软件
1)常用功能路径不用太深,最后能提供快捷键,且这些快捷键具有普适性
2)最好提供一键返回桌面的功能,这一点苹果的Iphone手机做的比较好
3)操作尽量简单,,例如软件的安装或升级,按提示点击“下一步”且不易太长时间或多个选择路径。
吸引性
软件具体某些独特的,能让用户延期一亮的属性,包括GUI(Graphical User Interface,图形用户界面),多媒体应用。
例如:苹果Iphone4手机,当短信发送成功时,除了弹出新颖的冒泡状提示,还会伴有声音提示你,且声音可由用户根据喜好自行设置。
效率
衡量软件正常运行需要耗费多少时间及物理资源,是性能测试的重点内容。
时间效率
软件系统在各业务场景下完成用户指定的业务请求所需的响应时间。
例如:在互联 上发表博客,点击“提交”后,一般情况都需等待几秒钟,那么此等待时间,就可以理解为系统响应的时间。
资源效率
软件系统自完成用户指定的业务请求所消耗的系统资源,如CPU占有率、内存占有率、通信宽带占有率、软件内部消息包资源占有率等。
例如不同业务功能直接,不同CPU界面相互直接的切换,如果切换过程中有明显的后影,或速度太慢,很可能资源占用方面没有处理好。
易分析性
软件系统提供辅助手段帮助开发人员肥西识别缺陷、失效产生的原因,找出特修复部分的能力。
采用系统日志记录的方法,如同windows的事件查看器(eventvwr),吧软件执行代码的轨迹或某些错误、状态进行记录,是一种常见的方法。
易改变性
软件缺陷的修复容易被实施,这与软件的设计有着密切的关系。
例如设计上封装性好、高内聚(同层次设计时,一个实体)
稳定性
软件系统在长时间连续工作环境下能否正常工作,不出错,无异常情况等
稳定性与资源效率有紧密联系。
例如内存的慢泄露,时间越长,系统稳定性越差,内存资源占用越多,最后可能导致系统瘫痪。
易操作性
从测试验证角度,软件存在可测试性的难易程度。
例如:UI界面,提示框对话框,按钮响应状态变化等是很容易观察到的,可测试性强;对鉴于系统设计原因,某种用户场景难于验证,测试的条件苛刻,需特定的实验室条件,通过发布特殊版本进行测试。
可移植性
衡量软件是否能够方便地部署到不同的运行环境的能力
适应性
软件系统无需做任何做任何相应变动就能适应不同运行环境的能力,其中运行环境通常是指操作系统平台、数据库平台、硬件平台等。
例如,某系统软件原来运行在windows XP操作系统上,现在也需要成功运行在windows 7,windows8.
易安装性
平台变化后,成功安装软件的难以程度
对于软件的安装过程,能尽量考虑用户少参与,多一些自动安装过程会让用户更放心
共存性
软件系统在公共环境与其共享资源的其他系统共存的能力
测试时不仅需要关注自身软件特性的实现,还要关注本软件是否影响了其他软件的正常功能。
易替换性
软件系统的升级能力,包括在线升级、打补丁升级等
易替换性相对于嵌入式产品软件系统来说,由于设计硬件物料的更新换代,如某主控芯片、USB接口芯片的换代,还肯会触发底层取得的升级
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!