资源描述
软件开发步骤
V1.0
目录
1. 目标 2
2. 适用范围 2
3. 定义 2
4. 输入 2
5. 输出 2
6. 角色职责 2
7. 步骤图 2
8. 步骤活动说明 2
9. 纪录和表格 7
10. 相关文件 7
11. 步骤评测指标 8
12. 步骤责任人 8
1. 目标
规范软件开发过程,指导软件开发人员实施软件开发活动,保障软件开发顺利进行,确保软件开发进度、开发质量,达成预期目标;并为智力资产库提供输入。
2. 适用范围
本步骤适适用于产品研发过程中全部软件(包含固件)开发活动实施过程
3. 定义
4. 输入
《产品总体需求规格书》、《产品总体设计方案》
5. 输出
5.1《软件概要设计汇报》
5.2《软件具体设计汇报》
5.3《测试汇报》
5.4 源程序(代码)
5.5 可实施程序
6. 角色职责
6.1 PDT经理(LPDT):依据需要参与软件过程中评审。
6.2 系统工程师(SE):参与软件开发过程中评审,指导QA完成评审汇报;
6.3 软件工程师(SWE):编写软件概要设计汇报、软件具体设计汇报;进行软件编码并自测;进行单元测试、集成测试、系统测试,更新系统测试计划。
6.4 测试工程师(TE):参与制订测试计划;参与软件开发过程中评审;参与实施单元测试、集成测试和系统测试。
6.5 质量确保(QA):组织、监控软件开发过程中评审,开发文档基线化。
6.6 软件配置管理员(CMO):负责开发过程中文档及代码基线化。
6.7 软件需求管理员(RMO):负责开发过程中需求跟踪。
7. 步骤图
见附件: 软件开发子步骤-步骤图。
8. 步骤活动说明
010 制订软件项目计划 开发组组长&系统工程师&软件工程师&测试工程师
依据产品开发计划,制订产品软件部分开发计划,包含进度、任务安排、风险、人员、开发工具、相关规范等内容。每个任务全部需指定一个责任人;对于需要多人完成任务,应该努力分解为多个单人可负担子任务,方便计划落实和跟踪。
输入:《软件总体设计方案》
输出:《软件项目计划》
时间控制:得到《软件总体设计方案》后5个工作日内。
020 软件概要设计 软件工程师
软件工程师依据软件概要设计方案书要求,对软件(包含固件)功效、应用、实现环境、关键芯片特征、关键芯片工作原理和关键寄存器进行说明,并将软件分解到功效块级,明确描述对每一个功效块输入、输出、和产品硬件接口对应关系,和功效块间依靠关系。
输入:《软件总体设计方案》、《软件项目计划》
输出:《软件概要设计汇报》/《软件设计汇报》
时间控制:得到《软件项目计划》后5个工作日内
030 需求跟踪 RMO软件需求管理员
RMO需要对软件概要设计中需求实现或改变情况进行跟踪,跟踪活动经过不停更新《需求跟踪表》来进行。需求跟踪活动是一个连续活动,将一直连续到软件开发子流步骤结束。在每一次正规检视或评审之前,全部必需进行需求跟踪,以确保软件需求规格在软件开发各个阶段全部能够充足、正确地得以实现。
输入:软件开发子步骤设计文档(如软件概要设计、具体设计等)
输出:《需求跟踪表》
时间控制:一直连续到软件开发子步骤结束
040 软件概要设计及计划检视 质量确保、系统工程师、软件工程师、测试工程师、项目经理
软件概要设计及测试计划正规检视中对文档、开发设计(包含功效、性能、设计方法、遵照标准、外部接口、维护性能)、测试计划和配置管理等方面进行检验,确保软件概要设计作为后继开发工作指导性文件全方面性和正确性,确保测试计划中各项需求在开发前期即被纳入考虑范围,确保测试计划中测试用例能够充足覆盖软件各项需求。
输入:《软件概要设计汇报》、《软件项目计划》、《软件测试计划》
输出:《软件概要设计检验表》、《软件项目计划检验表》
时间控制:软件概要设计完成后5个工作日内。
050&100 更新项目计划 开发组组长
软件工程师依据正规检视总结意见对前期确定软件项目计划进行更新,对计划中包含进度、任务安排、风险、人员、开发工具、相关规范等内容进行合适调整。
输入:《软件概要设计汇报》、《软件项目计划》、《软件项目计划检验表》
输出:更新《软件项目计划》
时间控制:正规检视后2个工作日内。
060 软件项目计划、软件概要设计基线化 CMO配置管理员
CMO对经过正规检视软件项目计划和软件概要设计进行基线化,将相关文档纳入项目标配置管理库,并向相关PDT组员公布。
相关文档包含:
《软件概要设计汇报》
《软件项目计划》
时间控制:正规检视后2个工作日内。
070 软件具体设计&软件单元测试计划 软件工程师&测试工程师
在软件具体设计阶段,软件工程师将软件概要设计开发出整体应用分成多个模块和程序,并为每个程序进行逻辑设计,然后归档作为程序规格。同时,测试工程师指导软件工程师为每个程序生成一个单元测试计划。具体设计阶段关键活动包含通用例程和程序确实定(如数据有效性例程)、框架程序开发和用于提升生产率实用程序和工具开发。
输入准则是概要设计文档经过评审和授权,关键输入是概要设计文档。
输出准则是程序规格和单元测试计划已经经过评审和授权,关键输出具体设计汇报和单元测试计划(包含在《软件测试计划》模板中)。
过程中步骤以下:
将功效分成小组件
假如需要,开发数据移植程序
设计/开发代码框架
开发例程和工具
程序设计
确定程序调用方法
确定输入和输出
设计程序逻辑
确定数据结构
确定使用通用例程
写程序规格并对其进行平审
计划单元测试
确定单元测试环境
确定单元测试用例
确定测试数据
写单元测试计划
输入:《软件概要设计汇报》
输出:更新《软件具体设计汇报》/《软件设计汇报》、《软件单元测试计划》
时间控制:软件概要设计基线化后10个工作日内。
040&090&130 正规检视 质量确保、PDT经理、系统工程师、软件工程师、测试工程师
QA负责组织PDT经理(可选)、系统工程师(SE)、软件工程师(SWE)、测试工程师(TE)进行开发过程中多种评审,并将评审时间通知PDT经理。
评审小组依据正规检视要素表对软件开发进行正规检视。
QA负责监控评审质量。
SE帮助QA编写评审汇报。
输入:《软件具体设计汇报》
输出:《软件具体设计检验表》
时间控制:收到对应交付件(正规检视对象)后2个工作日内。
110 具体设计基线化 CMO配置管理员
CMO对经过正规检视软件具体设计进行基线化,将相关文档纳入项目标配置管理库,并向相关PDT组员公布。
相关文档包含:
《软件具体设计汇报》
《软件单元测试计划》
《软件项目计划》
时间控制:正规检视后2个工作日内。
120 编码 软件工程师
软件工程师依据评审后《具体设计汇报》用编程语言来实现所需软件,这个阶段依据适宜编码规范产生源代码和可实施程序(二进制文件)。
输入准则是软件具体设计已经过评审和授权,输入关键包含软件具体设计、软件概要设计、实用程序和开发工具及其文档。
输出是源代码、可实施代码。
150 单元测试 软件工程师&测试工程师
软件工程师依据测试计划编写测试代码并实施测试代码。
输出准则是成功实施全部单元测试计划中测试用例,输出是测试数据、测试代码、可实施代码、《单元测试汇报》和过程统计。
软件工程师依据《单元测试计划》进行软件进行单元测试。测试工程师依据需要参与必需单元测试。
活动步骤以下:
生成测试数据库
生成代码
对程序进行编码
代码评审
统计和修正评审出缺点
进行自行单元测试
进行单元测试
进行附加测试
更正缺点
时间控制:具体设计评审后2个工作日内开始。
输入:《软件具体设计汇报》、《软件单元测试计划》
输出:《软件单元测试汇报》
160 经验教训总结 软件开发组长
软件系统测试评审完成后,PDT对软件开发工作成功经验和失败教训进行总结,并根据统一模板和要求形成案例存放在统一数据库系统中,并推进共享、查询和继承应用。
输入:软件开发过程文档
输出:《经验教训总结》
时间控制:测试汇报正规检视完成后2个工作日内开始。
170 系统集成和联调 SWE软件工程师
项目归档公布后,SWE软件工程师参与系统集成和联调。
输入:软件开发过程文档
时间控制:项目归档3个工作日内开始。
180 支持系统集成测试 SWE软件工程师
系统集成和联调完成后,提交测试部进行测试,由TE测试工程师负责具体集成测试工作,SWE软件工程师提供集成测试过程中必需技术支持和帮助。
输入:经过系统集成和联调后可实施文件
时间控制:系统集成和联调经过后3个工作日内开始。
9. 纪录和表格
9.1《软件概要设计汇报》
9.2《软件概要设计检验表》
9.3《软件项目计划及计划检验表》
9.4《软件具体设计汇报》
9.5《软件具体设计检验表》
9.6《软件测试计划》
9.7《软件测试汇报》
9.8《软件测试检验表》
9.9《需求跟踪表》
9.10《软件项目计划》
9.11《产品总体设计方案》
9.12《经验教训总结》
10. 相关文件
10.1《产品开发步骤》
10.2《设计更改子步骤》
10.3《工程更改子步骤》
11. 步骤评测指标
11.1 进度篇差率
11.2 缺点密度
11.3 需求满意度
12. 步骤责任人
研发软件组
文件编制:
审 核:
批 准:
生效日期:
修订统计
编号
修订内容简述
生效日期
修订后版本号
修订人
审核人
同意人
1
2
3
4
展开阅读全文