- 快捷搜索
- 全站搜索
软件项目开发是一项有秩序、按计划、在制度规范框架要求之下需有条不紊开展的工作。编制项目开发计划,可以在项目启动前仔细考虑技术实现方案,通过加强计划管理,有效使用公司各类资源,减少项目风险,提高项目开发效率和质量,确保项目按期投产上线。
一、计划管理的意义
1.提供了明确的工作目标
在软件项目开发过程中,公司领导和管理者是以计划目标为依据进行指挥和控制,对每一个项目目标的分解和落实;一旦出现问题也是对照计划目标进行检查和调整。
2.可减少项目风险
通过加强计划管理,可以事先对开发的软件项目按照项目管理的制度规范、开发流程对项目进行全面的可行性分析,设计出技术方案,从而避免较大的技术风险。在计划执行的过程中,还可通过经常性的检查和调整,以解决可能出现的问题,保持业务运营的连续性。
3.充分利用公司资源
每一个公司的资源都是有限的,计划管理可以根据公司软件项目开发进度,对各种资源的数量和使用时间等情况进行合理安排,比如合理调度和分配人力、设备、环境等资源给需要使用的项目,从而避免资源冲突和资源闲置,保障软件项目的开发进度。
4.使各团队之间更好地协调配合,体现综合效应
软件项目特别是新产品开发涉及公司多个职能部门、多个开发团队,通过有效的计划管理可充分挖掘及合理利用企业的人力、物力、财力等资源,协调公司内部各部门之间、各技术团队之间更好地协调配合,形成综合效应,从而取得最佳的软件项目开发成果。
二、影响计划执行的常见问题分析
1.“做计划用处不大、执行计划不重要”的偏见
在实际工作中,总有一些人存在错误的工作理念,如感觉花费时间制定计划没有必要,收到业务需求后,可以根据以往经验直接干就行了。但通过总结实际软件项目开发经验,可以发现,没有计划的软件项目,在刚开始执行时可能比较快,但最后这类无计划的项目基本上没有按期完成、客户不满意且质量存在问题等。而具有健全软件项目管理体系,并且事先制定了严密的开发计划,开发过程也按计划进行和处理问题,这类项目都能较好地按期完成。
2.计划制定不细致、不周全、不准确
软件项目计划的项目经理起到很关键的作用,往往因项目经理经验及技能的欠缺,对项目涉及的范围及需求转化为软件产品的功能特点没有很好地透彻分析,从而造成项目开发计划不细致、不周全、不准确;每一个里程碑阶段的时间点及交付物描述得不详细、不准确,从而导致项目开发计划与实际项目开发所需要的资源、时间和质量不吻合,造成项目从一开始就陷入困境。特别是某些需要紧急开发、在某一个时间点完成的项目,开发计划往往达不到要求。
3.没有让项目所有干系人都了解项目计划内容
当软件项目计划制定好以后,直接发给相关项目管理人员及领导就完事;项目经理事先没有召集项目团队成员及需要配合的人员一起对制定的项目开发计划进行认真仔细(每一个环节、实施内容、里程碑)地推敲、讨论和计划评审,大家只是草草的看一遍,从而造成项目所有干系人没有深刻领会计划内容,就开始开发项目,导致后续不能按计划完成工作任务。
4.需求内容变更过于频繁
在软件项目开发过程中,业务人员经常变更需求是让技术人员最头疼的事情,很多软件项目往往因业务需求内容变更过于频繁,造成技术人员经常修改程序甚至返工,从而导致项目延期,不能按计划开发完成。
5.与外包商合作出现问题
在软件项目开发过程中,外包商骨干技术人员流失、因合同问题项目暂停、需求范围达不成一致意见等,都会影响软件项目开发进度和质量,不能按计划进行。
6.问题反映不及时、不准确
项目启动后,通常是项目经理收集项目开发进度信息,按照要求定期把项目进度报告等文档资料上报给项目管理人员及公司领导,但实际工作中,往往会出现项目经理提交的报告中所描述的项目进度及问题与实际状况有所差异,对于出现的问题了解不够深入,不能客观真实地反映问题,从而让各级管理人员不能及时准确地掌握项目当前开发状况。
7.纠正偏离计划措施不到位
在软件项目开发过程中,因项目组开发人员变动、业务需求变更、测试环境准备不到位及各种资源没有充分配合等原因,从而造成软件项目进度、质量和成本偏离了预先制定的工作计划;由于事先对这些可能出现的问题没有很好地识别、分析并提出相应的措施,因此会出现软件项目开发延期、停止,及质量达不到要求等问题。
三、做好计划管理的举措
确保软件项目开发在规定时间、成本和质量范围内完成并顺利投产上线,需要按照软件项目开发计划从事前、事中和事后三个阶段来管理。
1.事前管理
俗话说“磨刀不误砍柴工”,制定好计划是后续做好软件项目开发及管理的前提,事前管理就是依据公司软件项目开发制度规范流程,编制计划和对编制计划的审核、修正。
(1)制定项目开发计划。项目计划是在项目立项之后、项目执行之前,为了实现整个项目的可计划性、可执行性及可控制性而制定的项目管理计划。编制项目开发计划的关键点是科技部门收到总分行业务部门提出的业务需求后,做好项目范围识别,了解项目的规模、难度与时间限制,确定项目的范围,就是确定业务需求的范围,明确业务需求框架、业务处理流程;做好业务需求分析,把业务需求转化为软件需求功能说明书,能够准确计算出需求软件开发功能点有多少,需要花费多少的人力、科技资源、项目立项评审、项目规划。在项目计划撰写过程中,要依据公司各种资源基础性条件,让项目成员都参与计划的制定讨论,清楚项目计划内容。项目组在开发前要提供一份详细的项目开发计划,提供一份合理的进程表,让所有开发人员任务明确、步调一致,最终共同准时地完成项目。软件项目计划制定重在准确,而不是要快速制定出来,关注的是计划执行的实际效果。
(2)项目计划评审。项目计划书编制完成,提交给相关部门审核,审核通过后,整个项目将按照计划内容完成进度及风险控制,实现客户需求按时投产上线。
(3)系统工具助力计划管理。从需求、设计、编码、测试和投产软件项目开发全流程纳入系统工具管理,通过系统固化需求与项目管理流程,通过系统的硬约束提高软件项目计划控制力,提高项目运行的透明度和管理能力。
2.事中管理
计划制定好之后,软件项目开发启动,意味着要按照事先指定的计划执行并交付成果。事中管理就是对计划执行体系工作效率的管理。
(1)项目计划执行跟踪控制。由项目管理团队专人负责该计划跟踪,定期监测与度量项目进展情况,识别偏离计划之处,及时发现问题、反馈问题、了解原因、解决问题,确保实现项目目标。采取定期发布项目进度状况表,详细列出每一个正在开发的项目进度状况、对偏离计划的项目标注并说明原因,提示存在的风险和解决建议。
资源有限的IT部门要管理源源不断的项目,这无疑需要技巧,如何避免项目积压
银行业务连续性管理的总体目标是为了提高银行的风险防范能力,有效地减少非