软件项目开发工作流程
一、简述
对于一个新项目,从可行性研究到产品交货整个生存阶段将经历如下十大流程:
1、项目可行性研究阶段
2、立项阶段
3、需求分析阶段
4、开发策划阶段
5、设计阶段
6、编码实现阶段
7、测试阶段
8、验收阶段
9、产品交付使用
10、维护阶段
二、项目组基本组成及岗位职责
    新项目立项时会成立项目组,不同的项目组成员有不同的职责,一个项目组成员也可以身兼多职,但不可身兼全职。
a项目负责人:负责项目的管理、组织、对技术、进度、质量全面负责。
b质量保证人员:负责质量保证工作计划的落实和软件的质量保证。
C配置管理人员:负责本项目的配置管理工作,对本项目的文档、程序是否符合规程文件的要求进行形式化的检查。
D分析人员:主要负责本项目的需求分析工作。
E设计人员:主要负责本项目的设计工作。
F程序员:按设计要求和有关标准进行编程工作。
G测试人员:负责单元测试、组合测试和总装测试工作。
H文档人员:负责本项目有关文档的编写工作。
I产品经理:协助进行产品研制计划制定、产品发布与产品推广等,在产品开发中,充分代表用户的利益,提供建议,负责在产品功能与出品日期二者之间的权衡;负责产品市场营销、产品销售和市场推广过程。(通常由营销部门或中试部门人员担任)
三、软件开发流程
3.1 可行性研究阶段
如果是公司自主开发项目,可行性研究通常是由公司技术负责人根据公司产品规划和市场需求,在要开展新项目前通过部门负责人指定人员进行的前期调研工作,可行性研究负责人员对产品的市场需求、技术发展、市场定位、功能需求、经济效益、进度需求、风险分析等进行可行性研究,提供产品立项建议,拟制可行性研究报告,由部门负责人指定营销部门配合
可行性分析人员,技术负责人协助安排。可行性分析完毕后由总工办组织对可行性研究报告进行评审,评审通过后,总工办组织进行立项工作。
如果是系统集成部外接的系统集成项目,在系统集成部与客户签订合同之前,均应对将签项目进行资源、技术、市场的可行性分析,可行性分析通过后、签订合同前由总工办组织相关人员对合同条款进行评审,评审通过后,总工办组织进行立项工作。
本阶段提交的文档:项目可行性研究任务书(技术负责人或部门负责人下达)
                  项目可行性研究报告(可行性研究人员编写)
                  系统集成项目合同
质量记录:可行性分析评审报告
3.2立项阶段
可行性分析评审通过后,由开发部门经理下达立项任务,指定相关人员填写立项申请报告报批。报批通过后,由部门经理与技术负责人协商,下达开发任务书,经技术负责人审核确认
后,报公司批准。批准立项后项目进度应以立项申请报告中的阶段进度为准,如果进度要调整,需填写进度调整申请报告报批。
本阶段提交的文档:项目立项申请报告
开发任务书
软件测试项目流程3.3 需求分析阶段
承办单位根据交办单位提出的技术要求和相应的软件任务书以及其它有关文件,与交办单位协作,确定详细的软件需求,该阶段完成的软件需求规格说明经审定和批准后将作为整个软件开发工作的基础列入配置管理的基线,在本阶段可利用快速原型法使比较含糊的具有不确定性的软件需求(主要是功能)明确化。能给本公司开发的软件的“需求基线”确定提供一个讨论、进一步完善的基础。在本阶段,由产品经理负责,其他人员配合,编写产品规格说明书,此说明书面向最终用户和领导,主要描绘产品的形状以及功能、性能、功能特性、性能特性。由项目经理负责编写系统技术方案书,描述公司初次使用的技术的详细解决方案。本阶段完毕后对需求分析进行评审,出具需求分析评审报告。
本阶段提交的文档:软件需求规格说明书。
                  原型分析说明书
                  产品规格说明书
系统技术方案书
质量记录:        需求分析评审报告
提交的软件:产品的原型(注:如果时间有限,可以只编写原型分析说明书而不作原型)
3.4开发策化阶段
根据项目要求和软件需求,由配置人员配合项目经理编写本项目的质量保证计划、配置管理计划和项目综合计划。在配置管理计划中,应列明本项目需提交的各阶段文档的名称,在项目各阶段完成后,项目组需列表说明要移交的文档,将此表与各文档一并向总工办移交。在制定计划时,应为计划、设计、测试、改错、再测试、变更、以及编制文档留出足够的时间。不应使用突击的办法来完成项目。
本阶段涉及的文档:软件质量保证计划
  配置管理计划
      项目综合计划
3.5设计阶段
3.5.1概要设计
根据软件需求规格说明建立软件总体结构和模块间的关系,确定各模块功能,定义各功能模块的接口,设计全局数据库和数据结构,在概要设计明确后,可以对综合计划进一步细化,填写项目进度预计。概要设计需经过评审。
本阶段涉及的文档:产品概要设计说明书
                  数据库设计说明
                  项目进度预计
质量记录:        评审报告
3.5.2详细设计
对概要设计中产生的功能模块进行过程描述设计,设计功能模块的内部细节,包括算法和数据结构,为编写源代码提供必要的说明。详细设计需要经过评审。
本阶段涉及的文档:软件详细设计说明书
                  测试计划
质量记录:        评审报告
3.6编码实现阶段
根据软件详细设计说明、对各程序模块进行编码、调试、静态分析和单元测试,验证程序单元与设计说明的一致性。
本阶段涉及的文档:项目进度月报
                  项目周计划和周总结
      项目开发人员周计划
      工作日志
每周例会记录
                  配置项更改申请单   
3.6 测试阶段
3.6.1 软件单元测试
按详细设计的结构,根据软件单元测试计划,依照将经过单元测试的底层程序单元逐步组装成子项目直到开发项目的过程,对软件进行测试。
本阶段涉及的文档:测试计划
测试设计
                  测试问题报告单
参考文档:北京世纪科怡软件开发操作指导书中的“测试阶段操作指导书”
3.6.2组装测试
根据软件需求规格说明书中定义的全部功能和性能要求及组装测试计划,对软件进行组装测试,以确定整个软件是否满足软件需求,是否可以提交总装测试。
软件组装测试计划(含测试用例设计)的编制工作和软件组装测试环境的研制、组建工作,应从软件需求分析阶段起与软件开发同步展开。
本阶段涉及的文档:测试计划
                  测试设计
测试问题报告单
3.7 中试阶段
    项目组开发的软件产品经中试部验收后提交中试部中试,中试部根据需求分析报告,从用户的角度出发对产品的功能、性能进行中试。
本阶段涉及的文档:中试计划
中试问题报告单
3.7 验收交付
对完成中试的软件进行检查、审查和评审,确定软件是否达到了软件任务书的要求。验收通过的软件可以向软件交办单位交付。项目经理及项目组人员应在此阶段完成项目总结,项目经理提交项目开发总结报告,项目组成员提交个人工作总结报告。
本阶段涉及的文档:验收报告
                  项目开发总结报告
                  个人工作总结报告
3.8 软件维护
对软件的维护包括针对软件运行过程中发现的问题而进行的改正性维护,针对不同任务对软件提出不需求而进行的改善性维护,以及可能出现的由于软件运行环境的改变而进行的适应性维护。
本阶段涉及的文档:软件问题汇总表
                  维护报告
四、项目开发文件的审批
可行性研究报告及立项申请、项目开发计划及项目开发总结、确认计划及确认报告、验收计划及验收报告由技术负责人审批。
项目组人员编写的其他文件由项目经理审批。
五、各阶段共同的任务要求
5.1编写文档
在软件开发过程的各个阶段,都要求完成相应的文档编写工作。本文档的前面部分已给出了在软件自上而下周期各个阶段中的文档编制情况。软件文档从形式上来看,大致可分为两类:
a.开发过程中填写的各种图表,称为工作表格;
b.应编制的技术资料或技术管理资料,称为文档或文件。
按照文档产生和使用的范围,软件文档大致可分为三类:
a.开发文档:这类文档是在软件开发过程中,作为软件开发人员前一阶段工作成果的体现和后一阶段工作依据的文档。包括软件需求说明书、数据库设计说明书、概要设计说明书、详细设计说明书、可行性研究报告、项目开发计划。
b.管理文档:这类文档是在软件开发过程中,由软件开发人员制定的需提交人员的一些工作计划或工作报告。使管理人员能够通过这些文档了解软件开发项目安排、进度、资源使用和成果等。包括项目开发计划、测试计划、测试报告、开发进度月报、项目周计划周总结及项目开发总结等。
c.用户文档:这类文档是软件开发人员为用户准备的有关该软件使用、操作、维护的资料。包括用户手册、操作手册、维护修改建议、软件需求说明书。
项目各阶段完毕后需把本阶段相关文档列表向总工办移交。
5.2验证与评审
    软件评审是保证软件产品质量的重要手段,必须纳入软件开发过程,并把评审通过作为一个软件阶段完成的标志,进而转入下一个开发阶段。软件评审包括有正式评审(即评审)、内部评审两种形式。正式评审是软件项目组上级技术主管主持的评审。内部评审以由项目负责人组织、开发人员相互检查为基本方式。
    就整个软件开发过程而言,至少要进行可行性分析、软件需求评审、设计评审、软件验证和确认评审、管理评审等五个方面的评审和检查工作。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。