项目管理—质量全面管控(1)

发表于:2017-5-19 10:51

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:葛长芝 鲁盈盈 欧仕强    来源:51Testing软件测试网原创

分享:
  1.2  软件项目管理
  从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度和质量顺利完成,而对成本、人员、进度、质量和风险等进行分析和管理的活动。软件开发不同于其他产品的制造,软件开发的整个过程都是设计过程(没有制造过程)。另外,软件开发不需要使用大量的物质资源,主要是人力资源,并且软件开发的产品只是程序代码和技术文件,并没有其他的物质结果。基于上述特点,软件项目管理与其他项目管理相比,有很大的独特性。下面是软件项目管理的几个属性。
  · 一个目标:实现项目干系人对项目的要求和期望。
  · 两个管理:项目干系人管理,项目干系人的需求与期望不断的变化;项目阶段管理,项目产生和存在的环境也在不断变化。
  · 三种约束:时间、成本和范围,任何一个元素的变化都会引起整体的变化。
  · 四个阶段:定义(需要做什么)、计划(什么时候做)、实施(如何做)和收尾(验证是否正确)。
  · 五个过程:启动、计划、执行、监控和收尾。
  · 九大体系:整合、范围、时间、成本、质量、人力、沟通、风险和采购。
  以上属性是从PMP中梳理出来的,它对应的是传统的CMMI管理模型,共分为5个级别、22个KPA(Key Process Area)。PMP管理理论和CMMI管理模型都采用传统瀑布式软件开发模型,如图1-2所示。
  
图1-2  瀑布式软件开发模型
  软件项目开发过程除了传统的瀑布型开发(Waterfall Development)模式,还有敏捷开发(Agile Development)模式。敏捷开发模式只是一个笼统的概念,可以细分出很多子模式。
  · 极限编程(Extreme Programming,简称XP)。XP是由KentBeck在1996年提出的,是一种近螺旋式的开发方法。XP注重的核心是沟通、简明、反馈和勇气,要求纪律性,提倡测试先行。
  · Scrum。Ken Schwaber 和Jeff Sutherland 于1995年OOPSLA大会上首次介绍了Scrum。Scrum是一个包括了一系列实践和预定义角色的过程,是迭代的增量化过程。
  · 透明水晶方法(Crystal)。Crystal是由Alistair Cockburn 和 Jim Highsmith 建立的敏捷方法系列,其目的是发展一种提倡"机动性的"方法。
  · 特征驱动开发(Feature-Driven Development,简称FDD)。FDD由Peter Coad、Jeff de Luca和Eric Lefebvre共同开发,1999年首次在《Java彩色UML建模》书中提出,是一个以客户为中心和以架构为中心的实用软件过程。
  · 自适应软件开发(Adaptive Software Development,简称ASD)。ASD由Jim Highsmith在1999年正式提出。ASD关注于快速创建开发软件系统。
  如图1-3所示是典型的敏捷开发模式的项目开发过程。从需求、计划、开发、测试,直到回顾,整个周期一直在迭代中,而其中的开发、测试、发布又可以单独迭代多次。
  
图1-3  敏捷开发过程
  采用敏捷开发模式容易有一些误区。
  · 误区一:敏捷开发意味着不要文档。敏捷开发同样需要文档,敏捷只是一些实践的结合。
  · 误区二:敏捷只适用于小项目。
  · 误区三:敏捷只会对研发产生改变,管理者不需要亲自了解敏捷,只要管理上支持。
  · 误区四:敏捷只注重快速交付,架构不重要。
  有适合传统瀑布式开发的CMMI管理模型,也有适合敏捷开发的Scrum模型。图1-4很好地解释了瀑布式模型与敏捷式模型的差别。瀑布式模型分为计划、分析、设计、程序开发、测试、修改和整合,一个阶段结束,另一个阶段接着开始。而敏捷式模型着重迭代式开发,分析、设计、开发、测试和发布会不停地迭代直至需求完成、产品上线。
  
图1-4  瀑布式模型与敏捷式模型的区别
  选择项目开发模式时,读者应该明白没有哪个模型是绝对正确的。正如英国的乔治·博克斯(George Box)说过的一句话,"所有的模型都是错的,但有些却是有用的"。选择模型时,一定要选择适合这个项目的,要在实践过程中不停地调整,使其适应整个项目开发,并且保证执行顺利。
  提示:适合公司的、项目的、团队的模型就是最好的模型。
  上面主要讲解了公司的管理规范和开发模式,下面讲解软件工程师关注的管理证书。
  针对个人项目管理证书的管理体系如表1-3所示。
  表1-3  项目管理体系的对比
  (2)七大主题:商业论证、组织、控制、风险、质量、变更、进展。
  (3)七大过程:项目准备、项目启动、项目指导、阶段控制、阶段边界管理、产品交付管理、项目收尾 (1)项目管理知识体系:
  - 项目和项目管理;
  - 项目开发的四个阶段,即概念阶段、规划阶段、实施阶段和收尾阶段;
  - 项目管理方法与工具。
  (2)ICB3.0能力基准 (1)项目及生命周期:项目定义、项目管理定义、项目生命周期定义。
  (2)五大过程组:启动、规划、监控、执行、收尾。
  (3)九大知识领域:整合、范围、成本、进度、质量、人力资源、沟通、风险、采购
  PRINCE2、PMP和IPMP三大国际主流项目管理体系是目前行业内最流行的。IT工程师或者IT项目经理非常热衷考PMP证书有两个原因,第一个原因是PMP宣传得当,第二个原因是PMP证书的推广遥遥领先另外两个证书的推广。PMP理论通俗易懂,而且在项目上比较容易推广,适合中国的IT公司。
本文选自《质量全面管控—从项目管理到容灾测试》第一章,本站经电子工业出版社和作者的授权。
版权声明:51Testing软件测试网获电子工业出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号