您好,欢迎访问三七文档
SoftwareProjectManagement2011现代项目管理刘强清华大学软件学院2概述项目管理的起源与发展美国研制原子弹的曼哈顿计划和阿波罗登月计划1917年,HenryGantt发明了著名的甘特图1958年,美国国防部应用计划评审技术(PERT)1970s,军方开始使用了项目管理软件从1990s开始,几乎每一个行业都在应用项目管理项目管理知识体系的发展以欧洲为首的国际项目管理协会(IPMA)以美国为首的项目管理协会(PMI):PMBOK,PMP3概述项目管理专业发展项目管理专业团体迅速增长,例如PMI项目管理专业硕士与博士学位教育•麻省理工学院,哈佛大学商学院,美国管理技术应用大学•乔治·华盛顿大学,……1996年,美国Fortune杂志将项目管理评为No.1职业选择PaurGrace断言“在当今社会,一切都是项目,一切也将成为项目。”4概述今天的社会是一个项目化的社会人类的活动有½是通过项目形式来开展的许多跨国公司认为企业的成功在于有效推行项目管理•IBM计划将企业的运作管理整个改变为基于项目的管理•Motorola通过CMM5认证,体现在项目管理的能力和成熟度•诸如AT&T、朗讯、诺基亚、惠普等在运营的核心部分采用项目管理模式美国大型金融机构如花旗银行、摩根斯坦利、国家储备银行、国家税务局等大力推行基于信息技术的项目管理现代项目管理正在普及,已经成为一种潮流和趋势5概述6概述WindowsVista系统该系统从2001年开始研发,整个过程历时5年,先后有9000位开发人员投入其中,耗资60亿美元,代码规模超过5000万行。按照微软公司最初的计划,该系统面世时间应该在2003年,之后推迟到2004年下半年再到2005年初,最终在取消一些高级功能后于2006年11月正式发布。由于整个系统过于庞杂,其开发管理相当混乱,以致于很多时间用在互相沟通和重新决定上。从VistaBeta1进入公开测试以来,程序错误总数已经超过2万个,这其中还不包括微软内部未公开的一些错误。7概述解决危机的技术途径1968年提出软件工程概念和思想20世纪70年代的结构化软件开发方法20世纪80年代的面向对象的软件开发方法新的技术:软件重用、快速原型、需求工程典型技术:COM,Java,C++,J2EE,.Net,….支撑工具和环境:Jbuilder,VisualStudio,WebLogic,…技术手段不能完全解决软件危机20世纪90年代,软件危机依然存在,甚至更为严重应用变得越来越大和复杂,技术变得更加力不从心8概述解决危机的管理途径美国DoD的一项研究表明:70%的项目由于管理不善导致难以控制进步、成本和质量进一步的研究发现:管理是影响软件项目成功的全局性因素,而技术只影响局部管理是影响软件项目成败的第一要素学术界和工业界开始研究和探索针对软件企业以及软件开发所需的管理机制和措施提高企业的过程管理和控制能力(ISO9000、CMMI)强化软件项目的管理(需求、质量、风险、成本、版本等)9概述企业成功=科学技术+项目管理“我们的企业要两条腿走路,一个是科学技术,一个是项目管理。”——华罗庚三分技术,七分管理10内容提纲项目项目的定义与特征项目生命周期项目管理项目管理的涵义项目经理的作用项目管理知识体系整合的项目管理系统项目管理环境项目管理成熟度模型11什么是项目?分析:以下事件有什么共同特点?北京举办奥林匹克运动会中国建设三峡水电工程抗震救灾慈善募捐活动联想集团并购IBMPC部门微软公司开发一个新的操作系统产品企业组织新产品推广活动学校组织教职工暑期旅游活动学院学生组织一次聚会活动12什么是项目?项目的定义项目(Project)是为完成某一特定的产品或服务所做的一次性工作,受到时间、预算、资源以及满足客户需要的性能规格的限制。大项目(Program)是协调管理的一组相关项目。项目的特征明确的目标:预先定义的且可度量的商业产品或服务明确的起止:有限的、预先定义的生命跨度一次性工作:通常是以往从未做过的事情有限的资源:资源需求多变临时性组织:通常涉及多个部门和专业13什么是项目?Project一次性有明确的开始及结束日期临时性的组织资源需求多变运用事先制定的计划来指导风险不确定推动变更Operation重复性相对而言无时间限制稳定性的组织资源需求稳定运用标准化的作业指导书来指导风险相对确定维持现状14什么是项目?分析:判断以下事情哪些是项目?为什么?升级某政府部门的办公自动化系统举办一个会议、竞赛、婚礼等答复客户服务电话打字员打印文件企业上市策划选修一门课程购买家用轿车招聘新员工15项目生命周期16项目生命周期概念计划执行收尾不确定性客户兴趣项目投资创造性资源17项目生命周期创意可行性研究项目批准(合同)软件需求开发软件设计软件实现软件测试软件发布或交付软件维护软件升级软件淘汰产品生命周期产品开发项目生命周期升级项目研发项目18软件项目的特殊性软件是人造的逻辑产物,它是通过开发得到的定义“需要做什么”成为软件开发的根本问题软件是不断演化的,其开发过程是非线性的软件开发的主要困难在于难以管理软件开发是高度不确定的难以进行准确的度量和评估通常基于经验和直觉做出许多决策软件开发主要依赖于人工方式团队组织与协作是关键性的因素开发效率是至关重要的19软件项目的特殊性应用服务器支撑软件Tomcat该软件含1019个类,类与类之间有2109个继承或聚合关系。图中将类表示为节点,关系表示为边。20软件项目的特殊性21案例:微软开发过程项目的目标得到认可软件设计完成代码开发完成可发布版本准备就绪最终产品发布22案例:微软开发过程规划阶段开展市场调查研究,结合公司战略形成产品的远景目标。设计阶段根据产品的远景目标,完成软件的功能规格说明和总体设计,并确定产品开发的主要进度。开发阶段整个开发任务划分成若干个递进的阶段,并设置成M1、M2、……、Mn等内部里程碑,在每个里程碑都提交阶段性的工作成果。稳定阶段实行全面的内部和外部测试,最终形成可发布的RTM版本。发布阶段在确认产品质量符合发布标准之后,发布产品及其相关的消息。23案例:微软开发过程M1(1/3功能)开发(设计、编码)可用性实验内部发布测试系统构建程序调试集成代码稳定缓冲时间M2(1/3功能)开发可用性实验内部发布测试系统构建程序调试集成代码稳定缓冲时间M3(1/3功能)开发可用性实验内部发布测试系统构建程序调试集成代码稳定缓冲时间“零缺陷”发布最终产品发布24案例:微软开发过程递进式的开发策略解决问题的及时性不确定和变更因素的可控性缩短产品上市周期缓冲时间在每一个递进阶段,缓冲时间有利于开发人员应对变更、开发难题和时间延迟等问题并行与同步机制小规模团队并行开发、每天的系统构建版本1版本2版本3功能时间······25内容提纲项目项目的定义与特征项目生命周期项目管理项目管理的涵义项目经理的作用项目管理知识体系整合的项目管理系统项目管理环境项目管理成熟度模型26项目管理项目管理是在项目活动中运用各种知识、技能、工具和技术以达到项目的目标和要求。项目管理通过项目经理和项目组织的努力,运用系统理论和方法对项目及其资源进行计划、组织、协调、控制,旨在实现项目特定目标的管理方法体系。项目成功的决定因素:时间、成本、绩效、客户接受成功预算进度绩效客户接受27项目管理管理软件开发过程明确过程活动估算各个的工作量、成本制定计划,跟踪过程,风险控制管理软件产品有哪些产品,呈什么形式(规范文档),如何保证它们的质量,如何控制它们的变化管理软件开发人员如何组建一个好的团队、调动团队成员的积极性和激情、严明团队的纪律、促进人员之间的协调与合作28项目管理的重要性29项目经理项目经理是项目的单一联系点工作的计划和组织管理项目的日常活动(为客户)提供项目的交付件项目=小型企业项目经理面临公司总经理面临的方方面面的问题。无论你处于什么职位,拥有什么职业,项目管理都可以确保你拥有成功的未来。项目经理是通向公司高层管理的另一条途经。30项目经理31项目经理项目经理您的管理层采购项目组财务供应商产品安全性客户合同经理系统设计师项目保证法律事宜3225.协调客户应支付的款项推脱不付问题26.检查核对下包商的里程点的付款条件是否成立27.准备下一阶段的计划安排,修订项目进度计划11.向公司高层汇报客户的抱怨12.考察目前处于关键路径上的下一个关键任务的准备1.主持召开一周项目例会2.检查问题清单中Pending的问题3.与下包商协调工作界面冲突4.与客户项目经理讨论项目范围问题5.协调项目组内部对沟通问题的争执6.协调项目组部门经理对项目组重要人员的调动7.协调公司产品服务部门(硬件、系统软件)的安装8.准备向公司QA部门汇报项目进展情况9.听取项目组技术人员对关键技术问题的解决方案10.考虑项目到目前为止的财务状况13.提醒客户项目经理对上周提交的重要提交件确认签署14.与客户高层沟通下周召开的协调委员会会议议程15.考虑周例会上提出的最近可能发生的风险16.准备向客户提交的阶段项目报告17.向公司销售部门业务代表解释客户的不满18.协调在项目关键时段关键人员休假问题19.向公司采购部门解释项目需要一台紧急设备20.协调两个以上软硬件提供商配合时间问题21.为多厂商合作撰写保密协议22.协调开发系统与客户现有系统时间和资源的冲突23.协调在关键时间点重要设备不能到货问题24.协调客户业务人员对商定的业务需求拒不确认项目经理的一天33项目管理的过程启动过程分析项目的需求、研究项目的可行性、获得客户或主管部门的审批、组建项目团队、任命项目经理。计划过程制定一个可行的项目计划,以便满足项目的目标,包括软件项目的估算、风险分析、进度计划、人员的选择与配备、产品质量规划等。执行过程按照项目计划实施项目,包括执行项目任务、发布项目信息、跟踪项目进展、实施阶段性检查与评审等。34项目管理的过程控制过程根据项目跟踪提供的信息,对比项目计划目标,找出偏差,分析原因,研究和实施纠正。收尾过程进行正式的项目或阶段验收工作,使其有一个有序的完结,包括移交评审、合同收尾、行政收尾、项目后评价等。计划过程启动过程收尾过程监督与控制过程执行过程35项目管理知识体系36项目管理知识体系Scopemanagement(项目范围管理)明确实施项目的业务目的,确定项目目标,分解出项目的主要交付结果,编写项目范围说明书。Timemanagement(项目时间管理)确定项目活动之间的关系和顺序,估计所需的时间,明确项目的里程碑,通过进度控制保证项目在规定时间内完成。Costmanagement(项目成本管理)识别项目所需各种资源,估计这些资源的成本,有效分配预算,并通过成本控制保证项目在预算内完成。37项目管理知识体系Qualitymanagement(项目质量管理)明确项目的质量要求及其测量标准,制定质量方针、质量保证和控制计划,确保项目交付结果满足或超过客户期望。Humanresourcesmanagement(项目人力资源管理)识别项目需要什么样的人力资源、需要多少、何时需要?明确项目团队成员的角色与职责,建设团队与激励成员。Communicationmanagement(项目沟通管理)识别项目利益相关者在项目管理生命周期内需要什么信息、什么时间需要、以什么方式需要、由谁发送?及时向项目利益相关者沟通项目的执行状况38项目管理知识体系Riskmanagement(项目风险管理)分析项目可能的不确定因素,做到规避威胁和利用机会。Procurementmanage
本文标题:软件项目管理1
链接地址:https://www.777doc.com/doc-5500706 .html