软件质量保证计划编写规范.doc
软件质量保证计划编写规范 案卷号 日期 <项目名称> 软件质量保证计划 作 者 完成日期 签 收 人 签收日期 修改情况记录 版本号 修改批准人 修改人 安装日期 签收人 目录 1 引言1 1.1 目的1 1.2 定义和缩写词1 1.3 参考资料1 2 管理1 2.1 机构1 2.2 任务2 2.3 职责2 3 文档2 3.1 基本文档2 3.1.1 软件需求规格说明书2 3.1.2 软件设计说明书2 3.1.3 软件验证与确认计划3 3.1.4 软件验证与确认报告3 3.1.5 用户文档3 3.2 其他文档3 4 标准、条例和约定4 5 评审和检查4 5.1 软件需求评审4 5.2 概要设计评审4 5.3 详细设计评审4 5.4 软件验证与确认评审4 5.5 功能检查4 5.6 物理检查5 5.7 综合检查5 5.8 管理评审5 6 软件配置管理5 7 工具、技术和方法5 8 媒体控制6 9 对供货单位的控制6 10 记录的收集、维护和保存6 11 附录6 11.1 附录A项目进展报表6 11.2 附录B项目阶段评审表11 软件质量保证计划编写规范 1 引言 1.1 目的 本条必须指出特定的软件质量保证计划的具体目的。还必须指出该计划所针对的软件项目(及其所属的各个子项目)的名称和用途。 1.2 定义和缩写词 应该列出计划正文中需要解释的而在GB/T 11457中尚未包含的术语的定义,必要时,还要给出这些定义的英文单词及其缩写词。 1.3 参考资料 列出要用到的参考资料,如 a. 本项目的经核准的计划任务书或合同、上级机关的批文; b. 属于本项目的其他已发表的文件; c. 本文件中各处引用的文件、资料,包括所要用到的软件开发标准。 列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。 2 管理 必须描述负责软件质量保证的机构、任务及其有关的职责。 2.1 机构 必须描述与软件质量保证有关的机构的组成。还必须清楚地描述来自项目委托单位、项目承办单位、软件开发单位或用户中负责软件质量保证的各个成员在机构中的相互关系。 2.2 任务 描述计划所涉及的软件生存周期中有关阶段的任务,特别要把重点放在描述这些阶段所应进行的软件质量保证活动上。 2.3 职责 指明软件质量保证计划中规定的每一个任务的负责单位或成员的责任。 3 文档 3.1 基本文档 为了确保软件的实现满足需求,至少需要下列基本文档。 3.1.1 软件需求规格说明书 软件需求规格说明书必须清楚、准确地描述软件的每一个基本需求(功能、性能、设计约束和属性)和外部界面。必须把每一个需求规定成能够通过预先定义的方法(例如检查、分析、演示或测试等)被客观地验证与确认的形式。软件需求规格说明书的详细格式按GB 8567。 3.1.2 软件设计说明书 软件设计说明书应该包括软件概要设计说明和软件详细设计说明两部分。其概要设计部分必须描述所设计软件的总体结构、外部接口、各个主要部件的功能与数据结构以及各主要部件之间的接口性和时还必须对主要部件的每一个子部件进行描述。其详细设计部分必须给出每一个基本部件的功能、算法和过程描述。软件设计说明书的详细格式按GB 8567。 3.1.3 软件验证与确认计划 软件验证与确认计划必须描述所采用的软件验证和确认方法(例如评审、检查、分析、演示或测试等),以用来验证软件需求规格说明书中的需求是否已由软件设计说明书描述的设计实现;软件设计说明书表达的设计是否已由编码实现。软件验证与确认计划还可用来确认编码的执行是否与软件需求规格说明书中所规定的需求相一致。软件验证与确认计划的详细格式按GB 8567中的测试计划的格式。 3.1.4 软件验证与确认报告 软件验证与确认报告必须描述软件验证与确认计划的执行结果。这里必须包括软件质量保证计划所需要的所有评审、检查和测试的结果。软件验证与确认报告的详细格式按GB 8567中的测试报告的格式。 3.1.5 用户文档 用户文档(例如手册、掼等)必须指明成功运行该软件所需要的数据、控制命令以及运行条件等;必须指明所有的出错信息、含义及其修改方法;还必须描述将用户发现的错误或问题通知项目承办单位(或软件开发单位)或项目委托单位的方法。用户文档的详细格式按GB 8567。 3.2 其他文档 除基本文档外,还应包括下列文档 a. 项目实施计划(其中可包括软件配置管理计划,但在必要时也可单独制订该计划),其详细格式按GB 8567。 b. 项目进展报表其详细格式可参考本计划附录A中有关项目进展报表的各项规定。 c. 项目开发各阶段的评审报表其详细格式可参考本计划附录B中有关项目阶段评审表的各项规定。 d. 项目开发总结其详细格式按GB 8567。 4 标准、条例和约定 必须列出软件开发过程中要用到的标准、条例和约定,并列出监督和保证执行的措施。 5 评审和检查 必须规定所要进行的技术和管理两方面的评审和检查工作,并编制或引用有关的评审和检查规程以及通过与否的技术准则。至少要进行下列各项评审和检查工作 5.1 软件需求评审 在软件需求分析阶段结束后必须进行软件需求评审,以确保在软件需求规格说明书中所规定的各项需求的合适性。 5.2 概要设计评审 在软件概要设计阶段结束后必须进行概要设计评审,以评价软件设计说明书中所描述的软件概要设计在总体机构、外部接口、主要部件功能分配、全局数据结构以及各主要部件之间的接口等方面的合适性。 5.3 详细设计评审 在软件详细设计阶段结束后必须进行详细设计评审,以确定软件设计说明书中所描述的详细设计在功能、算法和过程描述等方面的合适性。 5.4 软件验证与确认评审 在制订软件验证与确认计划之后要对它进行评审,以评价软件验证与确认计划中所规定的验证与确认方法的合适性与完整性。 5.5 功能检查 在软件释放前,要对软件进行检查,以确认已经满足在软件需求规格说明书中规定的所有需求。 5.6 物理检查 在验收软件前,要对软件进行物理 检查,以验证程序和文档已经一致并已做好了交付的准备。 5.7 综合检查 在软件验收时,要允许用户或用户所委托的专家对所要验收的软件进行设计抽样的综合检查,以验证代码和设计文档的一致性、接口规格说明之间的一致性(硬件和软件)、设计实现和功能需求的一致性、功能需求和测试描述的一致性。 5.8 管理评审 要对计划的执行情况定期(或按阶段)进行管理评审;这些评审必须由獐独立于被评审单位的机构或授权的第三方主持进行。 6 软件配置管理 必须编制有关软件配置管理的条款,或引用按照GB/T 12505单独制订的。在这些条款或文档中,必须规定用于标识软件产品、控制和实现软件的修改、记录和报告修改实现的状态以及评审和检查配置管理工作等四方面的活动。还必须规定用以维护和存储软件受控版本的方法和设施;必须规定对所发现的软件问题进行报告、追踪和解决的步骤,并指出实现报告、追踪和解决软件问题的机构及其职责。 7 工具、技术和方法 必须指明用以支持特定软件项目质量保证工作的工具、技术和方法,指出它们的目的,描述它们的用途。 8 媒体控制 必须指出保护计算机程序物理媒体的方法和设施,以免非法存取、意外损坏或自然老化。 9 对供货单位的控制 供货单位包括项目承办单位、软件销售单位、软件开发单位或软件子开发单位。必须规定对这些供货单位进行控制的规程,从而保证项目承办单位从软件销售单位购买的、其他开发单位(或子开发单位)开发的或从开发(或子开发)单位现存软件库中选用的软件能满足规定的需求。 10 记录的收集、维护和保存 必须指明需要保存的软件质量保证活动的记录,并指出用于汇总、保护和维护这些记录的方法和设施,并指明要保存的期限。 11 附录 11.1 附录A项目进展报表 项目进展报表(月报表或季报表)由一个项目进展报表表头(表A1)和另外三个表格(表A2、表A3、表A4)组成。在表A2“软件阶段进度表”中,要填写各个阶段的开工日期与结束日期。其中计划进度是指在项目实施计划中确定的计划进度,因此可以由管理事先填好,而不必由开发人员填写。实际进度是指该项目实际的开工日期与结束日期,它将随着该项目的不断进度来填写。其中调整进度是指项目组长发现实现进度与计划进度不符时提出的进度修改建议;但经项目管理人员研究后,可能对此修改建议作某些更改。此外,在相继的若干次报表中,项目组长提出的建议修改日期也可能是不相同的。在此我们规定,最终的调整进度由项目经理来确定。在表A3“软件阶段产品完成情况表”中,要填写各个文档的开始编写日期与完成日期。其中关于对计划进度、调整进度与实际进度的含义的解释与上相同。表A4是关于统计软件开发费用的表格。 第 16 页 表A1 项目进展报表表头 项目名 年 月 子系统名称 模块名 填表人 填表日期 年 月 日 项目组长 开发单位 表A2 软件阶段进度表 子系统名 模块名 统计日期 年 月 日 阶段名称 计划进度 调整进度 实际进度 备 注 开工日期 结束日期 开工日期 结束日期 开工日期 结束日期 SA&SD RA PD DD CD&UT IT&ST IS&AC TSSD 注SASDsystem analysis software definition phase系统分析与软件定义阶段。 RArequirements analysis phase需求分析阶段。 PDpreliminary design phase概要设计阶段。 DDdetailed design phase详细设计阶段。 CDUTcoding unit testing phase编码与单元测试阶段。 ITSTintegrating system testing phase组装与系统测试阶段。 ISACinstallation acceptance phase安装与验收阶段。 TSSDtotal software system development phase整个软件系统的开发阶段。 表A3 软件阶段产品完成情况表 子系统名 模块名 统计日期 年 月 日 文档名称 计划进度 调整进度 实际进度 页数 备 注 开始日期 完成日期 开始日期 完成日期 开始日期 完成日期 1 项目实施计划 2 需求规格说明书 3 概要设计说明书 4 详细设计说明书 5 测试计划 6 测试报告 7 用户手册 8 项目开发总结 9 源代码清单 10 质量保证计划 11 配置管理计划 表A4 软件开发费用统计表 子系统名 模块名 统计区间从 年 月 日至 年 月 日 阶段名称 人工费用(人月) 机时(小时) 其他(元) 项目管理 系统分析 软件设计 编码调试 数据录入 其它人工 终端小时 主机小时 外存空间 其它费用 出差资料 其他费用 SA&SD RA PD DD CD&UT IT&ST IS&AC TSSD 11.2 附录B项目阶段评审表 在软件开发过程中的适当阶段对软件阶段产品进行评审,是确保软件产品最终质量的重要方法。阶段评审可以对某个开发阶段的阶段产品进行评审,也可以对某几个开发阶段的阶段产品进行综合评审。在每次阶段评审中,必须履行正式手续,填写必要的评审表格,以利于项目管理工作,利于产品验收时的质量检查工作。 项目阶段评审表由四张子表组成。表B1是对评审中发现的问题的记录RPLreview problem log);表B2是评审总结报表RSRreview summary report;表B3是对其中主要问题的详细描述SPRsoftware problem report;表B4是评审小组成员登记与签字表。下面给出这四张表的格式。 表B1 评审问题记录(RPL) RPL 评 审 问 题 记 录 登记号 评审日期 年 月 日 评审性质 评审□ 复审□ 项目名 子项目名 代号 编号 问题摘要 问题类型 是否解决 1 2 3 4 5 6 7 8 9 10 表B2 评审总结报告(RSR) RSR 评审总结报告 登记号 评审日期 年 月 日 评审性质 评审□ 复审□ 项目名 子项目名 代号 阶段名 软件 定义 □ 需求 分析 □ 概要 设计 □ 详细 设计 □ 编码 测试 □ 组装 测试 □ 安装 验收 □ 运行 维护 □ 项目组长 姓名 电话 地址 评审任务 评审材料 评审结论 通过 不需修改 稍作修改 不通过 作重要修改 要重新评审 备注 表B3 软件问题报告单(SPR) 软件问题报告单 登记号 登记日期 年 月 日 发现日期 年 月 日 项目名 子项目 代号 阶段名 软件定义□ 需求分析□ 概要设计□ 详细设计□ 编码测试□ 组装测试□ 安装验收□ 运行维护□ 状态 1 2 3 报告人 姓名 电话 地址 问题 例行程序□ 程序□ 数据库□ 文档□ 改进□ 子例行程序/子系统 修改版本号 媒体 数据库 文档 测试实例 硬件 问题描述/影响 附注及修改建议 表B4 评审成员签字登记表(RMT) 评审小组成员 职务 姓名 职称 单位 签字 组长 副组长 成员 成员 成员 成员 成员 成员 成员 成员 成员 成员 成员 成员 成员 注可以不设副组长;此外,项目开发组长或其代表可以作为评审组的成员,但不能担任评审组的组长或副组长。