软件开发方案管理五项原则(1)
公司软件开发管理制度

公司软件开发管理制度第一章总则第一条为加强公司软件开发管理,提高软件开发质量,保障软件开发项目的顺利进行,制定本《公司软件开发管理制度》(以下简称“本制度”)。
第二条本制度适用于公司所有部门和项目组织的软件开发活动。
第三条公司软件开发管理应坚持“质量第一、用户至上、精益求精”的原则,实行科学的管理,不断提高软件开发水平,确保软件开发活动顺利进行。
第四条公司软件开发应遵循国家相关法律、法规及公司规章制度,确保软件开发活动合法、规范。
第五条公司软件开发应注重保护知识产权,严禁侵犯他人知识产权,严格遵守相关法律法规和公司要求。
第二章组织架构第六条公司设立软件开发部门,负责公司软件开发项目的策划、实施和管理。
第七条软件开发部门设立项目管理组、需求分析组、设计开发组等具体职能组织。
第八条软件开发部门负责确定软件开发项目的组织架构以及人员配备、项目分工等具体事项。
第九条软件开发部门负责制定软件开发管理流程和规范,确保软件开发活动的有序进行。
第十条软件开发部门负责软件开发人员的培训和考核,并不断提高软件开发人员的专业水平。
第三章项目管理第十一条软件开发项目需由项目管理组统一管理,并建立完整的项目管理体系。
第十二条项目管理组应对软件开发项目的进度、质量、成本等关键指标进行严格把控,确保项目按时完成、质量过硬。
第十三条项目管理组负责软件需求分析、架构设计、代码编写、测试等各个阶段的工作安排和组织协调。
第十四条项目管理组应及时汇报软件开发项目的进展情况、问题和风险,提出解决方案,确保项目进展顺利。
第十五条项目管理组应建立健全的变更管理机制,确保软件开发项目的变更有序进行。
第四章软件开发流程第十六条软件开发部门应制定统一的软件开发流程,包括需求分析、设计开发、测试、上线发布等各个阶段的具体工作流程。
第十七条软件开发流程应符合公司实际情况,同时结合行业标准和最佳实践,确保软件开发活动的科学性和规范性。
第十八条软件开发流程应包括具体的工作内容、工作标准、交付成果等要求,明确责任人和时间节点。
软件技术管理制度范文

软件技术管理制度范文软件技术管理制度第一章总则第一条为了规范软件技术的开发和管理,提高软件项目的质量和效率,保障软件项目的顺利进行,根据相关法律法规,制定本制度。
第二条本制度适用于本公司的软件技术开发和管理工作。
第三条软件技术管理制度是指对软件技术开发和管理各项工作进行规范和管理,确保软件项目的有效实施和顺利运行。
第二章软件技术项目管理第四条本公司采用项目管理的方式进行软件技术开发和管理工作。
第五条项目管理的基本原则:(一)目标导向:明确项目的目标和需求,确定开发和管理的方向。
(二)组织协作:建立良好的沟通和协作机制,确保项目各方的有效合作。
(三)计划管理:制定详细的项目计划,包括时间、任务和资源的安排。
(四)进度控制:监控项目的进度,及时发现和解决问题,确保项目按时完成。
(五)质量保障:制定相应的质量标准和控制措施,保证软件项目的质量。
第六条项目团队的组成和职责:(一)项目经理:负责项目管理,指导和协调项目团队的工作。
(二)开发人员:负责软件的开发和测试工作。
(三)测试人员:负责对软件进行测试,以确保软件的质量。
(四)配置管理人员:负责软件配置管理和版本控制。
(五)用户代表:与用户沟通和协调,收集用户需求和反馈。
第七条项目计划和进度的制定:(一)项目启动时,由项目经理制定项目计划,包括时间、任务和资源的安排。
(二)项目计划应包括开发和测试的各个阶段和里程碑。
(三)项目经理应及时调整和更新项目计划,以适应项目的实际情况。
第八条项目进度的监控和控制:(一)项目经理应及时掌握项目的进展情况,对进度进行监控和控制。
(二)发现问题时,项目经理应及时调整项目计划或寻找解决办法。
(三)项目经理应与项目团队和用户代表进行有效的沟通和协调,及时解决问题。
第九条项目质量的保障:(一)制定相应的质量标准和控制措施,确保软件项目的质量。
(二)开发人员和测试人员应通过相应的方法和工具,对软件进行测试。
(三)配置管理人员应对软件的配置进行管理和控制,确保版本的一致性和可追溯性。
软件开发五大原则

软件开发五大原则
软件开发中需要遵循五大原则,分别是单一职责原则(SRP)、开放封闭原则(OCP)、里氏替换原则(LSP)、依赖倒置原则(DIP)和接口隔离原则(ISP)。
单一职责原则(SRP)是指每个模块或类都应该只负责一项功能或任务,这使得代码更易于维护,因为更改一个模块不会影响其他模块的功能。
开放封闭原则(OCP)是指软件的设计应该是开放的以扩展的,但封闭的以修改的。
这意味着新的功能应该能够添加到软件中,而无需修改现有代码。
里氏替换原则(LSP)是指任何父类可以被它的子类替换,而不会影响程序的正确性。
这使得代码更加灵活,并能够更好地支持维护和扩展。
依赖倒置原则(DIP)是指高层次的模块不应该依赖于低层次的模块,而是应该依赖于抽象的接口。
这种设计使得代码更加灵活,并且更容易进行测试和维护。
接口隔离原则(ISP)是指应该将不同的功能分开,避免将不需要的功能强制放在一起。
这使得代码更加清晰,易于维护,并且更好地支持软件的扩展。
软件开发基本原则

软件开发基本原则(一)——策略和因素1 概述时间 -- 成本 -- 质量(或特性)是评价软件项目成败的三个关键指标,这三个指标之间相互影响和制约,形成了所谓的“项目管理三角形”。
要提高质量或增加特性意味着成本和时间的增加,或两者都增加;要在时间不变的前提下缩减开发成本或成本不变的前提下缩减时间则意味着质量的下降或特性的削减。
图 1-1 项目管理三角形上述分析其实只是理论上的“理想平衡”状态。
现实工作中往往出现的情形是:要么时间超过计划,要么成本超过预算,要么质量达不到要求,要么三个指标都达不到预期。
典型例子:由于客户的压力需要尽量缩减开发时间,由于企业间的竞争和盈利压力需要尽量节约成本,因此需要一个人做两个人的工作,一个月做两个月的工作,同时压缩需求分析、设计、测试、评审和项目会议等活动。
可想而知,即使软件的构建阶段能够按时完成,但做出的软件质量是难以保证的。
更糟糕的还在后面:由于质量的低劣,构建阶段结束后对系统进行集成测试时,很多问题就会暴露出来:对某些需求的理解有误差,导致这部分功能要重新分析、设计、编码和测试;架构设计缺乏整体思维导致系统不同模块各自为政,产生大量重复的难以维护的代码;编码太仓促导致一大堆的Bug;沟通不畅顺导致模块接口不兼容……从而项目被带入了修改无限循环地带,即使勉强上线发布,修改还是一直持续,直至最后,没有人再敢接近这套代码,对这个项目谈虎色变。
软件开发项目有其自身规律和原则,只有遵守其原则并付诸相应的实践才可能使项目健康稳定地前进。
本文讲述的是软件开发的基本原则,它是通用的,几乎适用于所有的软件开发项目。
不同项目可以根据自身特点在原则的指导下定义相应的项目开发实践。
2 策略和因素2.1 总体策略要避免混乱低效的开发,就要求每个人能够放弃他们自己的一些坏习惯,通过采取以下四种策略实现快速开发:1、避免典型错误2、打好开发基础3、管理风险,避免灾难发生4、采用面向进度的实践图 2.1-1 快速开发的四跟支柱典型错误:是指一些经常被许多人使用的无效的开发实践,如:不现实的预期,缺乏计划,功能蔓延和银弹综合症等。
软件项目开发和管理规范标准[详]
![软件项目开发和管理规范标准[详]](https://img.taocdn.com/s3/m/f0886db471fe910ef02df812.png)
软件项目开发和管理规范V1软件开发标准化工作流程1 引言1.1编写目的软件项目管理是软件工程和项目管理的交叉学科,软件项目管理的概念涵盖了管理软件产品开发所必须的知识、技术及工具。
根据美国项目管理协会PMI 对项目管理的定义可以将软件项目管理定义为:在软件项目活动中运用一系列知识、技能、工具和技术,以满足软件需求方的整体要求。
软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。
实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展。
软件生存周期包括可行性分析与项目开发计划、需求分析、设计(概要设计和详细设计)、编码、测试、维护等活动,所有这些活动都必须进行管理,在每个阶段都存在着权限角色控制、文档管理、版本控制、管理工具等,软件项目管理贯穿于软件生命的演化过程之中。
1.2适用范围所有软件项目管理。
1.3定义列出本文件中用到的专门术语的定义、外文首字母组词的原词组。
2 软件项目管理过程2.1概述为保证软件项目获得成功,必须对软件开发项目的工作范围、要完成的任务、需要的资源、需要的工作量、进度的安排、可能遇到的风险等做到心中有数。
软件项目的管理工作开始于技术工作开始之前,在软件从概念到实现的过程中持续进行,最后终止于软件开发工作结束。
1.4流程图软件项目管理规范流程图需求阶段测试阶段业务需求调研需 求 文 档收集甲方资料测试计划编写评 项目可行性分析《项目开发计划》审管 测试任务分配理《需求规格说明书》工 具测试环境搭建 (设计阶段VSS ) 建立系统总体结构 开发环境准备《测试用例》设 项目整体风格 demo 设计 项 目 开 发 文 档 计 文 档 评 审《概要设计》 《详细设计》 《数据库设计》任务分配执行测试(单元测试) 测 试 管 理 工 具管 理开发阶段集成测试代码编写 单元测试代系统测试代 码 码 管 评 审整合代码《测试报告》理《开发总结报告》测试评估(通过)维护阶段 系统实际运行环境运 维 评 审《维护报告》注: 带书名号 《》的为项目开发过程中需提交的文档 。
软件开发管理制度

软件开发管理制度第一条为了规范应用软件系统开发过程,明确定义应用软件系统开发过程必须遵守的安全管理规定,保障信息系统符合规定的安全要求,防止系统中重要数据丢失、修改或滥用,确保信息系统安全、持续地运行,特制定本办法。
第二条本办法适用于XXXXXXX局应用系统开发过程,可能包括内部开发或者委托外部单位开发。
第三条应用系统开发总体原则:1)应用系统开发应当从业务需求的角度出发,不能盲目追求系统先进性而忽略了系统的实用性。
2)开发的方法和管理必须规范化、合理化、制度化。
只有采用了规范化合理化、制度化的开发管理方法,才能确保开发的质量和进度。
3)确保系统开发环境与生产环境相隔离,内部测试由开发人员自行搭建环境,模拟测试必须到专用的测试环境进行测试。
4)确保开发进度和开发质量。
5)应用系统开发必须具有一定的前瞻性,符合主流系统的发展方向。
6)开发人员应提高和加强安全意识,确保机密信息和关键技术不会泄漏。
7)充分利用现有的资源。
第四条应用系统开发人员职责分配管理规范:1)在应用系统开发的过程中,应当明确不同人员的身份、扎口、职责。
建议在应用系统开发过程中具体分以下的三种角色:a)项目负责人员:确保在整个系统开发的各个阶段都实施了相关的安全措施,同时在整个系统开发的过程中负责整个项目的开发安全管理。
b)系统开发人员:根据业务需求确保开发的系统能够满足业务上的需求和相应的安全上的需求,同时满足系统质量上和进度上的要求。
c)系统审计人员:应由局信息中心相关人员承担。
并对整个开发的过程进行审核和监督,确保开发的质量和开发的安全。
第五条开发人员授权管理规范:1)开发人员授权由局信息中心领导进行授予。
2)根据该人员在整个开发项目中所负责的开发内容授予其相应的权限和承担的责任。
3)开发人员必须负责其开发内容的保密性,不得私自将开发的相关信息泄漏出去。
4)根据人员权限和责任的大小确认是否需要签署相关的保密协议。
5)在日常工作中记录人员的开发相关的日志信息。
软件开发需遵循的7项原则(五)管理原则
软件开发需遵循的7项原则(五)管理原则
管理原则
有效的和高效的策略和程序必须符合对软件开发的适当指导和对软件开发承担义务的适当控制。
这个原则是对“策略原则”的一个扩展。
策略原则决定了该做什么,合适做。
管理原则形成了软件开发如何执行,由谁来执行。
这种管理控制的属性包括软件开发的假设,软件开发的合理性以及每个关键变量的进度度量基础的参考基线。
它们可以作为过程的度量,比较和进程调节的基础。
好的策略和过程的属性包括清晰的角色和职责,权力委托以及维持质量、时间和成本等的过程,同样包括管理整个软件产品和/或工作范围中的变更。
软件开发原则
软件开发原则
软件开发原则包括:
1. 尽早测试:确保运行正常,跟踪和测试软件在整个开发周期中的各个状态;
2. 迭代开发:通过分治,分解大型复杂系统,快速实现一个可行性原型,确保系统完成并不断改善;
3. KISS(Keep It Simple, Stupid)原则:避免复杂的设计,保持简单的设计和架构;
4. DRY(Do Not Repeat Yourself)原则:使用模块化编程以及其他技术来减少重复代码和信息;
5. YAGNI(You Aren't Gonna Need It)原则:只在需要时编写代码,在软件开发中合理规划每一步;
6. 模块化:将系统划分为独立的、可重复使用的组件,简化各模块之间的耦合;
7. 尽早发布:尽快发布原型或最小可用产品,以收集客户反馈以及优化后续版本;
8. 最小改动原则:尽量在不改变现有代码的情况下编写新的代码;
9. 遵循标准和规范:使用通用的编程语言和框架,遵循当前最佳实践标准和规范。
软件开发5s原则
软件开发5s原则软件开发5s原则是指在软件开发过程中遵循的一系列规范和原则,以确保软件项目的顺利进行和高质量的交付。
下面将以人类的视角为基础,以增强文章的情感表达和可读性,来介绍软件开发5s原则。
第一原则:简化(Simplify)在软件开发过程中,简化是非常重要的一项原则。
简化代码和设计可以提高代码的可读性和可维护性,减少错误和bug的产生。
通过合理的代码结构和命名规范,开发人员可以更容易地理解和修改代码,提高开发效率。
第二原则:标准化(Standardize)标准化是指在软件开发过程中遵循统一的规范和标准。
这包括代码编写规范、代码注释规范、文档规范等。
通过遵循统一的标准,可以提高团队协作的效率,减少沟通成本,便于代码的维护和迭代。
第三原则:规范化(Structure)规范化是指在软件开发过程中,按照一定的结构和层次进行组织和管理代码。
合理的代码结构和模块化设计可以提高代码的可读性和可维护性,减少代码的耦合度,方便代码重用和扩展。
第四原则:系统化(Systematize)系统化是指在软件开发过程中,将软件项目进行整体规划和管理。
通过制定详细的开发计划、需求分析和设计文档,可以确保软件开发过程中各个环节的顺利进行,减少项目延期和变更的风险。
第五原则:自律(Self-discipline)自律是指开发人员在软件开发过程中要保持高度的自律和责任心。
这包括按时完成任务、保持代码的质量和可读性、积极主动地解决问题等。
通过自律,可以提高团队的工作效率和项目的成功率。
总结:软件开发5s原则是软件开发过程中的一系列规范和原则,包括简化、标准化、规范化、系统化和自律。
这些原则可以帮助开发团队提高开发效率和代码质量,确保软件项目的顺利进行和高质量的交付。
遵循这些原则可以提高软件开发过程中的工作效率和项目的成功率,是软件开发人员必须要遵循的基本准则。
软件开发部管理制度范文
软件开发部管理制度范文软件开发部管理制度第一章总则第一条为规范软件开发部的管理工作,提高团队协作效率,制定本管理制度。
第二条本管理制度适用于软件开发部全体成员,包括部门负责人、项目经理、开发工程师等。
第三条软件开发部的管理目标是提供高质量、高效率的软件开发服务,满足公司和客户的需求。
第四条管理原则:公开、公平、公正、公认。
第五条部门负责人应确保全体成员遵守本管理制度,并对部门工作进行有效的组织、协调和指导。
第六条全体成员应该积极配合并执行本管理制度,保证工作的顺利进行。
第七条对违反本管理制度的成员,将依照公司的规定进行处理。
第二章部门组织结构第八条软件开发部的组织结构包括部门负责人、项目经理和开发工程师。
第九条部门负责人负责软件开发部的整体工作,包括部门的组织架构、人员招聘、培训和考核等。
第十条项目经理负责各个项目的具体管理工作,包括项目的规划、进度控制和质量管理等。
第十一条开发工程师负责具体的软件开发工作,按照项目经理的安排完成相应的任务。
第三章工作流程第十二条软件开发部遵循敏捷开发的工作流程,包括需求分析、设计、开发、测试和发布等阶段。
第十三条需求分析阶段,项目经理与客户沟通,确定项目需求,并编写需求文档。
第十四条设计阶段,开发工程师根据需求文档,设计软件架构和模块,并编写设计文档。
第十五条开发阶段,开发工程师按照设计文档,编写代码并进行单元测试。
第十六条测试阶段,开发工程师和测试人员合作进行系统测试、性能测试和用户验收测试。
第十七条发布阶段,项目经理负责软件的部署和发布,并与客户进行验收。
第四章人员管理第十八条部门负责人负责对所属人员进行招聘、培训和考核,确保其技术能力和工作质量。
第十九条招聘人员时,应按照公司的要求和部门的需求进行,择优录取。
第二十条新员工入职后应进行适当的培训,包括岗位培训和技术培训,使其能够熟悉工作并提高能力。
第二十一条定期进行绩效考核,评估人员的工作表现和能力水平,作为晋升和薪酬调整的依据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件开发项目管理五项原则目前,我国软件企业尽管在国际竞争中存在技术、人才等方面的不足,但管理能力,特别是项目管理能力的不足是我国软件企业面临的典型性成长障碍。
对于软件企业来说,大多数附加价值的产生是由项目产生的,没有足够的项目管理能力,企业的新产品研发、承揽海外软件开发业务、扩大软件企业规模等均缺乏基础保证。
我国软件从业人员有50多万人,在6000多家软件企业中有60%是50人以下的小企业,1000人以上的企业仅10余家,软件出口额不到印度的10%。
在印度的优秀软件企业如Wipro、Infosys、Tata中,软件开发项目的按时完成率高达95%以上,可以说是项目管理能力促进了印度软件企业承揽外包业务和规模化的发展。
据统计,目前我国软件企业项目的按时完成率平均为20%左右。
可见,我国软件企业在项目管理能力方面与印度软件企业相比还存在很大差距。
要提高我国软件企业项目管理的能力,需要坚持以下5项原则,即:面向利益相关者的项目策划、基于统计数据的项目计划、基于专业分工的项目资源动态调度、基于可视化工具的项目监控、着眼于提高企业项目管理整体能力的知识管理。
一、面向利益相关者的项目策划软件项目策划的目的主要在于明晰定义项目的价值和项目目标,它是软件项目正式启动的基础是明确项目需求的基础,也是控制项目范围的基础。
据统计,超过50%的软件项目都遭受过不充分的需求管理的问题,平均有25%的软件项目需求会发生变化。
对有缺陷的需求、设计、代码进行返工的花费占整个项目费用的40%—50%。
项目策划的要点包含以下四个方面。
1.识别和定义项目的利益相关者现代项目管理的核心理念是项目必须让其利益相关者满意,要理解和定义项目的价值,进而在此基础上定义项目的目标,必须从识别项目的利益相关者入手。
然而,实践表明,识别清楚软件项目的利益相关者并不是一件容易的事。
有时一个项目进行了很长时间,但项目组未必知道项目的真正客户是谁,最常犯的错误是仅将项目成果的使用者作为客户。
例如,电子政务系统的真正用户是该机关的决策层,而不是具体负责这个电子政务项目的某个部门。
如果需求仅仅来自负责这个项目的某个部门,那么即使这个系统建好了,也极有可能没有真正达到目的。
但是由于各种原因,决策层人员往往没有足够的精力来关心这件事,这时如果项目组不去想方设法解决这个问题的话,那么,这个项目从一开始就埋下了“陷入泥潭”的阴影。
此外,必须识别出具体的项目发起人并充分发挥其作用。
实践过程中易犯的错误是误将一个部门、一个机构作为项目的发起人,这样的结果是决策时有很多人,但真正需要项目发起人提供资源、予以协调时却找不到人。
2.促成利益相关者的参与不仅是在策划活动中,在整个软件项目的生命周期内都必须强调项目利益相关者的参与,必须要与利益相关者一起启动项目。
由于软件项目的成果将改变人们的生活或工作方式。
因此,客户必须在项目策划阶段就了解项目成果对其生活或工作方式的影响,他们必须开发相应的政策、流程等以准备接受项目成果。
目前众多的ERP项目之所以失败,重要的一个原因是人们误认为ERP项目仅是一个信息系统项目,该项目带来的仅仅是一个信息产品。
其实,ERP项目带来的是一新的运营方式,如果企业在没有做相应调整的情况下强行引入ERP,将会使企业运行的混乱速度加快而不是更好。
事实表明,促使软件项目成功的最重要的要素莫过于利益相关者的全过程参与。
3.培育/运用行业专家软件项目的价值是为了实现某些商业目的,它们一般是由行业专家而不是由软件开发人员挖掘出来的。
许多软件企业被投标价格所困扰,其原因有来自市场竞争方面的,更多的则是软件企业没有能够挖掘项目的价值所致。
目前,许多软件企业的弱点在于缺乏行业专家,它们没有意识到行业专家也是专业人员,而只是将软件开发人员作为专业人员对待。
在项目定义活动中,软件开发人员常犯的错误有三点:需求镀金、需求过滤和需求包办。
所谓镀金,是指软件开发人员不顾客户的实际需求,片面强调和夸大技术先进性;所谓需求过滤,是指软件开发人员根据自己的技术偏好对客户的需求进行了主观筛选;所谓需求包办,是指客户将需求分析委托给“专业的”软件开发人员,而他们也乐得如此。
实践证明,缺乏行业专家的项目策划所产生出来的东西一般是能力过剩的、不适用的,甚至是完全不能用的。
如果软件企业没有自己的行业专家,必须善于利用外部的行业专家。
4.不可忽视项目的验收标准对项目目标一致性重视程度不够,是项目启动过程中普遍存在的一个问题。
很多项目管理者低估了达成项目目标一致性的难度,在这方面投入的精力不够,往往简单地认为目标已经达成一致。
很多项目其实是在目标没有定义清楚的情况下匆忙启动的。
因此,软件项目策划的结果必须使利益相关者对项目目标的理解达成一致。
要做到这一点,最有效的办法是设定项目的验收标准。
可以以项目的客户为例说明这一点。
客户的需求包含多个方面,其中既有对项目成果特性的要求,又有客户在感情等方面的需求。
简单说来,客户的需求可以分为三类:第一类是“Musts”,即如果缺少了就不能实现项目基本目的的成果特性;第二类是“Wants”,即客户希望得到的能够丰富项目成果的东西。
第三类是“Nice-to-haves”,即对客户和项目而言多多益善的东西。
从对客户的重要性而言,这三类需求是递减的。
然而,在项目的运行过程中,客户向项目承担方表达的频率却常常是递增的。
这是导致项目管理范围蔓延最终失控而使项目失败的重要原因。
二、基于统计数据的项目计划软件项目计划过程面临的最大挑战就是计划的准确性差。
据统计,在对软件项目进度与成本估算时,开发者的估算比现实要乐观,大约低20%到30%;大多数项目实际完成时间超过估算进度的25%到100%,少数的进度估算精确度达到了10%,能控制在5%之内的项目十分罕见。
要提高软件项目计划的准确性,需要把握以下三点:1.加强基础数据的统计与分析软件项目都是具有独特性的,不能照搬其他项目的经验作为制定本项目计划的依据。
因此,在企业范围内加强对项目基础数据的统计分析以得出规律是十分必要的。
项目管理既是科学又是艺术,由于文化的差异,西方发达国家强调的是管理中的科学性,而我国的绝大多数企业强调的是管理中的艺术性。
由于不重视基础数据的收集和统计,软件项目的计划常常是凭经验或“拍脑袋”而定的,企业并没有足够的统计数据来支持计划的制定。
科学管理尽管是在上个世纪初,对制造业和体力工人提出的,但其中提出的“不能度量就不能控制”的理念依然值得软件企业在管理项目时采纳。
2.以面向学习和改善系统的评价原则促进数据统计评价方式将决定人们的行为,要想改变人们的习惯,仅靠讲道理是难以见效的,还必须辅之以相应的评价体系。
软件企业在项目管理评价进程的一个误区是将评价的重点放在人的方面,而忽视了很多项目问题在于管理系统本身这个事实。
据统计,人员的敬业精神和能力不够只占项目失败原因的10%左右,在大约90%的原因来自于项目管理系统的架构与流程等方面。
3.谨防里程碑陷阱众所周知,里程碑是项目计划与控制中的一个极为重要的概念,也正因为如此,人们也易于过于依赖里程碑,反而使项目计划落空。
里程碑陷阱表现在以下几个方面:首先,人们在软件项目的里程碑被设定以后,认为“目标管理是只问结果,不计过程”,从而忽视对过程的监控而导致项目里程碑不能按期达到。
大多数软件企业的从业人员属于知识工作者,他们对授权的要求较强烈,这方面的误区更易发生。
第二,对里程碑控制不严。
因为大部分里程碑毕竟只是一些项目的中间结果,在项目过程中人们易于放松对里程碑变更的控制,易于出现里程碑大多按期完成而项目却难以按期完成的现象。
项目活动彼此是有关联的,一个里程碑的延迟会导致连锁反应,甚至可能导致项目工期的失控。
第三,里程碑的设置仅仅由项目组根据项目本身的特点而定,忽视了与利益相关者的沟通并得到他们的承诺。
三、基于专业分工的项目资源动态调度在软件项目失败的原因中,项目组织和人员的问题占到40%以上。
因此,对项目资源的有效组织和调度是十分重要的。
对于软件企业来说,最重要的资源莫过于人力资源,要在项目中充分组织和调度人力资源,需要做好以下两点:1. 实现人力资源的“分类分级”管理由于没有对人力资源做到专业分工基础上的动态调度,大量企业的人力成本难以降低,项目组织运行的效果也难以保证。
由于软件行业竞争的加剧,降低项目成本成了当务之急,而降低项目所占用的人力资源成本更是重中之重。
目前,许多软件企业对项目人力资源的使用可以用“5个人干3个人的活,拿5个人的钱”来概括。
要想改变这一点,做到“3个人干5个人的活,拿4个人的钱”这种理想状态,有效的办法是实现人力资源的“分类分级”管理。
中创软件采取的“分类分级”是指将企业员工划分为需求分析员、系统分析员、设计人员、编码人员、测试人员和QA等,并界定其不同的等级,能够做到可以测量出不同类型、不同层次的人员的小时价格。
这种价格是制定项目人力资源预算和成本控制的基础。
目前,很多企业强调“复合型人才”,这容易产生一个误区。
在许多软件企业的项目中,有相当多的人既做设计又做编码还做测试,这不仅使项目的运行效率低、出错率高,也使项目的人力成本提高、人员还不满意。
合理的方式是在专业分工、“分类分级”的基础上,通过有效的项目团队组织机制将各类人员集成起来。
2.实现人力资源的动态调度众所周知,有多种项目的组织方式。
只有既能聚集于项目目标的实现,又能充分、有效调度企业资源的项目组织方式才是合理的。
项目组织是一种临时性的、动态的组织,由于它不应该有冗余人员,因此,资源调度的有效性基于资源调度的动态性,理想的状态是“需要的时候,需要的人能来;不需要的时候,不需要的人能走”。
企业能做到这一点,必须要有两个条件:人员已经“分类分级”,以及企业的各职能部门成为“资源库”。
实践表明,“分类分级”和动态调度将能使软件企业在项目实施过程中提高效率、降低人力资源的结构性成本和提高员工的整体满意度。
四、基于可视化工具的项目监控项目管理的指导思想在于不仅关注项目的成果,还要关注项目的过程。
调查表明,在75%的软件企业处于开发流程的混乱状态,超过50%的软件企业需要改进其配置管理,大约有60%的软件企业遭受着不同程度的质量保障体系的困扰。
对项目过程控制的忽视,将导致项目范围的蔓延等项目风险的增加。
要做好对项目过程的有效监控,需要做好以下两点:1.项目过程的监控要做到可视化项目管理是一种典型的系统管理,也是一种典型的变化管理。
项目过程控制的目标在于对项目成果(包括中间成果)的可预见、项目资源的可调度、项目问题的可追溯、项目组绩效的可评价等几个方面。
在一个软件项目中,有成百上千的相互关联的活动,一个活动在工期、资源和预算等方面的变化将对整个项目产生连锁反应。