资源预览内容
第1页 / 共57页
第2页 / 共57页
第3页 / 共57页
第4页 / 共57页
第5页 / 共57页
第6页 / 共57页
第7页 / 共57页
第8页 / 共57页
第9页 / 共57页
第10页 / 共57页
亲,该文档总共57页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件项目计划软件项目计划Overviewo课程介绍o软件项目计划o制作项目计划o几点建议o参考资料 课程介绍课程介绍关于本次课程o课程目标o预备知识o目标听众o日程表o词汇表课程介绍o课程目标o预备知识o目标听众o日程表o词汇表课程目标o理解项目计划(SPP)的目标与作用o全面理解项目考虑方面(进度、资源、风险、质量、)的含义o掌握制作项目计划的流程o如何制作SPP预备知识o项目管理的基本知识oRUP的基本知识o项目管理与开发规范目标听众o项目经理o项目计划复审员o其他人员日程表o共计:0.25天o详细安排课程介绍课程介绍 软件计划软件计划制作软件计划制作软件计划建议建议问题问题&反馈反馈Total: hours词汇表oSPP- Software Project PlanoRUP- Rational Unified ProcessoCMMI- Capability Maturity Model Integration软件项目计划软件项目计划Overviewo几个问题o关于项目计划的知识:概念目标时机职责作用问题o项目计划要回答的问题是什么?o什么是软件项目计划?o为什么要做计划,作计划要达到什么样的目标?o在何时制定计划?o谁将对项目计划负责?o做计划有何作用(意义何在)?项目计划要回答的问题必须做什么?必须做什么?必须做什么?必须做什么?如何做?如何做?如何做?如何做?谁去做?谁去做?谁去做?谁去做?什么时候做?什么时候做?什么时候做?什么时候做?成本是多少?成本是多少?成本是多少?成本是多少?应该达到什么质量?应该达到什么质量?应该达到什么质量?应该达到什么质量?概念o软件项目计划软件项目计划项目是一个综合的组装工件(即它是一个计划集计划集),用来收集管理项目时所需的所有信息。包括项目在开始阶段中开发的许多工件,并且在整个项目过程中保留下来。可能在不断的更新中(迭代、阶段中)。目标o目标一对于供计划和跟踪软件项目使用的软件估计(规模、工作量、时间、费用等)已建立文档。o目标二软件项目的活动和约定是有计划的并已建立文档。o目标三受影响的组和个人同意他们的关于软件项目的约定时机o在项目的开始阶段开发总体的计划高级计划o在每个重要里程碑处更新根据项目的实际运作的情况,比较项目计划设置的重要里程碑(可能是阶段、迭代、迭代内的里程碑),适时地和合理地调整项目计划,以提高项目计划的可行性例如:阶段迭代周、月、季度职责o项目经理负责制定软件项目计划,并确保在整个软件开发生命周期中始终提供计划文档的最新版本。o项目组所有成员(包括SQA)都要参与计划的制定oSQA、高级管理者、委托方(用户、用户代表)要参与项目计划的评审作用o它说明了软件开发的方法方法,是一种高级的计划,生成后供经理们指导开发工作所用。o为高级管理者提供监督项目的依据依据。o包括: 项目经理以制定项目时间表和资源需求,并按照时间表跟踪项目的进展。项目团队成员以了解他们的工作任务、工作时间以及他们所依赖的其他活动。高级管理者据此来监督项目的费用、进度以及对人员的绩效考核等等。制作项目计划制作项目计划项目计划的内容o项目概述o项目组织结构o项目管理流程o项目技术流程o项目支持流程o其它专题计划项目计划的内容(Const.)o项目概述项目的目标以及规模项目中的假设与约束条件项目应该交付的工件软件项目计划的演进 项目计划的内容(Const.)o项目组织结构项目角色的划分与职责的定义人力资源的配置人员沟通计划(内部与外部)项目计划的内容(Const.)o项目管理流程估算项目(规模、费用、预算)划分项目开发阶段与迭代安排项目开发时间表(进度)分配项目资源(人员、计算机软、硬件资源以及项目参与人员的培训等)计划迭代计划项目的风险管理对所有影响项目的因素的跟踪与控制计划计划项目的收尾项目计划的内容(Const.)o项目技术流程软件生命周期模型开发案例描述项目开发中使用的方法、工具与技术产品验收计划项目计划的内容(Const.)o项目支持流程配置管理计划质量保证(SQA)计划问题解决计划文档编写计划评审计划测试计划流程改进计划(可选)项目计划的内容(Const.)o其它专题计划合同或法规所要求的其他计划。制作软件项目计划的流程估算项目的估算项目的 规模、工作量、开发周期规模、工作量、开发周期Estimate project sizeEstimate project size,effort, timeeffort, time计划项目的时间表、资源计划项目的时间表、资源Plan schedule and resourcesPlan schedule and resources定义项目的软件开发生命周期模型模型定义项目的软件开发生命周期模型模型Define software development lifecycle Define software development lifecycle modelmodel计划项目的阶段、迭代计划项目的阶段、迭代Determine phases and iterationsDetermine phases and iterations确定关键的软件开发活动以及里程碑确定关键的软件开发活动以及里程碑Confirm the key developing activities and Confirm the key developing activities and milestonesmilestones制作子计划制作子计划Develop Sub PlanDevelop Sub Plan制作专题计划制作专题计划Develop Additional PlanDevelop Additional Plan制作软件项目计划文档制作软件项目计划文档Documented software project plan Documented software project plan 计划评审计划评审Review the software project planReview the software project plan 通过?通过? Pass? Pass?结束结束是是是否否否修改计划修改计划Update the software project planUpdate the software project plan 估算项目的规模、工作量、时间o估算方法COCOMO模型:结构、成本、模型结构、成本、模型UCP:根据复杂程度计算根据复杂程度计算POINT的点数。(的点数。(Use case point)FP:根据功能点。(根据功能点。(Function point)WBS:任务任务 分解分解 结构结构o通过估算可以得到规模(Size)工作量(Effort)开发周期(Time)费用(Cost)估算概述、项目估算课程估算概述、项目估算课程定义软件开发生命周期模型o从TPUP中进行剪裁的生命周期与活动o阶段定义与里程碑目标的定义、评估标准o定义迭代以及每次迭代的目标2次迭代每次迭代3周o确定软件发布的工作版本A1B1,B2,C1,C2,C3,计划阶段、迭代o将开发周期分配到各个阶段建议的阶段划分比例例子o根据组织定义的过程剪裁指南进行调整InceptionElaborationConstructionTransitionEffort5%20%65%10%Schedule10%30%50%10%InceptionElaborationConstructionTransitionSchedule2 Weeks4 Weeks6 Weeks2 Weeks计划阶段、迭代(Const.)o确定各个阶段的里程碑目标、评估标准里程碑目标评估标准根据项目的特点阐述o确定各个阶段的迭代、目标、评估标准阶段的迭代每次迭代的目标迭代的评估标准根据项目的特点阐述计划阶段、迭代(Const.)o确定各个阶段的里程碑目标、评估标准里程碑目标评估标准根据项目的特点阐述o确定各个阶段的迭代、目标、评估标准阶段的迭代每次迭代的目标迭代的评估标准根据项目的特点阐述定义项目的组织结构o根据关键开发与管理活动划分项目内功能组Business ModelingRequirementsAnalysis & DesignImplementationTestingDeploymentConfiguration ManagementProject ManagementEnvironment Additional Groups(根据项目的特殊需要)ProjectProjectBusiness ModelingBusiness ModelingRequirementsRequirementsAnalysis & DesignAnalysis & DesignProject ManagementProject ManagementImplementationImplementationTestingTestingDeploymentDeploymentConfiguration ManagementConfiguration ManagementEnvironmentEnvironmentAdditional GroupsAdditional Groups定义项目的组织结构(Const.)o根据项目情况在小组中分配角色,同时确定角色的对应人员。例如,项目需求组包括的角色:需求复审员Bruce, Robbie Williams 系统分析员Eric Clapton, Bee Gees 用例阐述者Bee Gees, Johnson, B.B. King 用户界面设计员Will SmithRequirementsRequirementsRequirements ReviewerRequirements Reviewer(Bruce, Robbie Williams)(Bruce, Robbie Williams)System AnalystSystem Analyst(Eric Clapton, Bee Gees)(Eric Clapton, Bee Gees)Use Case SpecifierUse Case Specifier(Bee Gees, Johnson, B.B. King)(Bee Gees, Johnson, B.B. King)UI DesignerUI Designer(Will Smith)(Will Smith)定义项目的组织结构(Const.)o项目沟通计划项目组内部的沟通项目组与外部的沟通制作子计划o预算控制计划说明以何种方法监控项目预算开支,以及如何在需要时采取纠正措施 o进度控制计划说明以何种方法按照设定的时间表监控项目进展,以及如何在需要时采取纠正措施o项目报告计划说明将生成的内部和外部报告,以及报告发布的频率和范围 制作子计划(Const.)o资源获取计划说明您将如何发现并招募项目所需的人员o培训计划列出项目团队成员所需的所有特殊培训,以及完成这些培训的预定日期 制作子计划(Const.)o风险管理计划(风险列表)o问题解决计划 制作子计划(Const.)o文档编写计划说明项目文档的编写方式、时间进度安排、资源的分配o评审计划o产品验收计划制作子计划(Const.)o配置管理计划配置经理负责完成o需求管理计划系统分析员负责完成o每个迭代的迭代计划项目经理负责完成制作项目专题计划oSQA计划独立于项目组的SQA组负责制定o测试计划项目测试组o其它专题计划用户培训计划维护计划制作项目计划文档o遵照组织定义的软件开发计划模版格式对项目计划的建议对项目计划的建议对项目计划的建议-1o认识到信心来自规划过程,而不是计划本身认识到信心来自规划过程,而不是计划本身创建项目计划会迫使您早在编写一行代码之前就考虑如何构建您的系统减少项目的风险,因为您已经考虑了各种策略和方法并且已经选择了最有意义的一项。您的目的不应该只是不花气力产生一个计划;它应该是一个实际可行的计划,您可以根据它来成功管理您的项目。对项目计划的建议-2o软件过程推动计划的开发软件过程推动计划的开发每个软件过程都有一个不同的集合,它包括组织团队的活动方法以及规划项目常用的技术。由于这个原因,基于 Rational Unified Process (RUP) 的项目规划不同于 OOSP 项目的规划, 而 OOSP 项目的规划也不同于 eXtreme Programming (XP) 项目的规划。 不同的过程有不同的计划。对项目计划的建议-3o从粗粒度的计划开始从粗粒度的计划开始在项目将要开始时,应该制定一个粗粒度的、确定项目高级活动和预期里程碑的计划。粗粒度的计划将组织成迭代根据项目的大小和性质,每次迭代通常在三周到八周之间发生(四周到六周为更佳)。其中一些迭代将集中在项目初期,而很多迭代将集中在整个应用的功能部分开发,还有一些迭代集中在将您的系统转变成产品。对项目计划的建议-4o实施者应该是计划人员实施者应该是计划人员创建项目计划的最佳人员是负责实施该计划的人员。当规划由一个人创建而由另一个人实施时,如果项目不能按时完成或超出预算,他们不太会相信计划,而很有可能会责备它。也就是说,参与项目的每个人都应该投入到项目计划的开发和进展中。对项目计划的建议-5o不要忘记不要忘记“不该忘记的事不该忘记的事”计划不仅要反映需求设计、建模、编程和测试的“真实”工作,而且还应该反映辅助活动(然而仍是重要的),它包括:休假和法定假日 培训和教育 项目管理活动,如规划和人员管理 开销,如系统当机时间、会议和回复电子邮件 体系结构定义 测试之后的系统返工 系统交付 与重用相关的活动,如普遍化 对项目计划的建议-6o将任何设想和约束编入文档将任何设想和约束编入文档规划时您总要作一些假设,如能够及时获得应用程序服务器的新发行版,或可以得到熟悉您正在应用的技术和技巧的开发人员。同时,您将在一些约束下工作,如影响计划的强制截止期限或资源限制。将这些假设和约束编入文档,这样,当您实施项目的任何时候更新计划时,都可以记起您先前做出的一些“不寻常”决定。对项目计划的建议-7o认识到不同的资源意味着不同的计划认识到不同的资源意味着不同的计划十名有经验的开发人员组成的团队创造出的成效要远远多于十名初学者组成的团队所创造的成效。要想更加实际的话,您的计划必须反映项目可使用的资源的真实情况。对项目计划的建议-8o创建现实的计划创建现实的计划项目组必须相信其项目的目的、估价和时间表。要做到这点,您必须真实地规划,避免规划超出您能理解的范围。仅当您打算研究未知事项时,才能容忍无知。对项目计划的建议-9o只规划有价值的事只规划有价值的事更多的参考资料提供了许多可应用于您项目的最佳实践。然而,根据项目的性质,不是所有这些技术都将适合于您的独特情况。要将这些最佳实践简单地看作是您放置在“项目管理工具箱”中的工具,您可以根据需要适当使用这些工具。 对项目计划的建议-10o适当使用项目管理工具。适当使用项目管理工具。一些项目管理工具,如 Microsoft Project,提供了重要功能, 如 Gantt 图表(活动时间表)的开发、规划与实际结果的比较、PERT 图表(网络图表)的开发、任务的定义、任务之间相关性的定义、对任务的资源分配和资源平衡。所有这些事情似乎象是一个好主意,并且它们通常是好主意但它们还需要许多精力来创建和维护,而且很少为项目组提供实际价值。的确,它让一些项目管理人员感到富有成效。的确,高级管理喜欢看见您有一个计划。但是,没有一行代码是由所有这个活动产生的。规划是有价值的活动;但投入大量的时间来创建规划图表通常不是有价值的活动。参考资料参考资料oSEI CMMoRUPo托普集团项目开发与管理规范Question?o请填写反馈表THANKYOU
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号