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