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