搜档网
当前位置:搜档网 › 软件开发管理手册(初稿)

软件开发管理手册(初稿)

软件开发管理手册(初稿)
软件开发管理手册(初稿)

软件开发管理手册(草稿版)版本历史

本文件规定了涉及公司产品开发和管理的过程域的方针,为实现质量方针和精益化管理而建立的研发过程管理体系,作为公司研发过程管理体系的纲领性文件。

建立研发过程体系的目的:

?从需求到产品交付有效地进行过程控制,以达到客户满足和实现公司战略规划;

?有效地管理研发资源,在开发过程中充分利用资源和过程资产;

?建立度量体系,统计和分析度量指标;

?向客户呈现精细化的过程管理能力,从而保证准时、高质量、低成本交付客户。2范围

本手册包括过程体系方针、体系框架、生命周期模型、和角色职责过程体系中各过程的概述。

本手册适用于自研、合作及外包项目的开发与管理。

3术语定义

生命周期模型:从产品概念到产品退市的全过程模型,定义了产品概念、产品分析、产品开发、产品测试、产品验收和产品维护共六个阶段。

4过程体系方针

项目管理涉及立项管理、项目计划和监控、配置管理、合作开发管理和结项管理。软件工程涉及需求管理、系统设计、系统实现、系统测试、用户接受测试、试运行、系统验收、

任何项目开发活动的工作遵循过程体系方针,可按项目实际情况进行裁剪。

5过程体系框架

5.1工程类

5.1.1需求管理

1)业务需求分析与产品需求分析过程,必须识别内部和外部干系人关注点;

2)建立需求跟踪矩阵,保证对需求进行有效跟踪;

3) 需求必须文档化并通过公司内部评审。

5.1.2技术方案

1)针对开发项目,制定系统方案的选择准则和系统集成的准则;

2)开发多个系统方案,并依据选择准则进行选择;

3)依据系统集成的准则,确定系统集成的顺序;

4)对产品或关键部件进行自研、外包和复用的分析;

5) 若涉及到多个子系统,则必须识别各子系统的需求和确定子系统实现方案,并识

别子系统涉及的专业;

6) 实现方案中需包含产品使用和维修的支持文件。(例如:培训资料、部署手册、

用户手册等)

5.1.3产品集成

1)依据系统集成的策略,确定系统集成的顺序和准则;

2)对接口正确性、完整性和标识进行检查。

1)明确集成测试、系统测试和验收测试的测试对象、测试依据和通过准则;

2)制定测试计划和测试方案,必要时要对测试方案进行评审;

3)必须对测试过程发现的缺陷进行跟踪和处理,缺陷修正后必须得到验证。5.1.5产品管理类

1)分析竞争对手的产品,并捕获来自行业内的亮点需求;

2)制定年度产品规划,并得到批准,定期跟踪规划,定期更新年度规划;

3)分产品状态,制定产品退市或切换计划,并确认计划的执行状况。

5.1.6项目管理类

1) 流程通道的选择(即流程配置)必须得到QA的确认,并最终得到批准;

2) 基于业务需求开展项目估算,基于项目估算的结果制定项目计划;

3) 项目立项和项目计划必须得到批准;

4) 项目成员必须填写工作日志;

5) 定期且事件驱动地监控项目计划的落实状况,并识别和管理问题与风险;

6) 由内部或外部原因引起的项目变更计划,必须经过审批。

5.2过程管理类

5.2.1流程管理

1) 采集改进需求,并识别过程体系中的强项和弱项,针对性地开展过程改进工

作;

2) 过程体系的建立和改进要取得业务单元的执行承诺。

3) 建立和维护组织级的过程资产和工作环境标准。

1)围绕关键岗位技能需要识别培训需求,并制定年度培训计划和详细计划;

2)实施培训和建立培训记录,并评估培训效果。

3)建立和维护培训的讲师库和教材库。

5.3支持类

5.3.1质量保证

1) 基于业务类型制定针对产品或项目的质量保证计划;

2) 依据使用的流程定义和标准,对过程辅导、对关键的工作过程和工作产品进行监

察;

3) 所有发现的问题必须以文档形成跟踪直到关闭;

4) 监察中发现的问题不能与监察对象达成一致时,QA必须通过问题升级的渠道解决。

5.3.2配置管理

1) 建立产品配置库和项目配置库,各业务单元统一配置管理工具SVN;

2) 编制配置管理计划,并与项目经理达成一致;

3) 禁止纳入配置管理的配置项的非授权操作;

4) 在特定阶段建立控制基线并控制其变更,变更批准后修订关联的文档;

5) 建立和落实配置库的备份机制;

5.3.3技术评审

1) 基于业务类型和评审对象的重要性选择评审方式(正式评审、一般评审和简化评

审);

2) 技术评审必须有对应专业的技术评审专家参与;

3) 技术评审完成后必须要有评审报告,并有相关评审人员签字确认;

4) 正式评审必须召开会议且评审前进行预评审。

5.3.4决策分析

1) 根据开发项目的业务类型,识别项目开展过程中决策点;

2) 依据决策指南确定,确定决策的角色、标准和方法;

3) 持续优化决策准则。

5.3.5度量分析

1) 基于管理信息需要确定产品开发过程中度量项;

2) 将度量分析工作自然分解到工作相关任务和文档中,减少重复和错误;

3) 比照度量指标的目标范围,获得和分析度量项数据,识别问题、风险和改进点。6产品生命周期模型

产品生命周期模型定义了产品概念、产品分析、产品开发、产品测试、产品验收和产品维护共六个阶段。

6.1管理过程域

1)立项管理

采纳符合机构最大利益的立项建议,通过立项管理使该建议成为正式的项目。杜绝不符合机构最大利益的立项建议被采纳,避免浪费机构的资源、资金、时间等。

提出开发需求的项目部参与公司层面立项,进行立项的技术可行性分析,编写《立项分析报告》,开展前期筹备工作,明确项目的开发方(自研、合作、外包)、范围和边界。

《立项分析报告》由公司项目部进行立项审批,以保证项目与公司整体策略一致。

《立项分析报告》批准后,成立项目组(如是外包开发,则成立外包项目组;如是合作开发,则与外包商共同成立合作开发项目组),项目组由相关业务部门和软件部成员组成。

2)项目计划

组织制定详细的《项目计划书》,包括具体任务描述和项目进度表,并对项目计划实行情况进行监控,确保项目按计划完成。

项目计划变更时填写《项目计划变更说明》,并提交相关领导审批。

为项目的研发和管理工作制定合理的行动纲领,以便所有相关人员按照该计划有条不紊地开展工作。

操作参考如下:

WBS

网络图/甘特图 进度计划 风险计划 沟通计划

工作分解结构 资源、工期、成本估算 风险计划、沟通计划 项目计划

活动排序:网络图

工期估算:三点估算法、专家判断法

成本估算:自下而上法、专家判断法、类别估算法、参数成本法 进度计划:甘特图、里程碑图、关键路径发 WBS(模板)

进度计划表(模板) 风险管理表(模板) 沟通计划表(模板)

变更管理

3)项目监控

项目经理负责监督项目的进度,进行项目管理工作,确保开发能及时完成并满足业务需要。

周期性地跟踪项目计划的各种参数如进度、工作量、费用、资源等,不断地了解项目的进展情况,以便当项目实际进展显著偏离计划时能够及时采取纠正措施。

风险管理在风险产生危害之前识别它们,从而有计划地消除或削弱风险。

需求管理在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并控制需求的变更。

项目会议纪要

项目状态报告

项目变更管理表沟通

项目监控

变更管理

4)结项管理

在项目开发工作结束后,对项目的有形资产和无形资产进行清算、对项目进行综合评估以及总结经验教训等。

有效变更管理流程 项目变更管理流程 项目监控方法工具 项目会议纪要(模板) 项目状态报告(模板) 项目变更管理表(模板)

6.2 工程过程域

6.3 需求分析

1、 立项后业务组(此角色按实际情况)根据制定调研问卷,对用户需求调研并记录汇总,建立数据模型,用户方确认,输出《用户需求说明书》,确保其涵盖所有的业务需求,作为业务需求基线。

2、软件部根据《业务需求说明书》,提出技术需求和解决方案,并对系统进行定义,输出《系统需求规格说明书》。该文档需详细列出业务对系统要求(界面、输入、输出、管理、安全、运作、关键指标)。

3、业务需求发生变更时,业务组应提交《需求变更申请》,由软件部审批后交于合作开发商并及时更新《需求跟踪矩阵》确保项目组成员知晓。

6.4 系统设计

1、设计软件系统的体系结构、用户界面、数据库、模块等,从而在需求与代码之间建立桥梁,指导开发人员去实现能满足用户需求的软件产品。系统设计分为概要设计和详细设计,系统设计要遵循完备性、一致性、扩展性、可靠性、安全性、可维护性等原则。在系统设计阶段中,用户应充分参与,确保系统设计能满足系统需求。 项目组出具《设计说明书》

需求分析 制定调研问卷 整理调研记录 建立数据模型 用户沟通修正 编写新需求文档 需求文档评审 签订合作协议

系统设计 系统架构设计 子系统设计 数据库设计 用户界面设计 编写设计文档 设计文档评审 实现与自测 设计文档培训 人员配置与分工 编写代码 单元测试 修改代码 系统安装调试

系统测试

制定测试方案 测试方案培训 用户测试并记录 测试记录分析 系统缺陷修正 回归测试 新需求分析

产品中试与验

编写用户手册 用户培训 用户初次验收 用户最终验收 系统维护

项目任务及计划

项目实施监控 项目收尾

《单元测试用例》。《设计说明书》中需要定义系统输入输出说明和接口设计说明。

2、主管领导组织相关人员对概要设计进行评审,出具《设计评审报告》。评审依据为《用户需求说明书》和《需求规格说明书》为依据,确保系统设计满足全部需求。

3、对已确认通过的系统设计进行修改需获得管理部门审批后方可进行,修改文档也需上传至服务器进行归档管理。

6.5系统实现与自测

1、依据系统设计文档,系统实现包括程序编码、代码复查、单元测试。

项目组根据《设计说明书》制定系统实现计划,并提交项目经理对计划可行性进行审批。

2、若为多次迭代,自测结束出具《转测说明》,使下一阶段有功能针对性测试。

6.6系统测试

1、对最终系统进行全面的测试,确保最终系统满足产品需求并且遵循系统设计。制定《系统/用户测试计划》,并提交对计划可行性进行审批。

2、《系统/用户测试计划》必须定义测试标准,并明确各种测试的测试步骤需要的系统设置要求。测试数据要足够模拟生产环境中的实际数据,对内部各模块接口和其他系统接口进行充分测试。出具系统测试报告。

3、系统测试通过后,测试组配合现场环境建立用户测试环境,根据用户测试用例进行用例测试,出具《用户测试报告》

4、测试组输出《系统部署手册》、《用户操作手册》相关文档,凡变更需项目组知悉并提交服务器备份

6.7产品验收试运行

1、验收小组从功能需求及技术需求层面对系统进行综合评估。客户依据合同对产品进

行审查和测试,确保产品满足客户需求,制定《试运行计划》,并制定试运行验收指标,上报公司主管领导审批。《试运行计划》中应包含问题应对机制,明确问题沟通渠道和职责分工。内容应包括但不限于:

a、部署方式和资源分配(包括人力资源及服务器资源);

b、上线工作时间表;

c、上线操作步骤以及问题处理步骤;

d、项目阶段性里程碑和成果汇报(项目执行状态的审阅、进度安排等);

e、完整可行的应急预案和“回退”计划;

f、进行相关系统部署工作,准备培训资料,对相关用户和信息技术人员进行培训。用户培训计划(包括:培训计划、培训手册、培训考核等);

2、项目组根据《试运行计划》进行系统转换和数据迁移,出具《安装调试报告》和《系

统验收评估报告》,上线单位管理层要进行审批签字。

3、上线初期需加强日常运行状态监控,出现问题时应及时处理,对重大问题应启动紧急预案。

6.8合作、外包开发管理

1、合作开发商必须遵循公司《软件开发管理制度》。

2、项目经理同合作开发商明确规定项目变更的范围和处理方式,重点关注需求和设计变更。

3、项目经理负责监控合作开发商的项目管理及软件开发活动。合作开发商应按计划定期向项目经理报告进展状态,并提交阶段性成果文档。发生重大问题时,合作开发商需及时向项目经理汇报。

4、项目组同合作开发商商定验收的标准和方法并派专人监控合作开发商的质量保证过程。

6.9文档输出

1、项目文档是项目实施的依据,也是项目设计、编码、测试、修正、培训和验收的依据。

2、项目管理者必须在系统开发过程中做好项目文档管理。各阶段邮件发送至相关方并抄送相关组成员,并备份至文件服务器存档,但凡各阶段输出文档确认变更需抄送项目成员知悉,更新服务器上相关文件。

3、根据以上项目流程,项目实施过程中应包含以下所必须的文档:

相关主题