_北航“软件工程与项目管理”讲义-7.ppt_第1页
_北航“软件工程与项目管理”讲义-7.ppt_第2页
_北航“软件工程与项目管理”讲义-7.ppt_第3页
_北航“软件工程与项目管理”讲义-7.ppt_第4页
_北航“软件工程与项目管理”讲义-7.ppt_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

康一梅kangyimei,第七讲,SoftwareProjectManagement,软件项目计划,软件项目计划,SoftwareProjectPlanning,Introduction,Input:商业计划市场计划需求说明书Output:软件项目计划,LevelsofPlanningProcess,SoftwareProjectPlanning,MarketPlan,BusinessPlan,DevelopmentPlan,QualityPlan,TestPlan,ProjectManagement,软件项目计划,SoftwareProjectPlanning,Determinedefinitionofproducte.g.functionality,complexity,othercharacteristicsAllocateresources,MonitorandTrackResults,Steps:Estimate:cost,effort,teamorganization,marketvalue,customerneeds,qualitytargetsSchedule:start/completiondatesforeachphasePlanning:buyorbuild,riskmanagement,statementofwork,testplanTrack/Measurement:meetschedule,costandqualitytargets,followupdependenciesetc.,DevelopmentProcess,软件项目计划,SoftwareProjectPlanning,IntegratedDevelopmentProcess,InvestmentReviewBoard(IRB),DevelopmentPlanningProcess,IntegratedPortfolioManagementTeam(IPMT),IPMTSponsor,ProjectDevelopmentTeam(PDT),MarketPlanningProcess,ConceptDCP,PlanDCP,DesignConfirmationDCP,AvailabilityDCP,LifecycleDCP,软件项目计划,DevelopmentPhase,SoftwareProjectPlanning,ProjectManagement,BusinessManagement,软件项目计划,QualityPlan,SoftwareProjectPlanning,Definequalitylevelofproducte.g.functionality,complexity,othercharacteristicsEstablishacceptancecriteriaandbenchmarks,Steps:ValidateconformancetobusinessrequirementsScheduleperiodicreviewswithdevelopmentteamsPlanqualitytestandinputtodevelopmenttestplan,软件项目计划,TestPlan,SoftwareProjectPlanning,ToAssureproductmeetsacceptablelevelofqualityToDetecterrorsatthestagewhentheyareleasttime-consuming(andleastcost)tocorrect,Steps:ConductTechnicalReviewsPerformAppropriateTestingApplyCorrectiveActionsPromptly,软件项目计划,软件项目计划的基础,软件项目计划,软件项目计划,软件项目研发计划的基础是商业计划、市场计划或项目合同,这些是研发计划的指导方针也是约束,当资源、成本、进度等发生冲突时,则要依据商业计划、市场计划或项目合同做出权衡。,软件项目计划的层次,软件项目计划,软件项目计划,软件研发计划根据不同的阶段、不同的对象有不同层次的计划。高级计划:项目的早期计划。二级计划:每个阶段或活动开始之前,应做好这一阶段或活动的详细计划。个人计划:开发人员的个人计划是低级计划,由开发人员根据自己的任务自行制定,要把任务细化到人/日。,高级计划是粗粒度的,主要是进行项目的阶段划分,确定重大的里程碑,所需的相关资源,包括人力资源、设备资源、资金资源,即所谓的人、财、物三个要素。,详细计划要确定各项任务的负责人,开始时间,结束时间,任务之间的依赖关系,设备资源,小的事件点(即里程碑)。比如,详细地需求调研计划、需求分析计划、系统设计计划、编码计划、测试计划、配置管理计划等。一些计划是贯穿整个开发过程的,那么在每个阶段前都要重新检查修订计划。如果项目规模相对较大,可以有多级计划,比如说,一个项目组可能分为几个开发组,二级计划是各开发组制订的适合的自己小组的计划。如果开发组还分了小组,可以有小组的三级计划。,软件项目计划的层次,软件项目计划,软件项目计划,一般软件项目计划至多有四级就够了,过多的等级将会引发效率的瓶颈。大的项目不见得要有庞大的组织和人员数量来支撑,合理的划分小组,减少组织的层次,有利于项目计划的制订和实施。较小的软件项目由于工期不长,人员较少,只有高级计划与低级计划两级计划也是可行的。,软件项目计划编制的方针:,软件项目计划,软件项目计划,指定软件项目负责人负责落实软件项目的承诺并制定项目的软件开发计划。以软件的最终需求为基础制定计划。确定软件项目需要建立及维护控制的软件工作产品。将用于编制软件项目计划及跟踪软件项目的工作文档化。项目软件开发计划需要管理与控制。对于软件项目的实施采用文档化的承诺,相关的机构或个人认可他们对软件项目的承诺。软件开发计划要指定人员角色分工,明确责任。对软件项目所需要的适当的资源及资金做出计划。对软件项目负责人,软件工程师及其他与软件项目计划编制有关人员进行适合其职责范围的培训。成立相关软件项目组及相关的方案论证小组。,软件项目计划编制的方针:,软件项目计划,软件项目计划,软件项目组及相关的方案论证小组在整个项目生命期内参加全部的项目计划编制工作。明确划分预先定义的,规模可管理的阶段的软件生命周期。按照书面流程获得对软件产品规模的估计(或软件产品规模的改变),工作量及费用的估计,项目所需要的关键计算机资源的估计。按照书面流程获得项目的软件开发进度。识别、评估与费用、资源、进度及项目的技术方面相关的软件风险,并文档化。记录软件计划编制数据。制定并使用度量方法以确定软件计划活动的状态。定期与高级管理人员对软件项目计划活动进行复审。以定期及事件驱动方式与软件项目管理人员对软件项目计划活动进行复审。与软件质量保证人员对软件项目计划活动及工作产品进行回顾及审核,并将结果文档化。,KeyFactorsofSoftwareProjectPlanning,SoftwareProjectPlanning,项目介绍技术方案概述过程计划测试计划组织计划资源计划软件估计与预算进度表质量计划风险鉴别与估计计划变更管理计划文档计划培训计划发布与实施计划,软件项目计划,1.项目介绍,SoftwareProjectPlanning,向读者介绍项目与客户的情况概括整个计划,步骤:介绍项目目标项目范围假设与约束应交付的成果项目验收的依据定义术语参考文献市场计划、商业计划、需求说明书及其他资料,软件项目计划,让项目团队每一个成员都明确项目目标,包括项目的高层目标及产品目标。高层目标应指出服务对象、系统本身的比较深层次的社会目的或系统使用后所起到的社会效果等。产品目标应当从用户的角度说明开发这一软件系统是为了解决用户的那些问题。项目目标应当符合SMART原则:S(Specific):明确的陈述;M(Measurable):可以衡量的结果;A(Attainable):可以达成的目标;R(Realistic):合理的,现实的或者说是能和实际工作相结合;T(Trackable):可以跟踪的。,项目范围包括项目成果(软件系统)范围和项目工作范围,项目成果(软件系统)范围也称作产品范围。,说明项目内部验收和用户验收的方式,如验收包括交付前验收、交付后验收、试运行(初步)验收、最终验收、第三方验收、专家参与验收等等。项目验收依据主要有标书、合同、相关标准、项目文档(最主要是需求规格说明书)。,2.技术方案概述,SoftwareProjectPlanning,介绍项目的技术方案,步骤:描述功能需求概述系统设计定义技术基线描述软硬件环境描述软件系统结构设计,高层低层技术方案,软件项目计划,3.过程计划,SoftwareProjectPlanning,定义项目开发周期、开发过程确保项目开发过程中过程定义一致、完整,步骤:选择生命周期模型定义活动:需求、设计、编码、测试/调试、发布/实施过程的目标、任务、成果等。确定活动顺序及关系,软件项目计划,4.测试计划,SoftwareProjectPlanning,定义每个测试的性质、工具、过程和职责确保产品满足质量标准及早发现错误以使修改成本最低,步骤:定义测试过程,如单元测试、集成测试、系统测试、环境测试、安装测试等指导技术审核进行适当的测试及早发现错误并修改,软件项目计划,5.组织计划,SoftwareProjectPlanning,定义项目过程中的组织及责任组织机构图表,步骤:确定项目组织结构职责分工协作、沟通与隶属关系,软件项目计划,6.资源计划,SoftwareProjectPlanning,所有资源的准备计划如人力资源计划、设备资源技术、技术资源计划,步骤:列出项目所需所有工具/设备,包括其他公司准备发行而项目要用到的产品明确所有关键的成功因素,可参考其他案例列出项目所需所有技术需要列出项目所需所有技能的员工确定内部/外部协作要求、交付日程及标准确定偶发事件备用计划,软件项目计划,7.估计与预算,SoftwareProjectPlanning,估计项目工作量资金预算,步骤:在过程计划、测试计划、组织计划、资源计划的基础上对项目工作量进行估算在工作量估算、资源计划的基础上对项目资金投入进行估算,软件项目计划,8.进度表,SoftwareProjectPlanning,每个过程、任务的起始结束时间,关键里程碑安排关键的检查日期定义关键路径,步骤:确定每个过程、任务的起始结束时间、依赖关系、相关约束、交付成果。确定关键里程碑。里程碑指在项目生命期的一个重要事件的结束。通常一个里程碑是在关键路径上的一项活动。它不必是一个有形的可交付产品,但可以是用户对工作成果的肯定。安排关键的检查日期。定义关键路径。,软件项目计划,9.质量计划,SoftwareProjectPlanning,定义产品的质量要求如功能、性能以及其他特性设定接收标准定义审查的时间、目标、标准如内部审查、外部审查、正式审查定义报告的类型、频率、发送对象、格式、范围等,步骤:确保与业务要求一致确定对开发团队定期检查的时间点安排质量审核与测试计划,软件项目计划,10.风险鉴别与估计计划,SoftwareProjectPlanning,界定、评估风险降低风险对项目的影响,步骤:确保及早发现风险并报告安排相应组织进行评估,给出应对措施,软件项目计划,11.变更管理计划,SoftwareProjectPlanning,定义需要管理的变更及变更控制的机制,步骤:定义技术基线研究变更执行变更,软件项目计划,12.文档计划,SoftwareProjectPlanning,定义文档规范定义文档管理机制,步骤:定义文档书写规范,确保在团队中理解一致确定必须的文档确定文档管理机制,存储、查阅、交流的管理与权限,软件项目计划,13.培训计划,SoftwareProjectPlanning,内部培训外部培训,步骤:确保团队的开发进度与质量确保客户使用成功、其他职员有效配合,软件项目计划,14.发布/实施计划,SoftwareProjectPlanning,定义产品的发布内容如功能、性能、版本、形式以及其他特性定义实施过程及责任,步骤:确定产品的发布内容、方式及时间表确定实施过程及责任,如现场调试、设置、移植、系统切换、运行、验收方式等,软件项目计划,软件项目计划成功的关键要素:,软件项目计划,软件项目计划,注重项目计划的层次性项目计划要实现责任到人运用成熟的过程模型根据实际情况调整计划利用成熟的项目管理工具,SoftwareDevelopmentPlanning,SoftwareProjectPlanning,计划不是不变的,计划需要根据变化随时调整。项目计划是逐步完善的,但是从一开始就需要做计划。计划的基础仍然是“技术”。需求、设计方案、系统平台、开发工具以及技术的成熟度等直接影响进度、人员的投入、资源配置、风险、变更、培训等计划。而需求分析是设计的基础,系统设计是编码、测试等其他过程与工作的基础。,软件项目计划,DeliveriesandOutput,SoftwareProjectPlanning,软件项目计划文档计划内容变更表,软件项目计划,CaseStudy,死亡之旅网吧连锁经营管理系统,CaseStudy,案例,DefinitionofImpossibleMission,如果利用无偏见、客观的风险评估(包括对技术、个人、合法性、政治等各方面因素的风险评估)方法发现评估结果中项目失败的概率大于50%,这就是一个死亡之旅类型的项目。,案例,CaseStudy,CharacteristicsofImpossibleMission,进度比估算进度加快一半以上员工缩减到正常一半以下预算及相关资源被削减一半以上要求给出两倍于正常情况的功能、特性、性能或其他技术要求。,案例,CaseStudy,CaseIntroduction,十家连锁网吧运营商中电华通要在8月初在武汉、北京两地进行网吧试点2003年6月底决定做,客户要求8月初试点没有需求,案例,CaseStudy,Plan,1人分析流行的网吧软件,列出每个软件的所有功能,做出文档(3天)讨论、修改、确认(1天)设计系统整体结构、讨论(1天)3个人设计数据库(3天),讨论、修改、确认(1天)4个人进行模块详细设计并讨论确认(3天)编码(加班、无休息日)(2-3周)测试/调试(2-3周)共计35个工作日,6月23日开始,8月8日完成。,案例,CaseStudy,Result,设计未延期编码延期4天测试人员从未做过测试,但却要严格按照规范测试项目经理是新手部门经理不介入8月8日,认为文档不全不规范,重新写需求文档,4天以后需求文档仍然不过关。最后,决定不论做成什么样8月15日关闭项目。,案例,CaseStudy,发生的原因,政治-售前经理对设计非常感兴趣,此外他是新任命的,急于建功立业-事业部总经理也是新任命的,他不能让整个事业部空转幼稚的管理者根本未经历过软件项目,太乐观海军特种兵心理,案例,CaseStudy,参加的原因,虽然风险高,但回报也高(管理者)不做就得失业(程序员)为了将来更好地发展值得一试(项目经理)每个人都希望被别人需要(所有人)不关心项目的成败,愿意接触一流的技术(DelphiJava)盲目的乐观(售前经理)完成工作(所有人)这是唯一的项目(项目组成员)老板要这样,案例,CaseStudy,进度安排,Scheduling,进度计划,优先约束人员水平LPT算法,AnExampleWinWord1.0,项目初期制定的开发目标是不可实现的。比尔.盖茨给项目组下达的指示是用最快的速度开发迄今为止最好的字处理软件,争取在12个月内完成。过紧的进度计划降低了计划的精确度。在开发的前4年里,预期进度估算误差率达到了60%-80%。开发过程中频繁换人。5年中共换了4个组长,其中有2人因进度压力离职,1人是出于健康的原因离职。迫于进度压力,开发人员匆匆写出一些低质量的和不完整的代码,然后宣称已实现某些性能。这造成WinWord不得不将用于提高软件稳定性的时间由预计的3个月增加到12个月。,Scheduling,进度计划

温馨提示

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

评论

0/150

提交评论