软件设计师考试 | 第五章 软件工程基础知识 | 软件质量


软件质量是指反映软件系统或软件产品满足规定或隐含需求的能力的特征和特性全体。

(一)软件质量特性

1.ISO/IEC 9126软件质量模型

由三个层次组成:

  1. 质量特性
  2. 质量子特性
  3. 度量指标

ISO/IEC软件质量模型

各质量特性和质量子特性的含义:

  • 功能性(与一组功能及其特定的性质的存在有关的一组属性,功能是指满足规定或隐含需求的那些功能)
    • 适应性
    • 准确性
    • 互用性
    • 依从性
    • 安全性
  • 可靠性(与在规定的一段时间内和规定的条件下软件维持在其性能水平有关的能力)
    • 成熟性
    • 容错性
    • 易恢复性
  • 易使用性(与为使用所需的努力和由一组规定或隐含的用户对这样使用所做的个别评价有关的一组属性)
    • 易理解性
    • 易学性
    • 易操作性
  • 效率(在规定条件下,与软件的性能水平与所用资源量之间的关系有关的软件属性)
    • 时间特性
    • 资源特性
  • 可维护性(与进行规定的修改所需要的努力有关的一组属性)
    • 易分析性
    • 易改变性
    • 稳定性
    • 易测试性
  • 可移植性(与软件可从某一环境转移到另一环境的能力有关的一组属性)
    • 适应性
    • 易安装性
    • 一致性
    • 易替换性

2.Mc Call软件质量模型

由三层模型组成:

  • 质量特性
  • 评价准则
  • 度量指标

Mc Call软件质量模型


(二)软件质量保证

软件质量保证是指为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,其目的是生产高质量的软件。

要点:

  • 软件必须满足用户规定的需求,与用户需求不一致的软件无质量可言
  • 软件应遵循规定标准所定义的一系列开发准则,不遵循这些准则的软件,其质量难以得到保证
  • 软件还应满足某些隐含的需求,例如希望有好的可理解性、可维护性等

包括:

  • 应用技术方法
  • 进行正式的技术评审
  • 测试软件
  • 标准的实施
  • 控制变更
  • 度量
  • 记录保存和报告

(三)软件评审

使得用户满意的必要条件:

  • 设计的规格说明书符合用户的要求,称为设计质量
  • 程序按照设计规格说明书所规定的情况正确执行,称为程序质量

1.设计质量的评审内容

对象: 在需求分析阶段产生的软件需求规格说明、数据需求规格说明,及在软件概要设计阶段产生的软件概要设计说明书等

评审内容:

  • 评价软件的规格说明是否合乎用户的要求,即总体设计思想和设计方针是否明确;需求规格说明是否得到了用户或单位上级机关的批准;需求规格说明与软件的概要设计规格说明是否一致等
  • 评审可靠性,即是否能避免输入异常、硬件失效及软件失效所产生的失效,一旦发生应能及时采取代提手段或恢复手段
  • 评审保密措施实现情况,即是否对系统使用资格进行检查;是否对特定数据、特定功能的使用资格进行检查;在检查出有违反使用资格的情况后,能否向系统管理人员报告有关信息;是否提供对系统内重要数据加密的功能等
  • 评审操作特性实施情况,即操作命令和操作信息的恰当性;输入数据与输入控制语句的恰当性;输出数据的恰当性;应答时间的恰当性等
  • 评审性能实现情况,即是否达到所规定性能的目标值
  • 评审软件是否具有可修改性、可扩充性、可互换性和可移植性
  • 评审软件是否具有可测试性
  • 评审软件是否具有复用性

2.程序质量的评审内容

程序质量评审通常是从开发者的角度进行评审,与开发技术直接相关。

软件的结构:

  • 功能结构,需要检查的项目如下:
    • 数据结构(包括数据名和定义;构成该数据的数据项;数据与数据之间的关系)
    • 功能结构(包括功能名和定义;构成该功能的子功能;功能与子功能之间的关系)
    • 数据结构和功能结构之间的对应关系(包括数据元素与功能元素之间的对应关系;数据结构与功能结构的一致性)
  • 功能的通用性
  • 模块的层次
  • 模块的结构,需要检查的项目如下:
    • 控制流结构
    • 数据流结构
    • 模块结构与功能结构之间的对应关系
  • 处理过程的结构

3.与运行环境的接口

检查项目如下:

  • 与硬件的接口(包括与硬件的接口约定,即根据硬件的使用说明等所做出的规定;硬件故障时的处理和超载时的处理)
  • 与用户的接口(包括与用户的接口约定,即输入数据的结构;输出数据的结构;异常输入时的处理,超载输入时的处理;用户存取资格的检查等)

(四)软件容错技术

1.容错软件的定义

定义:

  • 规定功能的软件,在一定程度上对自身错误的作用具有屏蔽能力,则称该软件具有容错功能的软件,即容错软件
  • 规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为容错软件
  • 规定功能的软件,在因错误发生错误时仍然能在一定程度上完成预期的功能,则称该软件为容错软件
  • 规定功能的软件,在一定程度上具有容错能力,则称该软件为容错软件

2.容错的一般方法

实现容错的主要手段是冗余。
冗余是指对于实现系统规定功能是多余的那部分资源,包括硬件、软件、信息和时间。

冗余技术分类:

  • 结构冗余
    • 静态冗余
    • 动态冗余
    • 混合冗余
  • 信息冗余
  • 时间冗余
  • 冗余附加技术

软件设计方案 用户界面设计规范 用户界面:又称人机界面,实现用户与计算机之间的通信,以控制计算机或进行用户与计算机之间的数据传送的系统部件。 GUI:即图形用户界面,一种可视化的用户界面,它使用图形界面代替正文界面。 本系统坚持图形用户界面(GUI)设计原则,界面直观、对用户透明。用户接触软件后对界面上对应的功能一目了然、不需要多少培训就可以方便地使用本应用系统。 1、界面设计介绍 界面设计是为了满足软件专业化标准化的需求而产生的对软件的使用界面进行美化优化规范化的设计分支。 1)软件启动封面设计 应使软件启动封面最终为高清晰度的图像,选用的色彩不宜超过256色,大小多为主流显示器分辨率的1/6大。启动封面上应该醒目地标注制作或支持的公司标志、产品商标、软件名称、版本号、网址、版权声明、序列号等信息,以树立软件形象,方便使用者或购买者在软件启动的时候得到提示。插图宜使用具有独立版权的、象征性强的、识别性高的、视觉传达效果好的图形,若使用摄影也应该进行数位处理,以形成该软件的个性化特征。如果是系列软件还将考虑整体设计的统一和延续性。 2)软件框架设计 软件的框架设计要复杂得多。软件框架设计应该简洁明快,尽量少用无谓的装饰,应该考虑节省屏幕空间,各种分辨率的大小,缩放时的状态和原则,并且为将来设计的按钮、菜单、标签、滚动条及状态栏预留位置。设计中将整体色彩组合进行合理搭配,将软件商标放在显著位置,主菜单应放在左边或上边,滚动条放在右边,状态栏放在下边,以符合视觉流程和用户使用心理。 3)软件按钮设计 软件按钮设计应该具有交互性,即应该有3到6种状态效果:点击前鼠标未放在上面时的状态;鼠标放在上面但未点击的状态;点击时状态;点击后鼠标未放在上面时的状态;不能点击时状态;独立自动变化的状态。按钮应具备简洁的图示效果,名称易懂,用词准确,能望文知意最好,让使用者产生功能关联反应,群组内按钮应该风格统一,功能差异大的按钮应该有所区别。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值