1、软件研发流程管理办法 软件研发流程管理办法 为加强对软件研发工作的管理,缩短开发周期,提高开发质量,降低开发 成本,提高开发效率,特制定软件研发流程管理办法。 第一章、总则 为保证日常工作正常有序的进行,让开发中各个环节更紧凑,更可控,需要尽 可能实现软件研发流程的正规化,工作过程的流程化,以便提高软件质量和开 发效率,达到项目能按质按量按期交付的目标。 1、软件开发总体遵循项目管理和软件工程的基本原则。 2、项目管理涉及项目立项、项目计划和监控、配置管理。 3、软件工程涉及需求分析、系统设计、软件实现、测试、试运行、系统上线和 产品维护。 第二章、阶段成果 根据软件工程的过程理论并结合公司目
2、前的实际情况,制定以下工作流程,并 规定了各个重要环节需要提交的交付物。 1、立项:市场需求合同或项目立项单。 2、需求分析:软件需求分析报告。 、总体设计:概要设计说明书或功能模块描述。3 4、详细设计:详细设计说明书,包括数据库设计、软件接口说明等。 5、软件实现:软件源代码、源代码说明或者注释。 6、产品测试:测试报告。 7、产品发布:产品说明书或使用手册。 软件过程成果表: 备注职责及文档成果描述形成文档阶段负责人 项目立项报告 明确甲乙双方责任及义务 项目经理 (Word) 大部分业务建模需求 业务需求说明书(Word) 需求定义,阐述业务范围及内容 项目经理析工程师/ 需求分 和需
3、求,少部分阶段 分析设计 业务流程总体设计书、 讨论项目的技术架构和可能存在的技术难点, 详细设计说明书 项目经理/架构师 梳理业务流程,统一开发规则和风格等 (Word/Visio) 数据库关系设计图 数据库设计工程师项目所需要使用的数据库的结构图和流程图 (PowerDesigner) 设计大部分分析设计, 阶段开始考虑部署任务分配文档 明确每个组员的开发任务及职责 项目经理 (Word) 需求分/项目经理业务变更文档 记录开发过程中用户提出的业务需求变更情况 析工程师(Word)实现 可以部署的成果,以及生成成果的源代码以及 最终软件开发的 源代码及代码注释软件开发工程师阶段 数据库文件
4、 成果 项目测试报告 验证系统功能与性能的记录 测试工程师 (Word) 测试 反复测试直至系用户使用手册(Word) 方便用户使用软件而提供的使用说明书 测试工程师 阶段 统稳定 项目验收报告 上线 记录甲乙双方签订项目验收报告 项目经理 部署及维护 (Word) 根据软件开发主过程,要分为开分析、发和测第三章、岗位设置 试三个阶段。分析阶段完成用户 需求文档的编写,系统概要设计的编写;开发阶段完成设计文档的编写,代码 的编写;测试阶段完成系统的测试,测试文档及其他材料。通过逐渐的调整岗 位,明确工作职责,逐步实现项目经理,需求分析工程师,软件开发工程师和 测试工程师的岗位设置。 岗位 工作
5、内容 责任 项目经理 、选定项目组成员,成立项目组,安排任务分工。1、与客户进行沟通和协调2、制定项目开发计划,包括需求,设计,编码,测试这几个阶段的计划。3、制定小组开发进度表4、对文档的质量进行检查、把关。5、定期召开项目会议,把控项目进度。6,(对组内人员工作进度监控。 业务需求或非业务需求方面 ,以及需求调研工作。) 1 2责。34负责。、对客户的沟通协调工作负责。、对软件的开发效率、质量负、对文档质量负责。、对整个项目的进度,质量等 需求 1、与客户进行沟通,负责需求调研工作,汇总需求分析文档,并编写系统总体设计 1、对用户需求分析的质量负责。分析 方案。 工程 、遇见需求变更时,分
6、析需求变更内容,并与项目经理一起负责对需求变更进行评2 2、对项目组所有成员正确理解 岗位 工作内容 责任 师 估。 项目需求负责。 、与软件开发工程师一起完成详细设计文档的编写。3 软件开发工程师 、与项目经理沟通和确认某个模块的需求和实现方法。1、负责某个模块的代码编写、维护。2、对其他模块的代码的维护。3、负责与测试人员的交互,处理测试人员的问题。4 12量负责。、对项目整体设计流程负责。、对自己模块的开发效率和质 测试 1、对测试的质量负责。 、根据用户需求分析和系统总体设计,对系统的功能、性能异常进行测试。1 工程 2、对测试文档和操作手册的质、编写测试文档和软件操作手册。2 师 量
7、负责。 第四章、项目立项 、需求分析工程师进行应用调查与分析,确认软件的应用需求。1 、根据项目可行情况成立项目开发小组,制定软件开发计划,确定项目经理,2 并由所领导和项目经理共同确定具体项目配置,知识技能要求,团队成员及团 队的角色。 第五章、项目计划与监控 、以项目为单位,项目经理负责整个项目的计划、组织和控制。1 、在整个项目过程中,项目经理定期检查项目进度和完成情况,调整人员分工2 和安排。3、项目计划需要变更时,需要明确变更内容并及时汇报。项目经理需要说明变 更原因并及时告知所领导审核,以便根据变更内容及时调整计划。 第六章、需求分析 1、对用户提出的需求进行分析汇总,梳理用户的业
8、务流程和详细的功能定义。 2、做出简单的界面原型,与客户进行有效的沟通,编写需求详细说明书。 3、遇见需求变更时,分析需求变更内容,并与项目经理一起负责对需求变更进 行评估并及时告知所领导审核,以便根据变更内容及时调整计划。 第七章、总体设计 1、在该阶段确定总体结构和软件开发架构,文件命名规范等。可按软件需求划 分子系统,也可直接定义目标系统的功能模块及各个功能模块的关系。 2、确定软件模块结构,给出每个功能模块的功能描述,并完成系统概要设计说 明书。 3、完成数据库的设计,并编写数据库设计说明书。 4、完成的文档需提交公司进行归档管理。 第八章、详细设计 、调整前一步设计的不足,确认各模块
9、之间的详细接口信息。12、设计功能使用的具体描述、行为者、前置条件、后置条件、UI 描述、业务 流程/子流程/分支流程,界面说明等。 3、汇总并提交所有相关文档,审核确认质量和进度。 第九章、软件实现 1、项目组根据概要设计说明书、详细设计说明书制定系统实现计划。 2、选择软件工具,明确项目成员的职责分工,按照编码规范和详细设计实现软 件功能。 3、代码应满足结构良好,清晰易读,且与设计一致,符合编码规范。 4、开发人员需要在软件实现过程中编写软件功能说明或源代码注释。 5、开发人员处理测试人员反馈的测试问题,直至系统运行稳定。 6、汇总并提交所有相关文档,并连同源代码一并及时提交 SVN 保存。 第十章、软件测试 1、制定测试计划,按阶段设计进行测试,并将测试结果记录,反馈给开发人员 调整。 2、完成测试文档、操作手册、安装手册的编写。 第十一章、系统上线 、根据软件特点、客户需求进行软件部署。12、项目组根据系统运行情况对系统进行优化,记录系统问题和处理后的版本。 第十二章、用户培训 1、确定培训时间、培训地