摘要

在软件开发过程中,软件的质量是一个重要的因素,而软件体系结构在整个过程中显得尤为重要。软件的质量需求是在开发初期的非功能性需求,对软件的体系结构影响很大。但是并不意味着一味的追求质量,必须在效率和质量之间寻求一个平衡点。

为了实现高的软件质量,软件体系结构必须具有良好地可移植性,可靠性,可维护性,适应性,互用性,组件复用和实时性等方面的要求。

《ISO/IEC 9126-1 :软件产品评估—质量特性及其使用指南纲要》,在此标准中,定义了六种质量特性,并且描述了软件产品评估过程的模型。该技术将质量这一大的特性细化到属性级别或可测项。这样,就可以通过比较这些属性、可测项从一系列候选体系结构中选择出一个合适的来开发软件。

在此标准中,定义了六种质量特性,27个子特性,并且描述了软件产品评估过程的模型。

l 功能性

是指当软件在指定条件下使用,软件产品满足明确和隐含要求功能的能力,即适合性

并且能够得到正确或相符的结果或效果,即准确性

拥有能够和其他指定系统进行交互的能力,即互用性

防止对程序或数据的未经授权访问的能力,即安全性

l 可靠性

在指定条件下使用时,软件产品维持规定的性能水平的能力。

其中包括成熟性,指软件产品避免因软件中错误发生而导致失效的能力;

容错性:是指在软件发生故障或违反指定接口的情况下,软件产品维持规定的性能水平的能力;

易恢复性:是指在失效发生的情况下,软件产品重建规定的性能水平并恢复受直接影响的数据的能力。

l 易用性

是指在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力。

l 效率

是指在规定条件下,相对于所用资源的数量,软件产品可提供适当的性能的能力。

其中,时间特性:是指在规定条件下,软件产品执行其功能时,提供适当的响应时间和处理时间以及吞吐率的能力;

除此之外,资源利用性:是指在规定条件下,软件产品执行其功能时,所使用的资源数量及其使用时间。

l 可维护性

是指软件产品可被修改的能力,修改可能包括修正,改进或软件适应环境、需求和功能规格说明中的变化。

l 可移植性

是指软件产品从一种环境迁移到另一种环境的能力。

以上六个均要符合依从性即遵循有关标准、约定、法规或类似规定。

适合性:软件产品为指定的任务和用户目标提供一组合适功能的能力。

如:

软件提供了用户所需要的功能;

软件提供的功能是用户所需要的;

准确性:软件提供给用户功能的精确度是否符合目标。

如:

运算结果的准确,数字发生偏差,多个0或少个0

互操作性:软件与其它系统进行交互的能力。

如:

PC机中WORD和打印机完成打印互通;

保密安全性:软件保护信息和数据的安全能力。(主要是权限和密码)

功能性的依从性:遵循相关标准(国际标准、国内标准、行业标准、企业内部规范)

成熟性:软件产品为避免软件内部的错误扩散而导至系统失效的能力(主要是对内错误的隔离)

容错性:软件防止外部接口错误扩散而导致系统失效的能力(主要是对外错误的隔离)

易恢复性:系统失效后,重新恢复原有的功能和性能的能力。

可靠性的依从性:遵循相关标准。

易理解性:软件交互给用户的信息时,要清晰,准确,且要易懂,使用户能够快速理解软件。

易学性:软件使用户能学习其应用的能力。

易操作性:软件产品使用户能易于操作和控制它的能力。

易用性的依从性:遵循一定的标准。

时间特性:软件处理特定的业务请求所需要的响应时间。

资源利用性:软件处理特定的业务请求所消耗的系统资源。

效率依从性:遵循一定的标准。

易分析性:软件提供辅助手段帮助开发人员定位缺陷产生的原因,判断出修改的地方。

易改变性:软件产品使得指定的修改容易实现的能力。(降低修复问题的成本)

稳定性:软件产品避免由于软件修改而造成意外结果的能力。

易测试性:软件提供辅助性手段帮助测试人员实玩其测试意图。

维护性的依从性:遵循相关标准。

适应性:软件产品无需作相应变动就能适应不同环境的能力。

易安装性:尽可能少的提供选择,方便用户直接安装。

共存性:软件产品在公共环境中与其它软件分享公共资源共存的软件。

易替换性:软件产品在同样的环境下,替代另一个相同用途的软件产品的能力。

可移植性的依从性:遵循相关的标准。

之后可根据不同项目要求基于ISO9126-1标准,选择不同的结构来作为基础进行开发。结合具体的系统质量需求的优先级和质量目标,建立表格进行分析比较,选出最适合的一个。

软件质量质量评估已经成为了一门技术,ISO/IEC 9126-1标准用来定义软件体系结构质量模型,这是对软件质量的又一进步,使得软件体系结构的设计过程得以改善,对软件质量的保证有着不可磨灭的贡献。

ISO-9126 软件质量模型的更多相关文章

  1. ISO9126软件质量模型

    ISO9126软件质量模型,是评价软件质量的国际标准.6个特性27个子特性组成. ISO/IEC9126软件质量模型是一种评价软件质量的通用模型,包括3个层次: 1.质量特性 2.质量子特性 3.度量 ...

  2. ISO七层模型详解

    ISO七层模型详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在我刚刚接触运维这个行业的时候,去面试时总是会做一些面试题,笔试题就是看一个运维工程师的专业技能的掌握情况,这个很 ...

  3. 软件测试基础Ⅲ(osi7层协议,测试模型,LoadRunner组件,软件质量模型)

    osi7层开放式系统互连网络模型 1.物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的 ...

  4. TCP/IP四层协议模型与ISO七层模型

    TCP/IP四层协议模型与ISO七层模型 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中上帝打乱了各地人的口音,让他 ...

  5. McCall的软件质量模型

    McCall等认为,特性是软件质量的反映,软件属性可用做评价准则,定量化地度量软件属性可知软件质量的优劣 McCall认为软件的质量模型应该包括 产品的修正.产品的转移,产品的运行 而产品的修正又包括 ...

  6. 网络知识_01:ISO七层模型

    一 IOS七层模型 1.1OSI的概念 Open System Interconnect开放系统互连参考模型,是由ISO(国际标准化组织)定义的.它是个灵活的.稳健的和可互操作的模型. 1.2OSI模 ...

  7. 我对ISO 七层模型的理解

    应用层: 负责native格式的请求配置,请求发起.关闭等功能: 负责应用数据请求可直接调用的api的支持. 使用表示层和会话层包装而成的便捷工具(API):Alamofire 表示层: 将应用层配置 ...

  8. 软件测试价值提升之路- 第三章"拦截缺陷 "读书笔记

    作为一个测试团队,基本的职责是:测试产品,发现缺陷,报告结果,使每个版本的测试水准稳步提升.这些价值是作为一个测试所必须具备的,发挥这些价值能够让测试获得研发团队的基本信任.这类价值分为3部分: 1) ...

  9. 软件质量特征 ISO9126

    ISO/IEC9126软件质量模型是一种评价软件质量的通用模型,包括3个层次: 1.质量特性 2.质量子特性 3.度量指标 其中各六个质量特性与二十七个质量子特性的关系如下表: 1.功能性 是指当软件 ...

随机推荐

  1. mysql颠覆实战笔记(二)-- 用户登录(一):唯一索引的妙用

    版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...

  2. 关于Object[]数组强转成Integer[]类型的数组.

    为什么不能由Object[]数组强转成Integer[]数组. Object[] ins= { new Integer(0), new Integer(1), new Integer(2), new ...

  3. Wince 文本函数和字体应用

    好像又进入了一个疲惫期了,晚上状态不好,但是还是想继续更新下博客,继上次分析了wince下设备环境以及怎么绘制相关图像后,,笔者在这片文章中讲到文本函数以及其相关应用.文本输出函数是输出文本的内容,也 ...

  4. hdu 4606 简单计算几何+floyd+最小路径覆盖

    思路:将所有的直线的两个端点和城市混在一起,将能直接到达的两个点连线,求一次floyd最短路径.二分枚举bag容量,然后按给的要先后占领的城市由前向后,把能到一步到达的建一条边.然后求一次最小路径覆盖 ...

  5. PE制作实录 —— 补充说明

    上一篇博文中我提到了定制 PE 合盘的方法,可能还有一些朋友不是很懂,这里补充几点. 要点1: 菜单的排布 U盘启动时的界面,这里叫做主界面,而主界面下有时还会用到子界面,下面是我制作的PE的菜单目录 ...

  6. C# 委托的几种写法

    class Program    {         delegate string Get(string ss);        delegate string Get2(int i);       ...

  7. Ajax具体使用

    Ajax在注册页面经常使用,当注册用户是用户名必须唯一时,要使用ajax获取表单中你输入的内容, 然后将这个数据利用XMLHttpRequest对象请求一个php文件,这个php文件接收到信息,查询数 ...

  8. Ehcache(2.9.x) - API Developer Guide, Cache Eviction Algorithms

    About Cache Eviction Algorithms A cache eviction algorithm is a way of deciding which element to evi ...

  9. 百度手机号码归属地查询api与返回json处理

    前天无意间在网上看到百度ApiStore,然后好奇就进去看了看.正好最近在某博培训Android,刚学到java基础.抱着锻炼的心态选择手机号码归属地查询api进行练手.api地址 (http://a ...

  10. Android 扫描蓝牙设备

    Android扫描蓝牙设备是个异步的过程,核心的步骤为:调用bluetoothAdapter的startDiscovery()进行设备扫描,扫描的结果通过广播接收处理!具体如下: 1.申请相关权限 & ...