美国著名软件工程专家勃姆(B.W.Boehm)在总结软件工程准则和信条的基础上,于1983年提出软件工程的7条基本原则,也是软件项目管理应该遵循原则。勃姆认为,这7条原则是确保软件产品质量和开发效率的原理的最小集合,相互独立但结合得相当完备。
1.用分阶段的生命周期计划严格管理。统计表明,不成功的软件项目中约有一半左右源自计划不周。本原则意味着,应该把软件生命周期划分成若干阶段,相应地制定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。勃姆认为,在软件的整个生命周期中应该制定并严格执行6类计划,即项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。不同层次的管理人员必须严格按照计划各尽其职地管理软件开发与维护工作,绝不能受顾客或上级人员的影响而擅自背离预定计划。
2.坚持进行阶段评审。软件的质量保证工作不能等到编码阶段结束之后再加以实施,其理由为:第一,大部分错误始于编码之前;第二,错误的发现与修改时间越晚,需要付出的代价就越高。因此,本原则意味着,在软件开发的每个阶段应该进行严格的评审,以便尽早发现软件开发过程中的错误。
3.实行严格的产品控制。软件开发过程中不应随意改变需求,因为改变一项需求往往需要付出较高的代价;但是软件开发过程中改变需求又在所难免,基于外部环境的变化而出现改变用户需求的情况是一种客观需要,而且迅速应对客户的需求变更是顾客本位的内涵之一。在这种情况下,只能依靠科学的产品控制技术来顺应这种要求。当改变需求时,为了保持软件各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行基准配置管理。所谓基准配置又称基线配置,它们是经过阶段评审后的软件配置成分(各个阶段产生的文档或程序代码)。基准配置管理也称为变更控制:一切有关修改软件的建议,特别是涉及到对基准配置的修改建议,都必须按照严格的规程进行评审,获得批准以后才能实施修改。避免开发人员对软件随意进行修改。
4.采用现代程序设计技术。从提出软件工程的概念开始,人们一直把主要精力用于研究各种新的程序设计技术。从60年代末提出的结构程序设计技术到最近的面向对象技术,人们不断创造先进的程序设计技术。实践表明,采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。
5.结果应能清楚地审查。与其他有形产品不同,软件是看不见摸不着的逻辑产品。软件开发人员的工作进展情况可见性差,难以准确度量,从而使得软件产品的开发过程比一般产品的开发过程更难以评价和管理。为了提高软件开发过程的可见性,更好地进行管理,应该根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,从而使得所得到的结果能够清楚地审查。
6.开发小组的人员应该少而精。该原则意味着,软件开发项目的组成人员的素质应该好,而人数则不宜过多。开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素。素质高的人员的开发效率比素质低的人员的开发效率可能高几倍至几十倍,而且素质高的人员所开发的软件中的错误明显少于素质低的人员所开发的软件。此外,随着开发小组人员数目的增加,因为交流问题而造成的沟通成本也急剧增加。因此,构建和维持少而精的开发团队甚至标杆团队是软件工程的一条基本原理。
7.承认不断改进软件工程实践的必要性。遵循上述6条基本原则,就能够按照当代软件工程基本原理实现软件的工程化生产,但是,仅遵循上述6条原则并不能保证软件开发与维护的过程能赶上时代前进的步伐,能跟上技术的不断进步。因此,勃姆提出应把承认不断改进软件工程实践的必要性作为软件工程的第七条基本原则。按照这条原理,不仅要积极主动地采纳新的软件技术,而且要注意不断总结经验。
威格的成功软件项目管理秘诀
过程影响(Process Impact)公司的首席咨询顾问卡尔。威格(Karl E.Wiegers)在其《成功项目管理秘诀》(Secrets of Successful ProjectManagement)一文中总结了成功项目管理的20条秘诀:
构筑基础
1.定义项目成功标准;
2.识别项目的驱动、约束和自由度;
3.定义产品发布标准;
4.协商承诺。
规划工作
5.制作计划书;
6.将任务分解成较小的里程碑;
7.为共通的大任务开发计划工作表;
8.计划在质量控制活动后实施修改;
9.为过程改进安排时间;
10.管理项目的风险。
估算项目
11.根据工作量而不是日历估算;
12.不要为项目人员安排超过其80%的时间;
13.将培训时间纳入计划中;
14.记录估算以及如何达致估算;
15.利用估算工具;
16.尊重学习曲线;
17.考虑意外事件的缓冲。
追踪进展
18.记录实绩与估算;
19.只有当任务百分之百完成时,才认为该任务结束;
20.公开而诚实地跟踪项目状态。
麦克康奈尔的成功软件项目十大要决
史蒂夫。麦克康奈尔(SteveMcConnell)在《成功软件项目的十大要决》(10 Keys to Successful SoftwareProjects)中阐述了成功软件项目的十大要决:
1.清晰的愿景;
2.稳定的、完整的、书面的需求;
3.详细的用户界面原型;
4.有效的项目管理;
5.精确的估算;
6.两阶段预算;
7.注重质量;
8.听取技术专家的意见;
9.积极的风险管理;
10.记住:软件来源于人
分享到:
相关推荐
工程计量规则课件项目管理版.ppt
IT项目管理管理办法介绍 IT项目管理管理办法是确保IT项目的成功实施和交付的关键步骤。该办法涵盖了项目管理的整个生命周期,从项目准备和计划到项目实施、项目交付和项目关闭。该办法旨在确保项目的质量、进度和...
《项目管理资料合集》是一个综合性的资源包,包含了丰富的项目管理相关材料,旨在帮助学习者和从业者提升项目管理能力。这个压缩包分为三个主要部分:项目管理培训讲义PPT、项目管理制度模板以及项目管理流程,总计...
项目管理师分为项目管理员、助理项目管理师、项目管理师和高级项目管理师四级。所需技能涵盖德行、见识、能力、知识与体质五大方面,包括高尚品德、创新思维、组织管理能力、广博知识与健康体魄。 #### 五、项目...
4. 进度管理计划:在进行项目时间管理的 6 个过程之前,项目管理团队应先进行规划工作,是制定项目管理计划过程的一部分,编制进度管理计划,进度计划的编制方法旨在对进度计划编制过程中所用的规则和方法进行定义。...
项目管理的成功规则包括按时完成、预算内、质量符合预期要求等。项目经理需要具备良好的项目管理技能和业务技能,才能成功地管理项目。 项目管理的挑战包括人事调度与安排、工作量评估、财政预算责与权的分配与平衡...
这份“专题资料(2021-2022年)6项目管理运行规则施工单位建筑工程项目管理制度.doc”文档详尽地阐述了建筑工程项目管理的各项关键制度,覆盖了从技术管理到质量控制,再到进度管理、文件资料管理、施工现场管理、...
项目管理实用工具箱 项目管理是一种系统化、科学化的管理方法,它旨在确保项目目标的实现,提高项目效率和质量。《项目管理工作实用工具箱》是一本实用的项目管理指南,旨在帮助项目经理和项目团队成员更好地实施...
《信息系统项目管理师教程笔记》是对信息技术领域项目管理的深入探讨,主要涵盖了项目的基本属性、管理过程、项目生命周期以及组织结构等多个方面。以下是对这些知识点的详细解析: 1. **项目的基本属性**: - **...
本规范涵盖了项目验收的各个方面,包括项目结束制度、项目开启制度、项目管理规则、问题和变更管理制度、文档管理制度等。 项目结束制度是指在项目结束时,对项目进行完整回顾和总结,确保项目目标的实现和项目的...
本文主要探讨了三种常见的软件项目版本号命名规则:GNU风格、Windows风格和.NET Framework风格,并介绍了与之相关的版本号管理策略。 1. **GNU风格的版本号命名规则**: - 主版本号(Major Version Number):当...
**SpringBoot 项目管理系统** SpringBoot 是一个由 Pivotal 团队开发的框架,它旨在简化 Spring 应用程序的初始搭建以及开发过程。它集成了大量的常用库,允许开发者快速创建生产级别的、独立的 Spring 应用。在本...
IT项目管理实践是管理和执行信息技术相关项目的关键环节,旨在确保项目按时、按预算、符合质量标准地完成。项目管理实践不仅涉及技术技能,还包括领导力、沟通和团队协作。本课程的目标是帮助参与者深入理解项目管理...
为了有效地把控项目质量,可以从以下几个方面入手:制定质量控制规则、把控项目的可交付成果、引入项目管理工具等。项目管理工具可以帮助项目管理者清晰地看到项目进度、项目参与人员,以及项目人员完成任务的进度,...
标准和规则在项目管理中起着重要作用,标准是经过公认机构批准的一致性文件,而规则往往是政府强制执行的要求。两者之间可能存在模糊地带,随着时间推移,广泛采用的标准可能会演变成规则。 大型项目管理则涉及到多...
该规范涵盖了项目管理的各个方面,包括项目运作指南、组织关系图、组织架构图、核心团队人员的职责、与相关部门的运作关系、业务汇报关系、子团队运作模式、项目分类定义、产品开发流程裁剪原则、项目优先级排序的...
项目编码mask OPSJ是项目管理的关键配置,用于定义项目的编码规则。通过设置项目编码mask,可以确保项目的唯一性和可追溯性。 Create project types for WBSE 项目类型是项目管理的基础,包括投资项目、研发项目、...
在IT行业中,项目管理是确保项目成功实施的关键因素。华为公司内部的"项目管理培训华为内部-公司精简版"是针对员工进行的一种专门训练,旨在提升项目管理的专业能力和效率。下面将详细阐述项目管理的核心流程,特别...
每个模块都负责特定的业务逻辑和规则,共同组成了一个集成的项目管理平台。 六、系统维护 金蝶K3V12.1项目管理系统的维护主要包括系统设置、系统备份、系统升级等方面。系统设置负责配置系统的基本参数和规则,...