项目开发流程培训2007-11-16培训内容一、开发流程介绍二、配置管理三、评审四、度量与分析一、开发流程介绍内容一)项目规划二)产品需求三)软件需求四)设计五)编码和单元测试六)集成测试七)系统测试八)验收测试九)项目结项一)项目规划项目规划流程项目监控流程角色分配角色岗位职责PM组织项目估算,制定项目计划,监控项目的进展情况,协调资源RO组织识别项目风险,制定风险管理计划,跟踪项目风险,维护风险管理跟踪表。SE评估开发的工作量,提供技术支持。参与项目计划的评审工作,并对计划中安排的任务给出承诺。QA参与项目计划的评审工作,对项目管理过程进行审计,及时报告项目管理活动中存在的不符合问题。TL参与项目计划的评审工作,并对计划中安排的任务给出承诺。根据PM制定的项目计划,细化并安排小组内每个开发人员的任务,并跟踪每个开发人员的任务完成情况。监督项目文档、代码规范的执行。组织预审,负责完成PM安排的各项工作。开发人员参与项目计划的评审工作,并对计划中安排的任务给出承诺。根据PM和TL安排的计划,完成安排的任务。每天/每周汇报任务的完成情况。CMO制定配置管理计划,参与项目计划的评审工作,并对计划中安排的任务给出承诺。TC制定系统测试计划,参与项目计划的评审工作,并对计划中安排的任务给出承诺。细化并安排每个测试人员的任务,并跟踪每个测试人员的任务完成情况。测试人员参与项目计划的评审工作,并对计划中安排的任务给出承诺。关注项目估算(代码、用例规模;开发、测试工作量)Delphi方法偏差范围:20%-30%识别风险(技术、管理、需求、资源等方面)风险库、经验编写计划文档PM:项目计划工作分解.MPP风险管理计划TC:系统测试计划QA:质量保证计划CMO:配置管理计划二)产品需求角色分配角色岗位职责SE收集客户需求,编写产品需求,并向客户确认需求。编写系统规格说明书/架构设计说明书,数据库设计说明书,接口文档和需求跟踪矩阵。PM参加对产品需求、系统规格说明书/架构设计说明书,数据库设计说明书,接口文档的评审工作。TL参加对产品需求、系统规格说明书/架构设计说明书,数据库设计说明书,接口文档的评审工作。开发人员参加对产品需求、系统规格说明书/架构设计说明书,数据库设计说明书,接口文档的评审工作。TC参加对产品需求、系统规格说明书/架构设计说明书,数据库设计说明书,接口文档的评审工作。测试人员参加对产品需求、系统规格说明书/架构设计说明书,数据库设计说明书,接口文档的评审工作。三)需求分析★需求变更流程角色分配角色岗位职责PM组织项目组成员对需求文挡的评审。发生需求变更时,组织项目组成员对项目变更进行实施。SE组织开发人员和测试人员理解需求,提供技术支持,维护需求问题跟踪单和需求矩阵,识别需求和其他工作产品及计划间的不一致。和PM一同分析需求变更,评定严重级别。TL编写需求文档,组织预审、内审、外审,以及输出评审表开发人员编写需求文档,参加评审TC理解需求,参加评审测试人员理解需求,参加评审CCB评估需求变更,对变更做出决策评审专家评审需求文挡关注产品需求的理解SE讲解组员讨论与接口人沟通问题记录到《需求问题跟踪单》(SE主导)需求跟踪矩阵RTM初始化(阶段更新)关注CR流程走向详见后面《配置管理专题》。二八原则:80%的工程消耗在20%的需求上四)设计角色分配角色岗位职责PM分配系统设计任务,制定项目计划,监控设计活动进展情况,协调资源,评审设计文档。SE确定技术方案,以及选择开发平台。TL负责设计协调工作,对组内的设计活动的进度和设计质量进行控制,参于撰写、评审设计文档。开发人员负责编写高层设计/概要设计、底层设计/详细设计等相关设计文档。评审专家评审高层设计/概要设计和高层设计/概要设计文档。五)编码和单元测试角色分配角色岗位职责PM1、跟踪单元测试计划和用例的编写、编码和单元测试活动执行的进展情况,并协调资源。2、组织专家评审单元测试计划和用例。3、组织专家评审代码。4、组织归档。5、汇总TL的缺陷数据,输出单元测试报告。TL1、编写单元测试计划,编写并评审单元测试用例。2、分配编码工作,控制编码和单元测试进度。3、协调组员完成编码、代码走读、测试数据准备与管理、单元测试、问题的修改工作。4、组织单元测试工作,5、执行单元测试用例,记录、修改、验证单元测试中发现的缺陷,汇总模块单元测试缺陷数据和原因分析给PM。开发人员1、编写并评审单元测试用例。2、编码,走读代码,修改代码。3、执行单元测试用例,记录、修改、验证单元测试中发现的缺陷。TC/测试人员1、评审单元测试用例。关注编码一个软件开发过程大约只有15%的工作量直接用在了编码上!单元测试案例(编码之前完成)测试计划用例编写用例评审测试报告(TC、QA要对测试结果进行分析,确认是否能结束单元测试,进行系统测试)六)集成测试角色分配角色岗位职责PM组织集成测试计划评审,监控集成测试活动的进展情况。SE编写集成测试计划(高层设计)及用例,汇总TL的缺陷数据,输出集成测试报告。TL评审集成测试计划及用例,执行集成测试用例,记录、修改、验证集成测试中发现的缺陷,汇总模块集成测试缺陷数据和原因分析给SE。开发人员评审集成测试计划及用例,执行集成测试用例,记录、修改、验证集成测试中发现的缺陷。TC/测试人员评审单元测试用例。关注基本功能验证基本功能用例(测试部提供)用例评审七)系统测试角色分配角色岗位职责PM参加系统测试计划文档的评审工作,跟踪系统测试执行的进度情况,组织归档。SE参加系统测试计划,系统测试用例的评审工作,以及需求答疑。TL评审系统测试用例,修改测试人员发现的缺陷。开发人员评审系统测试用例,修改测试人员发现的缺陷。TC协调测试工作,编写系统测试计划和用例,维护测试需求跟踪矩阵,执行系统测试用例,记录、跟踪测试缺陷,输出系统测试报告。测试人员评审系统测试计划,编写测试用例,评审系统测试用例,执行系统测试用例,并记录、跟踪测试缺陷。关注预测试对归档包进行验证TC是否接受归档版本(邮件知会)基本功能用例纸质会签八)验收测试问题单管理对应的软件修改单TD问题管理①及时录入、修改、验证②问题状态New-Open-Fixed-Verified-Closed③问题描述要清晰,备注上要写明“问题分析和解决方案”④拒绝测试部挂起接口人角色分配角色岗位职责PM录入问题单,指定问题修改人,处理拒绝和挂起的问题,组织归档。SE分析拒绝和挂起的问题。TL修改问题单(软件修改单)。开发人员修改问题单(软件修改单)。TC/测试人员验证归档包。九)项目结项输出项目结项审计(QA)不符合问题原因分析纠正措施编写结项报告数据的准确性与合理性;质量总结中对偏差进行纠正的措施描述和总结;项目的经验及教训。角色分配角色岗位职责PM跟进所有结项工作完成的情况。完成PM经验总结报告,结项报告,组织结项会议。SE完成SE经验总结报告,整理重用包和通用组件。TL完成项目总结,完成FAQ。开发人员完成项目总结,完成FAQ。TC完成TC经验总结报告,完成FAQ。测试人员完成项目总结,完成FAQ。QA输出结项审计报告,协助PM完成结项报告,初审结项报告,检查结项入口条件是否达到。二、配置管理目的:确保所有的配置项得到识别并受控;确保项目的配置库以受控的方式访问;确保有适当的机制来处理变更;确保及时建立完整的基线。返回角色分配角色岗位职责PM负责评审《配置管理计划》、招集CCB会议、收集变更申请、安排项目组成员对变更进行影响分析、实现和和验证,提交《基线申请》、《归档申请》、《发布申请》。SE分析变更影响TL按计划提交配置项,提出变更申请,根据PM的工作安排对变更进行影响分析、实现和和验证开发人员按计划提交配置项,提出变更申请,根据PM的工作安排对变更进行影响分析、实现和和验证CCB主要由PM、SE、QA、TC、TDC、商务代表组成,由PM领导。负责审批《配置管理计划》,对变更申请作出决策,批准基线建立。QA评审《配置管理计划》,进行配置管理活动审计和配置审计内容一)配置管理计划二)基线三)变更四)归档五)配置审计一)配置管理计划制定(《项目计划》)识别配置项确立配置库结构分配权限(权限分配表)识别基线备份计划归档计划发布计划变更控制评审项目计划包基线二)基线概念:对经过评审后定稿、暂不需改动的工作产品,进行一个标识活动。作用:所有的项目成员可以在一个统一的参考框架下进行交流。能够作为后续的开发过程的基础,且只能通过正式的变更申请来控制基线产品的变化。步骤:1、配置项完成并通过验证后,PM向CCB提交基线申请2、CCB审核通过后,CMO将该配置项建立基线①将配置项的权限全部收回②将配置项打Label标识(BL_UNIOMS1.0.0.0_SSRS_01)③更新维护配置项统计表和配置管理状态跟踪表二)基线三)变更步骤:1、变更人向PM提交变更申请2、PM收到变更申请后,和SE确定变更大小等级①一般变更(邮件处理)②重大变更(纸质会签,CCB进行审核)(CR_UNIOMS1.0.0.0_模块名_日期_姓名_01)3、PM给出变更影响分析,指定变更配置项开放权限和验证人4、CMO开放权限给变更人(变更内容、修订记录、comments)5、修改完成后,验证人进行验证6、CMO再次检查,关闭CR,将配置项重新基线(收回权限)7、更新维护配置项统计表和配置管理状态跟踪表#四)归档步骤:1、PM向CCB提交归档申请2、CCB审核通过后,开发人员对照归档目录进行归档(保证发布区是最新的文档)3、归档完成后,验证归档包4、验证无误后,将归档包交付测试部或合作方5、CMO关闭PR①将配置项的权限全部收回②将配置项打Label标识(PR_UNIOMS1.0.0.0_headware_01)五)配置审计QA根据项目计划和配置管理计划制定配置审计的活动计划,一般设在阶段结束尽早发现潜在的问题,将不符合问题记录到不符合问题跟踪单或审计报告中,并且安排CMO或相关责任人改正不符合问题,QA要对不符合问题进行跟踪直至关闭三、评审角色分配角色岗位职责PM组织预审、会议评审,并跟踪评审表的输出SE参加评审会议。TL参加评审会议,走读评审材料,并在评审后填写评审表单。开发人员参加评审会议,走读评审材料,并在评审后填写评审表单。TC参加评审会议,走读评审材料,并在评审后填写评审表单。测试人员参加评审会议,走读评审材料,并在评审后填写评审表单。QA审计评审工作的开展情况。评审专家审核评审材料。评审可以发现60%的缺陷!关注四、度量与分析确定度量目标和度量项初始化度量表(项目计划、进度计划、软件估算结果)执行度量与分析(阶段更新)1、数据的准确性2、偏差分析(对没有达标的项进行根因分析和纠正措施的制定)沟通度量与分析结果(周会)角色分配角色岗位职责PM指定度量分析员,制定并执行项目度量计划,与相关人员沟通度量分析结果。度量分析员协助PM制定并执行项目度量计划,收集分析数据,并报告分析结果。TL为项目度量及分析提供有效的数据。开发人员为项目度量及分析提供有效的数据。TC为项目度量及分析提供有效的数据。测试人员为项目度量及分析提供有效的数据。QA对度量与分析过程进行审计,报告发现的不符合问题。目的:改进度量表实例工作日报①统计出的实际工时可以分析出每个活动类型所占的项目工作量的比例②统计出项目的生产成本、预防成本、评审成本、测试成本、返工成本谢谢!