软件研发管理制度_第1页
软件研发管理制度_第2页
软件研发管理制度_第3页
软件研发管理制度_第4页
软件研发管理制度_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件研发管理制度软件研发管理制度 文件标识:lolaage-software-pm 当前版本:0.1.2 作 者:宋孝光 文件状态: 草稿 正式发布 正在修改 完成日期:2012/3/27 版本/状态作者参与者修改日期备注 0.1.1宋孝光2012/3/26第一版草稿 0.1.2宋孝光2012/3/27整理目录 目录 1 软件研发制度综述软件研发制度综述 .3 1.1 精简模型精简模型 .3 1.2 精简过程域的目的精简过程域的目的 .4 1.3 精简模型精简模型 文档结构与规范细分文档结构与规范细分 .5 1.4 精简模型精简模型 角色与职责表角色与职责表 .6 1.5 公司软件过程的政策公

2、司软件过程的政策 .8 1.5.1 目标.8 1.5.2 机构领导的支持.8 1.5.3 质量管理的政策.8 1.5.4 质量保证小组的政策.9 1.5.5 项目团队的政策.9 2 立项管理立项管理 .9 3 项目规划项目规划 .9 4 项目监控项目监控 .10 4.1 项目计划跟踪项目计划跟踪 .11 4.1.1 任务跟踪任务跟踪 .11 4.1.2 费用跟踪费用跟踪 .11 4.1.3 资源跟踪资源跟踪 .11 4.1.4 工作成果及其规模跟踪工作成果及其规模跟踪 .12 4.2 控制偏差控制偏差 .12 4.3 项目进展汇报项目进展汇报 .13 5 风险管理风险管理 .14 6 需求管理

3、需求管理 .18 6.1 需求确认需求确认 .18 6.2 需求跟踪需求跟踪 .20 6.3 需求变更控制需求变更控制 .20 7 结项管理结项管理 .22 8 需求开发需求开发 .23 9 技术预研技术预研 .24 10 系统设计系统设计 .25 10.1 体系结构设计体系结构设计 .26 10.2 用户界面设计用户界面设计 .26 10.3 数据库设计数据库设计 .27 10.4 模块设计模块设计 .28 11 实现与测试实现与测试 .28 12 系统测试系统测试 .30 13 客户验收客户验收 .31 14 技术评审技术评审 .32 15 配置管理配置管理 .33 16 质量保证质量保证

4、 .35 17 培训管理培训管理 .37 18 服务与维护服务与维护 .38 1 软件研发制度综述软件研发制度综述 1.1 精简模型精简模型 “精简模型”是基于 cmmi 以及软件工程和项目管理知识而创作的一种“软件过程改进 方法和规范” ,它由众多的过程规范和文档模板组成。 精简模型把产品生命周期划分为 6 个阶段,分别为: 产品概念阶段 产品定义阶段 产品开发阶段 产品测试阶段 用户验收阶段 产品维护阶段 在精简模型中,软件项目的过程有三大类:项目管理过程、项目研发过程和机构支持过 程。上述三类过程可以细分为 17 个主要过程域,分布在产品生命周期的各个阶段。 项目管理过程包含 6 个过程

5、域,分别为: 立项管理 结项管理 项目规划 项目监控 风险管理 需求管理 项目研发过程包含 7 个过程域,分别为: 需求开发 技术预研 系统设计 实现与测试 系统测试 客户验收 技术评审 机构支撑过程包含 4 个过程域,分别为: 配置管理 质量保证 培训管理 服务与维护 精简模型如图 1-1 所示。精简模型的主要特征和优点有: 一、直观的过程模型一、直观的过程模型 精简模型将项目管理、项目研发、机构支撑所包含的工作划分为相对独立的三类过程, 各个过程域之间的关系直观明了。这样,机构领导、项目经理、开发人员、测试人员、质量 保证人员等人根据精简模型,很容易知道自己“应该在什么时候、按照什么规范做

6、什么事情” 。所以精简模型有助于使机构内的各个职能单位有条不紊地开展工作。 二、容易裁剪与扩充二、容易裁剪与扩充 精简模型的三类过程贯穿了产品的整个生命周期,17 个最常见的过程域都合理地安排在 产品生命周期中的某些阶段。用户可以根据自己产品的特征,适当地裁剪或扩充精简的过程 域,很容易制定出最适合于本产品的过程模型。 图 1-1 精简模型 产品概念产品定义产品开发产品测试客户验收产品维护 立项管理项目规划项目监控 风险管理 需求管理结项管理 需求开发 配置管理 质量保证 培训管理 项目 管理 过程 项目 研发 过程 机构 支撑 过程 服务与维护 技术评审技术评审 技术预研 并行、迭代 根据产

7、品特征确定最合适的开发模型, 以线性顺序为主,以并行、迭代为辅。 系统设计 实现与测试 系统测试 客户验收 其它: 人力资源管理 财务管理 行政管理 市场营销 1.2 精简过程域的目的精简过程域的目的 精简模型 所有 17 个过程域的目的如表 1-1 所示。 项目管理过程域项目管理过程域目的目的 立项管理 采纳符合机构最大利益的立项建议,通过立项管理使该建议成为正式的项目。杜绝不 符合机构最大利益的立项建议被采纳,避免浪费机构的资源、资金、时间等。 结项管理 在项目开发工作结束后,对项目的有形资产和无形资产进行清算、对项目进行综合评 估以及总结经验教训等。 项目规划 为项目的研发和管理工作制定

8、合理的行动纲领(即项目计划) ,以便所有相关人员按照 该计划有条不紊地开展工作。 项目监控 周期性地跟踪项目计划的各种参数如进度、工作量、费用、资源等,不断地了解项目 的进展情况,以便当项目实际进展显著偏离计划时能够及时采取纠正措施。 风险管理在风险产生危害之前识别它们,从而有计划地消除或削弱风险。 需求管理 在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并 控制需求的变更。 项目研发过程域项目研发过程域目的目的 需求开发通过调查与分析,获取用户需求并定义产品需求。 技术预研 在立项之后到开发工作完成之前的时间内,对项目将采用的关键技术提前学习和研究, 尽可能早地发现

9、并解决开发过程中将会遇到的技术障碍。 系统设计 设计软件系统的体系结构、用户界面、数据库、模块等,从而在需求与代码之间建立 桥梁,指导开发人员去实现能满足用户需求的软件产品。 实现与测试 依据系统设计文档,编写并测试整个系统的代码。在精简模型中,实现与测试是“编 程、代码审查、单元测试、集成测试、缺陷管理与改错”的综合表述。 系统测试对最终系统进行全面的测试,确保最终系统满足产品需求并且遵循系统设计。 客户验收客户依据合同对产品进行审查和测试,确保产品满足客户需求。 技术评审 尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品 的质量。 机构支撑过程域机构支撑过程域目的

10、目的 配置管理 通过执行版本控制、变更控制等规程,以及使用配置管理软件来保证所有配置项的完 整性和可跟踪性。配置管理是对工作成果的一种有效保护。 质量保证 提供一种有效的人员组织形式和管理方法,通过客观地检查和监控“过程质量”与 “产品质量” ,从而实现持续地改进质量。 培训管理 根据机构(或项目)的需求来制定培训计划,并监督该计划的实施,确保培训取得预 期效果。 服务与维护 是指产品销售之后的客户服务和产品维护,其宗旨是提高客户对产品以及对开发方的 满意度。 表 1-1 精简过程域的目的 comment j1: 使用现有的规范 1.3 精简模型精简模型 文档结构与规范细分文档结构与规范细分

11、精简模型的文档结构如图 1-2 所示,spp 包含 17 个过程域,规范细分如表 1-2 所示。 图 1-2 精简模型 文档结构 项目管理过程域项目管理过程域主要规程主要规程文档模板文档模板 立项管理 立项建议 立项评审 项目筹备 立项建议书 立项调查报告书 立项可行性分析报告 立项评审报告 结项管理结项管理 结项申请书 结项评审报告 项目规划 制定项目计划 审批项目计划 项目计划变更控制 项目计划 项目计划变更控制报告 项目监控 项目计划跟踪 偏差控制 项目进展总结 项目监控数据表 项目偏差控制报告 项目进展报告 风险管理风险管理 风险检查表 风险管理报告 需求管理 需求确认 需求跟踪 需求

12、变更控制 需求跟踪报告 需求变更控制报告 项目研发过程域项目研发过程域主要规程主要规程文档模板文档模板 需求开发 需求调查 需求分析 需求定义 用户需求说明书 产品需求规格说明书 技术预研技术预研 技术预研计划 技术预研报告 过程改进政策 过程域 规程 文档模板 系统设计 体系结构设计 用户界面设计 数据库设计 模块设计 体系结构设计报告 用户界面设计报告 数据库设计报告 模块设计报告 实现与测试 实现与测试实现与测试计划 编程文档 系统测试系统测试 系统测试计划 测试用例 测试报告 客户验收客户验收 客户验收计划 客户验收报告 技术评审 正式技术评审 非正式技术评审 技术评审计划 技术评审报

13、告 技术评审检查表 机构支撑过程域机构支撑过程域规程与关键活动规程与关键活动文档模板文档模板 质量保证 制定质量保证计划 过程与产品质量检查 问题跟踪与质量改进 质量保证计划 质量保证检查表 质量保证报告 质量问题跟踪表 配置管理 制定配置管理计划 配置库管理 版本控制 变更控制 配置管理计划 配置库管理报告 配置项变更控制报告 培训管理 机构培训管理 项目培训管理 培训计划 培训评估报告 客户服务 客户服务计划 客户服务报告 服务与维护 产品维护 产品维护计划 产品维护报告 表 1-2 精简模型 规范细分 1.4 精简模型精简模型 角色与职责表角色与职责表 精简模型的主要角色及其职责如表 1

14、-3 所示(详见各个过程域对角色与职责的描述) 。公 司在应用精简模型时,可以将精简模型的各个角色映射到公司原有的岗位上,也可以依据精 简模型角色建立新的岗位。一个人可以被赋予多个角色,一个人可以被赋予多个角色,视具体情况而定。 常设角色常设角色职责简述职责简述 软件工程过程组 (sepg) (1)制定适合于本机构的过程规范。 (2)在机构范围内推广该规范(如培训、考核) ,评估机构过程能力等。 机构过 程改进 角色 质量保证小组 (qag) (1)监督规范的实施,确保所有项目以及相关部门准照规范开展工作。 (2)分析并解决机构内存在的共性质量问题,协组 sepg 完善规范。 机构领导 (1)

15、是机构内所有项目的主管,对立项管理和结项管理有最终决策权。 (2)监督项目经理的工作,审批项目经理的各种申请。 项目 管理 过程角 色 项目经理 (1)向机构领导汇报工作。 (2)是项目规划、项目监控、风险管理和需求管理过程域的负责人。 (3)监督项目成员的工作,审批项目成员的各种申请。 需求分析员 调查、分析并定义需求,撰写相应的需求文档,尽最大努力使需求文档能 够正确无误地反映用户的真实意愿。 系统设计师 根据需求文档设计软件系统的体系结构、用户界面、数据库、模块等,并 撰写相应的设计文档。 程序员 (1)根据系统设计文档,编写软件系统的代码。 (2)随时测试和检查自己的代码,及时消除代码

16、中的缺陷。 项目研 发 过程 角色 测试员 从事单元测试、集成测试和系统测试,主要工作包括制定测试计划、设计 测试用例、执行测试和撰写测试报告。 配置管理员 (1)为项目制定配置管理计划 。 (2)创建并维护配置库,如分配权限、清除垃圾文件、备份配置库等。 质量保证员 (即 qag 成员) (1)为项目制定质量保证计划 。 (2)周期性的开展“过程与产品质量检查” 。 (3)跟踪质量问题,给出质量改进措施。 培训管理员 制定机构(或项目)的培训计划 ,监督该计划的实施,撰写培训评估 报告 。 客户服务人员 为客户提供与产品相关的服务(如技术咨询) ,快速响应客户的要求,给客 户一个满意的解答。

17、 机构 支撑 过程 角色 产品维护人员 (1)纠错性维护:及时解决用户遇到的技术故障和消除产品中的缺陷。 (2)完善性维护:在资源允许的情况下,不断改善产品功能与质量。 临时角色临时角色职责说明职责说明 立项建议小组 (1)开展立项调查、产品构思和可行性分析,撰写相应文档。 (2)申请立项,并在立项评审会议上答辩。 立项评审委员会 由机构领导、各级经理、市场人员、技术专家、财务人员等组成,委员会 按少数服从多数原则投票决定是否同意立项。 结项评审委员会 对项目的有形资产和无形资产进行清算,对项目进行综合评估,总结经验 教训等。结项委员会的人员组成与立项评审委员会的类似。 技术评审委员会 对工作

18、成果进行正式技术评审,尽早地发现工作成果中的缺陷,并帮助开 发人员及时消除缺陷。该委员会由项目内外的技术专家组成。 配置控制委员会对配置管理各项活动拥有决策权(例如审批计划,审批变更请求等) 。 表 1-3 精简模型的角色与职责简表 1.5 公司软件过程的政策公司软件过程的政策 1.5.1 目标目标 持续改进机构的软件过程能力,不断地提高产品质量、提高生产率并且降低开发成本。 1.5.2 机构领导的支持机构领导的支持 机构领导批准用于软件过程改进的必要经费,例如支付咨询费,购买相关软件工具等。 机构领导组建 sepg 和 qag,专门从事软件过程改进工作。sepg 的主要职责是建立适 合于机构

19、的过程规范,qag 的主要职责是监督该规范的实施。建议让 sepg 和 qag 的 大部分人员重叠,这些人既是 sepg 成员又是质量保证员,扮演两种角色。这样不仅节 约人力资源,并且提高了工作效果(由制定规范的人去监督规范的实施最合适不过) 。一 般地,sepg 成员和质量保证员共占机构总人数的 5%左右。 机构领导不仅要口头支持,还要亲自参与软件过程改进的实践。例如参加培训和考试, 准照过程规范执行立项管理和结项管理等。 1.5.3 质量管理的政策质量管理的政策 质量管理口号:“在开发过程之中内建质量而非修补质量” 。 质量管理有种基本措施:“质量保证” 、 “技术评审”和“测试” 。 一

20、、一、质量保证质量保证 机构的质量保证员周期性地检查项目成员的“工作过程以及工作成果”是否符合既定的 规范,来监控和改进“过程质量以及产品质量” 。 机构的质量保证员独立于任何项目,并赋予他一定的权利,对质量不合格的工作成果作 出处理。 二、技术评审二、技术评审 在工作成果刚产生之际,对其进行技术评审(分正式或非正式两种) ,目的是尽早地发 现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而提高产品的质量。 如果时间允许的话,应当尽可能多地对产品的重要工作成果进行技术评审。技术评审活 动由项目开发团队组织。 三、测试三、测试 测试是指通过运行测试用例(test case)来找出软件中的缺陷。

21、测试与技术评审的主要区 别是前者要运行软件而后者不必运行软件。 一般地,产品开发过程中有四个测试阶段:单元测试、集成测试、系统测试和验收测试。 其中单元测试和集成测试可以由项目开发团队组织。系统测试阶段必须有项目外的人员参与, 以保证系统测试的客观性。验收测试由客户组织。如果有条件的话,建议机构成立专门的测 试小组从事单元测试、集成测试和系统测试工作。 1.5.4 质量保证小组的政策质量保证小组的政策 机构领导任命一位熟悉过程规范并且有丰富的质量管理经验的人担任 qag 的负责人 (或称为质量经理) 。在机构领导的许可下,该负责人组建 qag(成员可以是全职的也可以 是兼职的) 。 qag 在

22、行政上独立于任何项目。这种独立性有助于质量保证员客观地检查和监控“过程 以及产品的质量” 。qag 准照 sepg 制定的“质量保证规范”开展工作。 机构领导赋予 qag 一定的权利,可以对质量不合格的工作成果做出处理。这种权利使 得 qag 的工作不会被轻视,并有助于加强全员的质量意识。对于 qag 与项目之间出现的难 以调和的争议,由机构领导处理。 1.5.5 项目团队的政策项目团队的政策 项目中的任何管理人员、开发人员、测试人员等,必须学习与本职工作相关的过程规范, 每个人都必须明白自己“应当在什么时候依据什么规范做什么事情应当在什么时候依据什么规范做什么事情” 。项目经理应当树立榜 样

23、,并且督促项目成员们按规范做事。 允许项目经理根据本项目的特征,在 sepg 和 qag 的指导下,适当地裁剪或扩充机构 的过程规范,从而快速建立本项目的过程规范。这项工作应当在“项目规划过程域”中完成, 并在项目计划中体现出来。 如果项目对机构过程规范的裁剪幅度比较大,遭到 qag 的反对,如果双方不能达成共 识,则由机构领导处理该争议。 sepg 对项目过程能力的评估成绩将作为评定项目人员工作业绩的重要因素,具体比重 由机构领导决定,建议占 30以上的比重。 2 立项管理立项管理 参见项目管理制度试行 v2.1 版本 3 项目规划项目规划 在立项管理过程域的项目筹备阶段,机构领导首先任命一

24、位项目经理,之后机构领 导协助项目经理筹备项目经费、人力资源、软件硬件资源等。如果必要的资金和资源已经到 位,那么项目经理和核心成员即可组成一个项目规划小组,着手制定项目计划 ,并按计 划执行研发和管理工作。 项目的计划书可分两类:一是全局的计划书(overall plan) ,这里称为项目计划 ;二 是一些下属计划书(subordinate plan) ,例如配置管理计划 、 质量保证计划 、一些开发 计划和测试计划等。 下属计划书是对项目计划的补充,其内容不可与项目计划冲突。通常项目计 划由项目经理负责制定,由机构领导审批。而下属计划书一般由项目成员制定,由项目经 理审批即可。 项目计划过

25、程域有 3 个主要规程:“制定项目计划” 、 “审批项目计划”和“项目计划变更控 制” ,流程如图 3-1 所示。 图 3-1 项目规划流程图 项目计划模板 4 项目监控项目监控 项目监控(project monitoring and control, pmc)的目的是通过周期性地跟踪项目计划的 各种参数如进度、工作量、费用、资源、工作成果等,不断地了解项目的进展情况,以便当 项目实际进展状况显著偏离计划时能够及时采取纠正措施。 本规范阐述了项目监控过程域的三个主要规程: 项目计划跟踪 控制偏差 项目进展汇报 图 4-1 项目监控流程 制定 项目 计划 审批 项目 计划 项目计划变更控制 按计

26、划执行 研发与管理工作 项目计划跟踪偏差控制项目进展总结 周期性地开展 4.1 项目计划跟踪项目计划跟踪 周期性的跟踪任务(含进度和工作量) 、费用、资源、工作成果等,及时了解项目的实 际进展情况。 为持续过程改进提供有价值的数据。 4.1.1 任务跟踪任务跟踪 项目经理(或其指定的项目成员)周期性地(如每周一次)跟踪每个重要的任务,将采 集的数据保存在项目监控数据表之中。任务跟踪表的参考格式如表 4-1 所示。 任务名称任务名称实际起止时间实际起止时间跟踪日期、当前进度跟踪日期、当前进度实际工作量实际工作量实际工作成果实际工作成果 表 4-1 任务跟踪表 4.1.2 费用跟踪费用跟踪 项目经

27、理(或其指定的项目成员)周期性地跟踪项目费用,将采集的数据保存在项目 监控数据表之中。费用跟踪表的参考格式如表 4-2 所示。 费用类别费用类别主要开支项、用途主要开支项、用途金额金额时间时间 表 4-2 费用跟踪表 4.1.3 资源跟踪资源跟踪 项目经理(或其指定的项目成员)周期性地跟踪软硬件资源,将采集的数据保存在项 目监控数据表之中。资源跟踪表的参考格式如表 4-3 所示。 软硬件资源名称软硬件资源名称级别级别实际配置实际配置获取方式与时间获取方式与时间使用说明使用说明 关键 关键 普通 普通 表 4-3 资源跟踪表 4.1.4 工作成果及其规模跟踪工作成果及其规模跟踪 项目经理(或其指

28、定的项目成员)周期性地跟踪工作成果及其规模,将采集的数据保存 在项目监控数据表之中。工作成果跟踪表的参考格式如表 4-4 所示。 工作成果名称工作成果名称新开发的成果规模新开发的成果规模 (代码行、类、文档页数)(代码行、类、文档页数) 复用或自动生成的成果规模复用或自动生成的成果规模 (代码行、类、文档页数)(代码行、类、文档页数) 工作成果 1 工作成果 2 总和总和 表 4-4 工作成果及其规模跟踪表 4.2 控制偏差控制偏差 对比“项目实际进展”和“项目计划” ,分析偏差,如果发现项目实际进展显著偏离计 划,则及时采取纠正措施。 记录日期记录日期显著偏差描述显著偏差描述原因分析原因分析

29、纠正措施纠正措施结果结果 表 4-5 项目偏差控制报告 4.3 项目进展汇报项目进展汇报 周期性地汇报项目进展情况。 项目经理周期性地总结项目进展情况,撰写项目进展报告并通报给机构领导和所有 项目成员。 基本信息基本信息 项目名称报告日期 项目编号报告批次第 n 份 项目经理项目所处阶段 项目进展状况项目进展状况计划计划实际情况实际情况 任务与进度 工作成果 费用 人力资源 软硬件资源 问题与对策问题与对策 表 4-6 项目进展报告 5 风险管理风险管理 风险管理(risk management, riskm)的目的是在风险产生危害之前识别它们,从而有 计划地消除或削弱风险。 所有可能危害项目

30、的因素都称为风险。被刻画为风险的事件最终可能发生也可能不发生。 人们对待风险有两种态度。一种是被动态度,可比作“救火模式” 。另一种是主动态度,可 比作“防火模式” 。风险管理属于“防火模式” ,目的就是“防止风险产生真正的危害” 。 为了便于量化管理,我们给风险定义 3 个参数: 风险严重性:指风险对项目造成的危害程度。 风险可能性:指风险发生的几率。 风险系数:是风险严重性和风险可能性的乘积。 参数参数等级等级值值描述描述 很高5例如进度延误大于 30%,或者费用超支大于 30%。 比较高4例如进度延误 20%30%,或者费用超支 20%30%。 中等3例如进度延误低于 20%,或者费用超

31、支低于 20%。 比较低2例如进度延误低于 10%,或者费用超支低于 10%。 风险 严重性 很低1例如进度延误低于 5%,或者费用超支低于 5%。 表 5-1 风险严重性等级 参数参数等级等级值值描述描述 很高5风险发生的几率为 1.0 0.8 比较高4风险发生的几率为 0.8 0.6 中等3风险发生的几率为 0.6 0.4 比较低2风险发生的几率为 0.4 0.2 风险 可能性 很低1风险发生的几率为 0.2 0.0 表 5-2 风险可能性等级 风险可能性风险可能性风险风险 系数系数很高 5比较高 4中等 3比较低 2很低 1 很高 5252015105 比较高 420161284 中等

32、31512963 比较低 2108642 风险风险 严重性严重性 很低 154321 本表灰色部分的风险系数值为本表灰色部分的风险系数值为 1025,应当优先处理。,应当优先处理。 表 5-3 风险系数等级 风险严重性的等级划分如表 5-1 所示,风险可能性的等级划分如表 5-2 所示,风险系数 的等级划分如表 3 所示。 风险管理有 4 个主要活动: 风险识别:根据风险检查表,识别出本项目的风险。 风险分析:估计风险严重性、风险可能性、风险系数。 风险减缓:对于风险系数超过“容许值”的每一个风险,都应当采取减缓措施。 风险跟踪:跟踪风险减缓过程,记录风险的状态。 图 5-1 风险管理示意图

33、在项目的生命周期内,上述 4 个活动将被循环执行,如图 5-1 所示。直到项目的所有风 险都被识别与解决为止。 常用的风险检查表 ,使用者应根据实际情况进行适当的删减或补充。风险管理过程 域产生的主要文档是风险管理报告 。 商业风险商业风险 风险类型检查项 政府或者其他机构对本项目的开发有限制吗? 有不可预测的市场动荡吗? 有不利于我方的官司要打吗? 本产品销售后在使用过程中可能导致发生重大的损失或伤亡事故吗? 竞争对手有不正当的竞争行为吗? 本产品销售后在使用过程中可能导致发生重大的损失或伤亡事故吗? 是否在开发很少有人真正需要却自以为很好的产品? 政治 法律 市场 是否在开发可能亏本的产品

34、? 客户的需求是否含糊不清? 客户是否反反复复地改动需求? 客户指定的需求和交付期限在客观上可行吗? 客户对产品的健壮性、可靠性、性能等质量因素有非常过分的要求吗? 客户的合作态度友善吗? 与客户签的合同公正吗?双方互利吗? 客户 客户的信誉好吗?例如按客户的需求开发了产品,但是客户可能不购买。 风险识别 风险分析 风险减缓 风险跟踪 与子承包商、供应商签订的合同公正吗?双方互利吗? 子承包商、供应商的信誉好吗? 子承包商、供应商有可能倒闭吗? 子承包商、供应商能及时交付质量合格的产品(或部件)吗? 子承包商 供应商 子承包商、供应商有能力做好售后服务吗? 管理风险管理风险 风险类型检查项 对

35、项目的规模、难度估计是否比较正确? 人力资源(开发人员、管理人员)够用吗?合格吗? 项目所需的软件、硬件能按时到位吗? 项目的经费够用吗? 进度安排是否过于紧张?有合理的缓冲时间吗? 进度表中是否遗忘了一些重要的(必要的)任务? 进度安排是否考虑了关键路径? 是否可能出现某一项工作延误导致其他一连串的工作也被延误? 任务分配是否合理?(即把任务分配给合适的项目成员,充分发挥其才能) 是否为了节省钱,不采用(购买)成熟的软件模块,一切从零做起? 项目计划 项目成员团结吗?是否存在矛盾? 是否绝大部分的项目成员对工作认真负责? 绝大部分的项目成员有工作热情吗? 团队之中有“害群之马”吗? 技术开发

36、队伍中有临时工吗? 本项目开发过程中是否会有核心人员辞职、调动? 是否能保证“人员流动基本不会影响工作的连续性”? 项目团队 项目经理是否忙于行政事务而无暇顾及项目的开发工作? 本项目是否得到上级领导的重视? 上级领导是否随时会抽调本项目的资源用于其他“高优先级”的项目? 上级领导是否过多地介入本项目的事务并且瞎指挥? 行政部门的办事效率是否比较底,以至于拖项目的后腿? 行政部门是否经常干一些无益于生产力的事情,以至于骚扰本项目? 机构是否能全面、公正地考核员工的工作业绩? 机构是否有较好的奖励和惩罚措施? 上级领导 行政部门 合作部门 本项目的合作部门的态度积极吗?是否应付了事?或者做事与承

37、诺的不一致? 技术风险技术风险 风险类型检查项 需求开发人员懂得如何获取用户需求吗?效率高吗? 需求开发需求开发人员懂得项目所涉及的具体业务吗?能否理解用户的需求? 需求文档能够正确地、完备地表达用户需求吗? 需求开发人员能否与客户对有争议的需求达成共识?需求管理 需求开发人员能否获得客户对需求文档的承诺?以保证客户不随便变更需求? 开发人员是否有开发相似产品的经验? 待开发的产品是否要与未曾证实的软硬件相连接? 对开发人员而言,本项目的技术难度高吗? 开发人员是否已经掌握了本项目的关键技术? 如果某项技术尚未实践过,开发人员能否在预定时间内掌握? 开发小组是否采用比较有效的分析、设计、编程、

38、测试工具? 分析与设计工作是否过于简单、草率,从而让程序员边做边改? 开发小组采用统一的编程规范吗? 开发人员对测试工作重视吗?能保证测试的客观性吗? 项目有独立的测试人员吗?懂得如何进行高效率地测试吗? 是否对所有重要的工作成果进行了同行评审(正式评审或快速检查)? 开发人员懂得版本控制、变更控制吗?能够按照配置管理规范执行吗? 综合技术 开发能力 包括设计 编程、测试等 开发人员重视质量吗?是否会在进度延误时降低质量要求? 表 5-4 风险检查表 风险名称风险识别人 风险编号风险识别日期 风险描述 风险严重性风险系数 风险可能性风险处理人 风险减缓措施 跟踪记录 (1)记录何人在何时做了什

39、么事情 (2)记录当前风险状态(正在处理,已经解决,不作处理) 表 5-5 风险管理报告 6 需求管理需求管理 需求管理(requirement management, rm)的目的在客户与开发方之间建立对需求的共 同理解,维护需求与其他工作成果的一致性,并控制需求的变更。 需求管理过程域的三个主要规程: 需求确认 需求跟踪 需求变更控制 图 6-1 需求工程结构图 6.1 需求确认需求确认 项目经理邀请同行专家和用户(包括客户和最终用户)一起评审需求文档,尽最大努力尽最大努力 使需求文档能够正确无误地反映用户的真实意愿。使需求文档能够正确无误地反映用户的真实意愿。 当需求文档通过正式的评审之

40、后,开发方负责人(项目经理)和客户对需求文档作书面 承诺,使之具有商业合同效果。示例如下: 本需求文档建立在双方对需求的共同理解基础之上,我同意后续的开发工作根据该需求 文档开展。如果需求发生变化,我们将按照“需求变更控制规程”执行。我明白需求的变更 将导致双方重新协商成本、资源和进度等。 甲方负责人签字 乙方负责人签字 评审结束 输出 需求评审报告 ,书面的需求承诺 需求工程 需求开发 需求变更控制 需求管理 需求确认 需求跟踪 需求调查 需求分析 需求定义 需求评审报告摘要需求评审报告摘要 需求文档输入名称,标识符,版本,作者,完成日期, 需求评审报告输入名称,标识符,评审日期, 评审结论

41、 工作成果合格, “无需修改”或者“需要轻微修改但不必再审核” 。 工作成果基本合格,需要作少量的修改,之后通过审核即可。 工作成果不合格,需要作比较大的修改,之后必须重新对其评审。 评审意见 评审小组成员输入评审小组成员 表 6-1 需求评审报告 需求承诺需求承诺 需求文档输入名称,标识符,版本,作者,完成日期 客户承诺 承诺 签字,日期 项目经理承诺 承诺 签字,日期 表 6-2 需求承诺 6.2 需求跟踪需求跟踪 将系统设计、编程、测试等阶段的工作成果与需求文档进行比较,建立与维护“需求文 档设计文档代码测试用例”之间的一致性,确保产品依据需求文档进行开发。 项目经理跟踪需求。 建立与维

42、护需求跟踪矩阵: 正向跟踪。检查需求文档中的每个需求是否都能在后续工作成果中找到对应点。 逆向跟踪。检查设计文档、代码、测试用例等工作成果是否都能在需求文档中找到出处。 正向跟踪和逆向跟踪合称为“双向跟踪” 。不论采用何种跟踪方式,都要建立与维护需 求跟踪矩阵(即表格) 。需求跟踪矩阵保存了需求与后续工作成果的对应关系。矩阵单 元之间的可能存在“一对一” 、 “一对多”或“多对多”的关系。由于对应关系比较复杂, 最好在表格中加必要的文字解释。表 6-3 为简单的需求跟踪矩阵格式。 当需求文档或后续工作成果发生变更时,要及时更新需求跟踪矩阵。 需求文档 (版本,日期) 设计文档 (版本,日期) 代码 (版本,日期) 测试用例 (版本,日期) 1标题或标识符,说明标题或标识符,说明代码名称,说明测试用例名称,说明 2 表 6-3 简单的需求跟踪矩阵格式 6.3 需求变更控制需求变更控制 修改“原需求文档”中不正确的内容,产生新的需求文档。 控制需求文档的变更,防止发生混乱。 补充说明:本规程中的“原需求文档”是指已经通过了评审并获得书面承诺的需求文档。 开发方负责人(项目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论