【质量和软件的概念】
1 质量(quality)
ISO9001:2008 定义:质量为一组固有特性满足要求的程度。
(1)特性:可区分的特征
(2)要求:明示的、通常隐含的或必须履行的需求或期望
质量具有经济性、广义性、时效性、相对性。
产品:
ISO9000:2008 解释:产品是过程的结果。
产品可以分为 4 种类别:硬件、流程性材料、软件、服务或者它们的组合。
2 影响质量的因素
人、机(设备)、物(材料)、方法、环境
3 质量目标
在质量方面所追求的目的,是产品和工程质量在一定时间内可达到的水平。
4 质量成本
将产品质量保持在规定的质量水平上所需的有关费用。
(1)运行时质量成本:保证和提高产品质量支付的费用 + 因质量故障造成的损失费用
(2)外部质量保证成本:为用户提供所要求的客观证据所支付的费用。
5 质量管理
从技术层面和质量管理的角度去思考产品质量。
6 软件和软件产品
6.1 软件
软件 = 程序(数据) + 文档 + 服务
软件是:
(1)能够完成预定功能和性能的可执行的指令(计算机程序);
(2)使得程序能够适当地操作信息的数据结构;
(3)描述程序操作和使用的文档。
6.2 软件产品组成部分
(1)程序代码 (2)帮助文件 (3)用户手册 (4)样本和示例 (5)标签
(6)产品支持信息 (7)图表和标志 (8)错误信息 (9)广告与宣传材料 (10)软件的安装
(11)软件说明文件(12)测试错误提示信息
6.3 软件产品和其他产品的不同
(1)软件是逻辑产品而不是实物产品
(2)软件的功能只能依赖于硬件和运行环境,以及人们对它的操作,才能得以体现
(3)对软件产品的要求比一般有形产品要复杂
(4)软件设计时的复杂性:功能多样性、实现多样性、能见度低、软件结构的合理性差
(5)软件是智力密集型产品
【软件生命周期】
1 软件开发项目组
项目管理经理:全程负责整个软件项目的开发
系统设计师:设计整个系统架构
程序员:负责设计、编写程序,并修改软件中的缺陷
软件测试员/测试师或质量保证员(QA):负责找出并报告软件产品问题
技术制作、用户助手、用户培训员、手册编写和文件档案专员:负责编写软件产品附带的文件和联机文档
结构管理和制作人员:负责将程序员编写的全部文档资料合并成一个软件包
2 软件生命周期质量管理
2.1 概述
传统生命周期(即瀑布模型):
建造一个软件的相关工作分为三大阶段,每个阶段又可分为几个小阶段:
定义阶段:(1)计划(Planning) (2)需求分析(Requirement Analysis)
开发阶段:(3)设计(Design) (2)编码(Coding) (3)测试(Testing)
维护阶段:(6)运行与维护(Run and Maintenance)
2.2 需求分析
了解、分析客户需求,确定软件产品所能达到的目标。
应完成的文档:
(1)可行性报告
(2)项目初步开发计划
(3)需求规格说明
(4)用户手册概要
(5)测试计划
其他(软件生命周期每个阶段必有):
(1)配置管理
(2)评审
2.3 设计
根据需求分析的结果,考虑如何在逻辑、程序上去实现所定义的产品功能、特性等。
设计过程将需求转换成软件表示,设计的结果将作为编码的框架和依据。
分类:
(1)概要设计和详细设计
(2)数据结构设计、软件体系结构设计、应用接口设计、模块设计、算法设计、界面设计等
概要设计
主要工作:
(1)建立系统总体结构,划分功能模块;
(2)定义各功能模块接口;
(3)数据库设计(如果需要的话);
(4)指定组装测试计划
应完成的文档:
(1)概要设计说明书
(2)数据库设计说明书(如果有的话)
(3)组装测试嘉华
详细设计
主要工作:
(1)设计各模块具体实现算法;
(2)确定模块间的详细接口;