时间:2023-01-13 22:06:34
引言:易发表网凭借丰富的文秘实践,为您精心挑选了九篇项目管理软件论文范例。如需获取更多原创内容,可随时联系我们的客服老师。

在此次会议上,邦永招募了全国30多个地区的总,宣布于今年11月正式启动市场。虽然邦,全国公务员共同天地永的产品价位仅在540万元之间,定位为中低端市场,但同行还是感到了压力。邦永在加紧营销渠道建设的同时,还酝酿着和很多行业主管部门的技术合作,似乎意在打造国内项目管理软件的行业标准。
今年,中国政府拨了3000亿元专款用于各类政策性项目的建设,各省、市地方政府至少有1000亿元的专款项目,全国每年至少有2000个1亿元以上的大项目。如果这些项目都用软件来进行管理的话,这个市场无疑非常可观。据统计,目前项目管理软件高端市场的容量在1亿元以上,35年内将达到6亿元左右。中、低端用户数量更为可观。
事实上,SAP、ORACLE、PEOPLESOFT等国际上知名的管理软件商在项目管理软件市场上已经先行了一步。他们凭借着产品线长的优势,在向国内客户销售ERP系统的同时,也把项目管理软件带进了中国。同时PRIMAVERA等软件公司也在尝试开拓国内项目管理软件市场。据记者了解,目前还有美国和欧洲的几家大型的项目管理软件公司正在中国调查市场,估计不久将挺进中国。国内管理软件厂商也开始觉醒,纷纷迈开了进军项目管理软件的步伐。上海华普加快了向中关村企业项目管理的进军、北京华炎软件推出HotPM企业项目管理软件……
当人们对ERP不再狂热时,庞大的管理软件市场一下子被催熟了。目前,国内软件巨头用友在与瑞典IFS公司成立了北京用友艾福斯软件系统有限公司后,也开始将其业务迅速扩张到项目管理软件市场。国内其他软件公司如邦永(中国)、北京梦龙、新中大等也紧随其后。美国Primavera、OpenPlan、微软等国际性公司也纷纷杀入这一市场。
“对手非常强大,这说明商机很大!”杨铁铃对记者说,“我们认为目前SAP、ORACLE等国外管理软件商的主要精力还是在ERP市场,项目管理只是其产品线的一部分。目前国内还没有一家具规模的同类型软件企业,更谈不上标准。”邦永对称霸这个市场充满信心。
阻碍犹存
提起项目管理软件,杨铁铃侃侃而谈:其实很早人们就开始实施项目管理,如金字塔、长城等伟大的工程之所以成功,都得益于当时对工程项目进行严密的管理。20世纪60年代初,在著名数学家华罗庚的倡导下,将项目管理的概念引入了我国,并在当时的国民经济各个部门进行试点应用,将这种方法命名为“统筹法”。2000年底,联想在“天麒”、“天麟”两款计算机产品的开发过程中,结合业务对项目管理的需求,配合项目管理相关理论和方法编制软件方案,使该项目仅8个月便全部完成,并达到了国际上PC生产技术的最高水平。“只是当时的企业全都将目光放在ERP上。”杨铁铃不无惋惜地说。
杨铁铃认为,“项目管理对大家来说,并不是一个新的概念,一直以来大家都在提它,其在各行各业的应用也比较多。但是一直没有落到实处。”杨铁铃所说的没落到实处是指目前阻碍国内项目管理软件发展的两个因素:
一方面,国内的信息化水平还很低,尤其是工程的管理者对信息化认识不足。目前,我国对项目建设的管理仍然缺乏明确的法规,项目管理者对监管存在抵触情绪;而另一方面,国内高端管理软件市场一直是众多管理软件供应商争夺的焦点。当大多数软件生产商为ERP的高额利润所吸引时,在自身还没有完成ERP改造情况下,就匆匆转身投入了ERP软件市场的争夺,使得项目管理软件成了一块被荒废的良田。
杨铁铃为记者举了一个例子,去年国家统计局在对旧有的网络架构进行改造时,花了50多万引进了惠普的项目管理,而这还是基于美国1969年建立的PMI(国际项目管理协会)标准。“在国外,90%以上的项目建设都采用软件进行管理,而在我国则还不到10%。如果以应用项目管理软件可以节省35%的建设资金来算,这将是一笔惊人的数字,”杨铁铃说,“我国目前有2000万家中小型企业,在企业项目建设上他们大多数都需要进行项目管理。”
标准之蛊
在微软技术教育大会上,微软(中国)总经理唐骏针对中国软件业难以做大的困境指出,正是由于国内众多软件商对项目管理不够重视,软件开发没有一个规范,无法控制项目的可操作性,导致成本增加,直接影响了整个软件业做大。其实这不仅是软件业本身存在的问题,众多重大项目投资也存在同样问题。然而中国目前的项目管理大多受制于领导意志,要做到很好的控制项目成本,做到与国际标准接轨,其难度不言而喻。
专攻项目管理的邦永曾对外宣称,邦永的PM2系列软件不仅是国外软件的汉化版,而且融合了国际标准化项目管理精髓与本土国情的项目管理模式。从事过项目管理的人都知道,通常一个人对项目管理的把握有4个层次,第1个层次是“误以为自己了解”;第2个层次是“知道自己不了解”;第3个层次是“知道自己了解”;第4个层次是“自己不知道自己了解”。国家统计局计算中心网络运行管理部主任张富民在谈到项目管理实施的体会时对记者说,他觉得当时自己还处在第3个层次。这就是说,目前的项目管理还是一种投资人在投资内的把握,是用工具化的手段帮助投资者把握项目中的每一个赢利和去掉不良成本。
关键字:软件项目管理需求分析系统设计
1.项目前期以及项目准备
在进行任何一项较大的项目时,首先要进行项目的可行性分析和研究,因为这些项目中的问题并不都有明显的解决办法,这样就很难在预定的时间、费用之内解决这些问题,如果这些问题没有可以行得通的解决办法,贸然开始这些项目,就可能导致项目的失败,造成巨大的损失。
1.1可行性分析
软件项目可行性研究的目的是用最小的代价和时间,确定该项目是否能够开发值得开发,其实质是要进行一次简化的、抽象的需求分析和设计过程,主要应从以下几个方面进行分析。
1.1.1技术可行性
对要开发项目的功能,性能和限制条件进行分析,确定在现有的资源条件下技术风险有多大,项目是否能够实现,现有的资源包括硬件、软件资源,现有的技术人员和技术水平,已经有的工作基础等,判断技术上是否可行,主要需要考虑以下几个问题:
(1)开发的风险即在给定条件下能否实现目标的功能和性能;
(2)资源的有效性;
(3)技术的发展性;
由于需求未经过详细的调研,存在模糊性和可能的变化,开发人员进行技术可行性评估时,存在比较大的风险,一旦出现估计的错误,将可能导致灾难性的后果。
1.1.2经济可行性
进行软件开发项目的成本估算以及了解取得的效益估算,确定该项目是否值得开发,对于大多数项目,衡量经济可行性,应考虑一个“底线”,同时应考虑公司的长期经营策略,潜在市场前景等因素。
1.1.3社会可行性
应考虑项目是否存在任何侵权、责任等问题,考虑在现有的制度、法规下是否行得通,包括合同、责任、法律等多种因素。
1.2需求调研
在项目前期工作中,需求调研是其中最重要的一个环节,今后的许多工作都依赖于需求调研的结果,需求调研的过程是渐进的,在可行性分析阶段,主要关注的是项目规模、范围和重点的功能,在项目进入正是开发流程以后,我们需要更加全面、准确地了解系统的需求不重视需求过程的项目队伍将自食其果,需求工程中的缺陷将给项目成功带来极大风险。如:无足够用户参与导致产品无法被接受;用户需求的增加带来过度的耗费和降低产品的质量;模棱两可的需求说明可能导致时间的浪费和返工;用户增加一些不必要的特性和开发人员画蛇添足;过分简略的需求说明以致遗漏某些关键需求;忽略某类用户的需求将导致众多客户的不满;不完善的需求说明使得项目计划和跟踪无法准确进行。
1.3项目团队的组织
建立项目团队是项目开发过程的开始,一切工作都是由项目团队的成员完成的在整个项目的运行过程中,需要很多不同的角色参与到项目中,完成不同阶段的任务。所以在建立项目团队的过程中要把握好人员角色的划分、特别人员管理与激励、监督等。整个人员的管理是项目管理的关键,因为人是活的,而项目是死的,只要人员管理妥当,项目开发一般是不会出什么问题的。
1.4项目开发计划
软件项目的特征之一就是需求的不确定性和开发过程中存在的技术风险,按照通常的方法,制定一个项目的计划应该是先根据项目的需求,进行详细的任务分解找出实现的方法,估计出项目的工作量,再根据项目资源的状况,制定出项目的计划。
但是,再现实的工作中,项目的时间表往往是事先确定的,给开发留出的时间也是事先定好的。而我们能够利用的资源,主要是开发的人力资源,也被事先基本确定了,在被确定的这2个前提条件下,我们如何根据项目的需求,合理地安排人力和时间,完成项目的开发,这是现实中项目经理经常遇到的问题如果事先确定的时间表是相对比较合理的,至少应该是我们够的到的。我们制定的开发计划才是有意义的,否则,按照这个时间表制定出来的计划只能失败的在这种情况下,项目经理唯一可以做的是对用户的需求进行剪裁,去掉某些耗时长而且不太重要的功能,或是在开发中适当降低质量要求,或许可以完成项目的进度。当然这必须最终要得到用户的认可。778论文在线
2.项目开发过程管理
2.1详细设计
在详细设计阶段,由于任务已经详细地分解,总体地解决方案和技术框架已经确立,详细设计地目的就主要是针对某个特定地模块或对象,根据需求,技术框架地要求和模块间接口,描述出我们实现功能的方法,主要内容包括:
(1)内部算法描述;
(2)内部数据组织;
(3)相关接口详细设计;
2.2设计评审
在设计完成后,必须安排设计评审以保证设计的质量,通常设计评审以小组内部的评审会的方式进行,参与人有项目小组内部的人员及其负责人,由开发者介绍其设计思路,其他人了解并对其设计质量进行评审。评审的内容主要包括:
(1)关键算法的可行性;
(2)接口是否符合概要设计的要求;
(3)技术清晰度是否符合设计标准;
(4)文档的完备性;
评审通过的设计,才能够开始编码工作,评审的结果应记录到开发文档当中。
2.3编码
在编码阶段,主要需要在编码工作结束后,进行代码审核,这项工作非常重要主要应该由项目小组的技术负责人完成,审核的目的并不是为了检验代码的正确性而是需要对编码是否按照规范进行审核。主要内容包括:
(1)变量、包、方法等的命名是否符合规则;
(2)注释是否填写完整,是否符合规范;
(3)代码的可读性,编写风格是否符合规范;
(4)是否有明显的造成系统运行低效率的处理方法;
(5)公共变量的定义和使用;
2.4调试
编码工作完成以后,通常需要开发人员自己进行单元测试,有些部分需要编写相应的测试程序。应该避免发生这类的情况,有些开发人员任务自己不应该进行测试工作,在编写完代码以后,只要编译成功,就直接提交成果,将测试工作完全交给测试人员去做,这样做不仅仅给测试人员增加了许多的工作量,同时增加了许多因为交流产生的时间,造成进度的延迟,管理人员应该杜绝程序员的这样的思想,同时在管理中予以考虑,可以将提交成果产生的bug数量作为考核程序员业绩的标准之一。
3.项目后期管理
3.1项目的验收
项目验收,是整个项目生命周期中最后一个环节。一般来说,软件项目的验收一般来说有2个阶段,第一个阶段是验收测试,当验收测试成功结束后,一般会有一个阶段的试运行阶段,只有当2个阶段全部结束后,整个项目才算真正结束,可以收回全部的工程款,该软件也进入其运行维护期。验收测试应按照软件的需求,质量要求进行测试验收,需要甲乙双方共同建立验收小组,或请第三方测试机构进行验收测试,在验收测试之前,开发方应提供一系列的开发设计文档供验收测试使用。
3.2软件维护
编程大师曾说“哪怕程序只有三行长,总有一天你也不得不对它维护。”,很
多软件产品不是一次性的买卖,比如在电信、金融等领域,有些软件系统要用十几年,对软件进行维护是必不可少的,软件公司的经理们没有哪一个喜欢被维护的费用吓一跳,但软件维护的代价通常是高昂的。对软件而言“维护”是个不太直观的术语,因为软件产品在重复使用时不会被磨损,并不需要进行像对车辆或电器那样的维护,软件维护是人们对既丰富多彩又会令人心酸的活动的统称,其中丰富多彩的活动是指那些反映客观世界变化,能使软件系统更加完善的修改和扩充工作,令人心酸的活动是指那些永无休止,并且改了旧错却引起新错让人欲哭无泪的工作。
参考文献:
1.邱菀华沈建明杨爱华等编著现代项目管理导论机械工业出版社
2002年10月
2.美理查德怀特黑德著领导软件开发团队电子工业出版社2002年5月
3.尼尔怀特著管理软件开发项目-通向成功的最佳实践电子工
业出版社2002年4月
4.刘积仁康晓东饶友玲主编软件开发项目管理人民邮电出版社
2002年2月
5.美JosephRaynus著CMM软件过程改进指南电子工业出版社
1.1人员的组织与管理
一项工程的具体工作涉及到人员的管理,工作任务的分配,责任内容的明确,因此人员的组织及管理是工程项目的关键因素,要把注意力集中在项目组人员的构成、优化。
1.2软件质量管理
软件质量管理在工程项目实施过程中决定着质量方针与责任的范畴,包括质量计划设计制定,项目质量检测保证和项目质量控制等程序。通过保证手段在质量过程中有效进行。
1.3软件配置管理
英文简称SCM,是在开发者中,标识,控制和管理软件变更的一种管理。配置管理的使用取决于项目规模和复杂性以及风险水平。软件配置管理针对开发过程中人员、工具的配置、使用提出管理策略。记录软件项目产品的更新过程,从而保证研发者在软件项目周期的各个阶段能够获得准确的产品配置。对项目开展过程软件开发进行有效调控和有效预测具有重要作用。
1.4编写软件项目计划书
它是软件项目管理组的首要任务,主要包括工作量、成本、开发时间的估计。并根据估计值制定和调整项目组的工作,详细记录了开发日程安排,资源供需,项目管理等各项情况。使从事该项目的人员了解该项目的大致情况。
1.5软件风险管理
软件工程风险管理是预测工作中可能出现的各种危害到软件产品质量的潜在因素的问题,对风险产生的后果进行分析评估。计算机软件风险预测的准确性评估与有效防范措施的应用都利于提高软件工程的效益,降低风险带来的经济损失,有效保证相关利益业主的权益。这几个方面都是相互贯穿、交织于整个软件开发过程中的。
2软件工程项目管理中存在的现实问题及解决方案
2.1人员工作安排不明确,应建立团队合作意识
在工程项目开发过程中是需要每个岗位人员的相互协调及无障碍交流,没有团队协作意识是无法有效的利用时间和资源开展各项工作。因此我们要提高一个工程项目的工作效率,就要合理安排人员的工作分配,强化每个工作人员的团队协作意识,有效避免管理团队中存在的分工不明确,不合作的问题。只有相互协作和相互信任的情况下才能高效的完成一件优质的软件工程项目。建立一套完善的人事考核制度,加强对员工的职位升降,工资奖金分配管理,有利于提高员工开发软件工作的积极性。
2.2缺乏实践性调研报告,应纳入到软件项目计划书
软件开发工程不仅要创新变革,也要考虑到它的实用性,以往出现的多个工程项目没有对实际项目建设中的需求实体和实际进行要求,以及实际项目建设的数据进行合理有效的调研,导致出现设计完整的软件产品运用与实际偏差较大,造成不必要的人员和资源浪费。因此要在软件设计前给予项目调研工作高度重视,对实际软件项目的需求及要求严格调查,应将软件项目调研报告附于项目计划书中,引起重视。
2.3风险管理意识不够,应该强化提高人员对风险管理的认知
风险的发生很可能会造成不可估量的损失,但是风险的发生是具有可控性的,如果能有效控制就会避免发生风险事故。可往往在计算机软件工程项目管理中的工作人员却很少知道风险管理的重要性,于是在软件开发中应提高项目主要负责人的风险管理理念,提高自身对风险管理预测能力的水平。只有了解了风险管理理论与风险管理体系,定期对项目实施中可能发生的风险进行有效排除,把控好风险管理前后的形势。
2.4杜绝搞工作进度,应要完善管理体系,对工作进度严格把控
一般来说,软件工程师总是非常乐观。当他们在计划软件项目时,经常认为每件事情都会像计划那样运行,或者,又会走向另外一个极端。软件开发的创造性本质意味着我们不能完全预测会发生的事情,因此制定一个详细计划的关键点很难确定。当有预想不到的事情引起项目脱离正常轨道时,以上两种观点都会导致软件项目的失败。
目前,风险管理被认为是IT软件项目中减少失败的一种重要手段。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理。这就提高了项目成功的机会和减少了不可避免风险所产生的后果。
2什么是风险
所谓“风险”,归纳起来主要有两种意见,主观说认为,风险是损失的不确定性;客观学认为,风险是给定情况下一定时期可能发生的各种结果间的差异。它的两个基本特征是不确定性和损失。IT行业中的软件项目开发是一项可能损失的活动,不管开发过程如何进行都有可能超出预算或时间延迟。项目开发的方式很少能保证开发工作一定成功,都要冒一定的风险,也就需要进行项目风险分析。在进行项目风险分析时,重要的是要量化不确定的程度和每个风险相当的损失程度,为实现这一点就必须要考虑以下问题:
要考虑未来,什么样的风险会导致软件项目失败?
要考虑变化,在用户需求、开发技术、目标、机制及其它与项目有关的因素的改变将会对按时交付和系统成功产生什么影响?
必须解决选择问题,应采用什么方法和工具,应配备多少人力,在质量上强调到什么程度才满足要求?
要考虑风险类型,是属于项目风险、技术风险、商业风险、管理风险还是预算风险等?
这些潜在的问题可能会对软件项目的计划、成本、技术、产品的质量及团队的士气都有负面的影响。风险管理就是在这些潜在的问题对项目造成破坏之前识别、处理和排除。
3风险管理
项目风险管理实际上就是贯穿在项目开发过程中的一系列管理步骤,其中包括风险识别、风险估计、风险管理策略、风险解决和风险监控。它能让风险管理者主动“攻击”风险,进行有效的风险管理。
在项目管理中,建立风险管理策略和在项目的生命周期中不断控制风险是非常重要的,风险管理包括四个相关阶段:
风险识别识别风险的方法常用的有风险识别问询法(座谈法、专家法)、财务报表法、流程图法、现场观察法、相关部门配合法和环境分析法等。
风险评估对已识别的风险要进行估计和评价,风险估计的主要任务是确定风险发生的概率与后果,风险评价则是确定该风险的经济意义及处理的费/效分析,常用的方法有:概率分布、外推法、多目标分析法等。
风险处理一般而言,风险处理有三种方法,①风险控制法,即主动采取措施避免风险,消灭风险,中和风险或采用紧急方案降低风险。②风险自留,当风险量不大时可以余留风险。③风险转移。
风险监控包括对风险发生的监督和对风险管理的监督,前者是对已识别的风险源进行监视和控制,后者是在项目实施过程中监督人们认真执行风险管理的组织和技术措施。
在IT软件项目管理中,应该任命一名风险管理者,该管理者的主要职责是在制订与评估规划时,从风险管理的角度对项目规划或计划进行审核并发表意见,不断寻找可能出现的任何意外情况,试着指出各个风险的管理策略及常用的管理方法,以随时处理出现的风险,风险管理者最好是由项目主管以外的人担任。
险识别
风险识别就是企图采用系统化的方法,识别某特定项目已知的和可预测的风险。常用方法是建立“风险条目检查表”,利用一组提问来帮助项目风险管理者了解在项目和技术方面有些风险。在“风险条目检查表”中,列出了所有可能的与每一个风险因素有关的提问,使得风险管理者集中来识别常见的、已知的和可预测的风险,如产品规模风险、依赖性风险、需求风险、管理风险及技术风险等。“风险条目检查表”可以以不同的方式组织,通过判定分析或假设分析,给出这些提问确定的回答,就可以帮助管理或计划人员估算风险的影响。软件项目一般有如下五类风险:
4.1产品规模风险
有经验的项目经理都知道:项目的风险是直接与产品的规模成正比的。与软件规模相关的常见风险因素有:
估算产品的规模的方法(LOC或代码行,FP或功能点,程序或文件的数目)。
产品规模估算的信任度
产品规模与以前产品规模平均值的偏差
产品的用户数
复用的软件有多少
产品的需求改变多少
4.2需求风险
很多项目在确定需求时都面临着一些不确定性和混乱。当在项目早期容忍了这些不确定性,并且在项目进展过程当中得不到解决,这些问题就会对项目的成功造成很大威胁。如果不控制与需求相关的风险因素,那么就很有可能产生错误的产品或者拙劣地建造正确的产品。每一种情况都会导致使人不愉快。
与客户相关的风险因素有:
对产品缺少清晰的认识
对产品需求缺少认同
在做需求中客户参与不够
没有优先需求
由于不确定的需要导致新的市场
不断变化需求
缺少有效的需求变化管理过程
对需求的变化缺少相关分析
4.3相关性风险
许多风险都是因为项目的外部环境或因素的相关性产生的。经常我们不能很好地控制外部的相关性,因此缓解策略应该包括可能性计划,以便从第二资源或协同工作资源中取得必要的组成部分,并且觉察潜在的问题。与外部环境相关的因素有:
客户供应条目或信息
内部或外部转包商的关系
交互成员或交互团体依赖性
经验丰富人员的可得性
项目的复用性
4.4管理风险
尽管管理问题制约了很多项目的成功,但是不要因为风险管理计划中没有包括所有管理活动而感到惊奇。在大部分项目里,项目经理经常是写项目风险管理计划的人,并且大部分人都不希望在公共场合暴露自己的弱点。然而,像这些问题可能会使项目的成功变得更加困难。如果不正视这些棘手的问题,它们就很有可能在项目进行的某个阶段影响项目。当我们定义了项目追踪过程并且明晰项目角色和责任,就能处理这些风险因素:
计划和任务定义不够充分
实际项目状态
项目所有者和决策者分不清
不切实际的承诺
员工之间的冲突
4.5技术风险
软件技术的飞速发展和经历丰富员工的缺乏,意味着项目团队可能会因为技巧的原因影响项目的成功。在早期,识别风险从而采取合适的预防措施是解决风险领域问题的关键,比如:培训、雇佣顾问以及为项目团队招聘合适的人才等。主要有下面这些风险因素:
缺乏培训
对方法、工具和技术理解的不够
应用领域的经验不够
新的技术和开发方法
不能正确工作的方法
5风险估计
风险估计,又称风险预测,常采用两种方法估价每种风险。一种是估计风险发生的可能性或概率,另一种是估计如果风险发生时所产生的后果。一般来讲,风险管理者要与项目计划人员、技术人员及其他管理人员一起执行四种风险活动:
(1)建立一个标准(尺度),以反映风险发生的可能性。
(2)描述风险的后果。
(3)估计风险对项目和产品的影响。
(4)确定风险的精确度,以免产生误解。
另外,要对每个风险的表现、范围、时间做出尽量准确的判断。对不同类型的风险采取不同的分析办法。
1.确定型风险估计
(a)盈亏平衡分析
盈亏平衡分析(Break-EvenAnalysis)通常又称为量本利分析或损益平衡分析。它是根据软件项目在正常生产年份的产品产量或销售量、成本费用、产品销售单价和销售税金等数据,计算和分析产量、成本和盈利这三者之间的关系,从中找出它们的规律,并确定项目成本和收益相等时的盈亏平衡点的一种分析方法。在盈亏平衡点上,软件项目既无盈利,也无亏损。通过盈亏平衡分析可以看出软件项目对市场需求变化的适应能力。
(b)敏感性分析
敏感性分析(SensitivityAnalysis)的目的,是考察与软件项目有关的一个或多个主要因素发生变化时对该项目投资价值指标的影响程度。通过敏感性分析,使我们可以了解和掌握在软件项目经济分析中由于某些参数估算的错误或是使用的数据不太可靠而可能造成的对投资价值指标的影响程度,有助于我们确定在项目投资决策过程中需要重点调查研究和分析测算的因素。
(c)概率分析
它是运用概率论及数理统计方法,来预测和研究各种不确定因素对软件项目投资价值指标影响的一种定量分析。通过概率分析可以对项目的风险情况做出比较准确的判断。主要包括解析法和模拟法(蒙特卡罗MonteCarlo技术)两种。
2.不确定型风险估计
主要有小中取大原则、大中取小原则、遗憾原则、最大数学期望原则、最大可能原则。
3.随机型风险估计
主要有最大可能原则、最大数学期望原则、最大效用数学期望原则、贝叶斯后验概率法等。
5.1建立风险清单
风险清单是关键的风险预测管理工具,清单上列出了在任何时候碰到的风险名称、类别、概率及该风险所产生的影响。其中整体影响值可对四个风险因素(性能、支持、成本及进度)的影响类别求平均值(有时也采用加权平均值)。
一旦完成了风险表的内容,就可以根据概率及影响来进行综合考虑,风险影响和出现概率从风险管理的角度来看,它们各自起着不同的作用(见图1)。一个具有高影响但低概率的风险因素不应当占用太多的风险管理时间,而具有中到高概率、高影响的风险和具有高概率及低影响的风险,就应该进行风险分析。
5.2风险评估
在风险分析过程中,我们对风险进行评估时可以建立一个如下的四元数组:
[ri,li,xi,yi]
其中,ri是风险,li为风险出现的概率,xi则表示风险损失大小,yi则表示期望风险。
一种对风险评估的常用技术是定义风险的参照水准,对绝大多数软件项目来讲,风险因素——成本、性能、支持和进度就是典型的风险参照系。也就是说对成本超支、性能下降、支持困难、进度延迟都有一个导致项目终止的水平值。如果风险的组合所产生的问题超出了一个或多个参照水平值时,就终止该项目的工作,在项目分析中,风险水平参考值是由一系列的点构成的,每一个单独的点常称为参照点或临界点。如果某风险落在临界点上,可以利用性能分析、成本分析、质量分析等来判断该项目是否继续工作。图2表示了这种情况。
但在实际工作中,参照点很少能构成一条光滑的曲线,大多数情况下,它是一个区域,而且是个易变的区域。因而在做风险评估时,尽量按以下步骤执行:
(1)定义项目的水平参照值
(2)找出每组[ri,li,xi,yi]与每个水平参照值间的关系
(3)估计一组临界点以定义项目的终止区域
(4)估计风险组合将如何影响风险水平参照值
5.3估计损失的大小
表1是风险分析表的一个例子,可以建立一个用风险、损失概率、损失大小和期望风险这样的风险评估表。
在表1所示的风险估价的例子中,一个理论项目已经识别了从1到20周期间的潜在的几个风险,风险发生的概率范围在5%到50%之间。在现实的项目中,可能会识别出比此表要多得多的风险。
损失的大小常常比概率更容易受到控制。在以上的例子中,可以很精确地估计出完全支持自动从主机更新数据的时间是20个月。根据管理层将在何时讨论项目建议书,可以知道项目不是在2月1日就是3月1日会被批准。如果假定会在2月1日批准,项目被批准的风险大小会比期望的长一些,也就是1个月时间。
如果损失的大小不容易直接估计出来,可以将损失分解为更小的部分,再对其进行评估,然后将各部分评估结果累加,形成一个合计评估值。例如,如果使用3种新编程工具,可以单独评估每种工具未达到预期效果的损失,然后再把损失加到一起,这要比总体评估容易多了。
5.4评估损失的概率
评估损失的概率要比评估损失大小更具有主观性。这里有许多实践方法可以提高主观评估的准确度。有以下方法:
由最熟悉系统的人评估每个风险的发生概率,然后保留一份风险评估审核文件。
使用Delphi法或少数服从多数的方法。使用Delphi法,必须要求每个人对每个风险进行独立地评估,然后讨论(口头或纸上)每个评估的合理性,特别是最高和最低的那个。一轮轮讨论,直到达成共识。?使用“形容词标准”。首先让每个人用表示可能性的形容词短语选择风险的级别,如非常可能、很可能、可能、或许、不太可能、不可能、和根本不可能。然后把可能性的评估转换为数量化的评估(Boehm1989)。
5.5整个项目超限和缓冲
实际上,表1中表示的期望风险的计算数值来源于一个被称为“期望值”的统计术语。设计欠佳引起的风险如果真正发生将花费15周的时间。既然它不是100%地会发生,当然不能预计损失15周时间。但它也不是没有可能发生,所以也不应指望不会发生损失。统计学认为,预计损失的数量是概率乘以损失大小,即15%乘以15周。因此,在这个例子中,预计的是损失2.25周。由于只是谈论计划风险,可以累加所有的风险暴露量来得到项目的全部可预料超标值。这个项目可预料的超标值是12.8到13.2周,这就是如果不做任何风险管理的话有可能超过计划的周数。
超出预期值的大小为整个项目风险控制级别的确定提供了依据。如果例子中的项目是个25周的项目,超出预期值的12.8到13.2周就很明显需要进行风险管理了。
6风险管理策略
风险管理策略就是辅助项目组建立处理项目风险的策略。项目开发是一个高风险的活动,如果项目采取积极的风险管理策略,就可以避免或降低许多风险,反之,就有可能使项目处于瘫痪状态。一般来讲,一个较好的风险管理策略应满足以下要求:
(1)在项目开发中规划风险管理,尽量避免风险
(2)指定风险管理者,监控风险因素
(3)建立风险清单及风险管理计划
(4)建立风险反馈渠道
7风险驾驭和监控
风险的驾驭与监控主要靠管理者的经验来实施,它是利用项目管理方法及其它某些技术,如原型法、软件心理学、可靠性等来设法避免或转移风险。风险的驾驭和监控活动可用图3来表示。
7.1建立风险驾驭与监控计划
从图3中可以看出,风险的驾驭与监控活动要写入RMMP(RiskMonitoringandManagementPlan风险驾驭与监控计划)。RMMP记述了风险分析的全部工作,并且作为整个项目计划的一部分为项目管理人员所使用。
风险管理策略可以包含在软件项目计划中,也可以组织成一个独立的风险缓解、监控和管理计划(RMMP计划)。RMMP计划将所有风险分析工作文档化,并由项目管理者作为整个项目计划中的一部分来使用。一旦建立了RMMP计划,且项目开始启动,则风险缓解及驾驭及监控步骤也开始了。正如前面讨论的,风险缓解是一种问题避免活动。风险驾驭及监控则是一种项目跟踪活动,它有三个主要目标:?判断一个预测的风险是否事实、是否发生。
进行风险再估计,确保针对某个风险而制定的风险消除活动正在使用。
收集可用于将来进行风险分析的信息。
风险驾驭及监控的策略如下:
与在职人员协商,确定人员流动原因。
在项目开始前,把缓解这些流动原因的工作列入风险驾驭计划。
项目开始时,要作好人员流动的思想准备,并采取一些措施确保人员一旦离开时,项目仍能继续。
制定文档标准,并建立一种机制,保证文档及时产生。
对所有工作进行细微详审,使更多人能够按计划进度完成自己的工作。
对每个关键性技术人员培养后备人员。
在考虑风险成本之后,决定是否采用上述策略。
7.2软件项目风险追踪工具
追踪风险的一个办法是将风险输入缺陷追踪系统中,缺陷追踪系统能将风险项目标示为已解决或尚未处理等状态,也能指定解决问题的项目团队成员,并安排处理顺序。可将软件风险项目依序排列出来,按照缺陷存在的时间与负责者等资料排列。这样,缺陷追踪系统就是追踪风险的工作能更好执行并且不那么单调。
AbstractContent:Withthedevelopmentatfullspeedoftheinformationindustry,theprojectmanagementisaneffectualofficeproceduretothesoftwareenterpriserelyingmainlyonapplicationanddevelopment,theapplicationinsoftwaredevelopmentoftheprojectmanagement
ispaidattentiontodaybyday.Thistexthasbeenanalyzedanddescribed
throughtheorigincauseofformation,existingproblemandcorresponding
solutionofapplicationtotheprojectmanagementinsoftwaredevelopment
mainly.
关键词:项目管理,软件开发
Keywords:Projectmanagement,Softwaredevelopment
如果用两个字概括当前社会的特点,那就是“变化”,而这种变化在信息产业中体现得尤为突出,技术创新速度越来越快,用户需求与市场不断变化,人员流动也大大加快。在这种环境下,企业需要应对的变化以及由此带来的挑战大大增加,也给管理带来了很多问题和挑战。软件行业是一个极具挑战性和创造性的新行业,管理上没有成熟的经验可供借鉴。而项目管理应该说对于软件企业,尤其是那些以应用开发为主的软件企业,是行之有效的管理方法。因此,项目管理在软件开发中的应用日益受到重视。
项目管理的两个问题
1、什么是项目管理?
项目管理是在一定的约束条件下,以高效率地实现项目业主的目标为目
的,以项目经理个人负责制为基础和以项目为独立实体进行经济核算,并按照项目内在的逻辑规律进行有效的计划、组织、协调、控制的系统管理活动。
2、为什么要有项目管理?
没有项目管理,项目也有可能成功。但没有管理的项目,很难保证项目
的利润空间,对公司来说,亏损的风险就大。所以我们要有项目管理,以保证公司在总体上是盈利的,注意不是每一个项目都要盈利。
另外,有了项目管理,就有了管理改进的基础,无论刚开始的项目管理多么糟糕,只要有管理,就有了改进的可能性,至于能不能得到改进,以及改进的快慢,则取决于两个因素:一个是人,特别是各级管理者;另一个是利益。关键是“利益”,准确的说是“利益的分配”,在权责利明确的前提下,人才能充分的发挥作用。还需要指出的是“利益”是多元的,这里的多元不仅指利益的具体形式,而且指利益的受众是多元的,包括客户方相关人员个人的利益。
3、项目管理的发展与现状。
今天,项目管理作为一种现代化管理方式在国际上已获得了广泛的应用,从最初的国防、航天、建设工程领域,迅速发展到电子、通信、计算机、软件开发、金融等行业以及政府机关的项目管理工作。随着计算机、网络系统的迅速发展,项目管理技术的不断进步,项目管理软件产品层出不穷,其功能、特点、应用对象也各不相同。当前,越来越多的企业和组织在内部推广项目管理的理论方法及管理模式,如果都采用项目管理软件进行管理,效果就更加明显,可以节省大量的资源和财富。国外90%以上的项目管理都采用软件进行,但我国在这方面的应用还不到10%。新世纪项目管理在中国的迅速兴起,给软件企业的发展带来了前所未有的发展机遇。
项目管理在软件开发中的应用的成因
随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。各软件企业都在积极将软件项目管理引入开发活动中,对开发实行有效的管理。从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。同时,随着软件开发规模及开发队伍的逐渐增大,软件开发不再是向过去那样一二个开发人员即可解决的事情。迫切需要一种开发规范来规范每个开发人员、测试人员与支持人员的工作,每个项目组成员按约定的规则准时完成自己的工作。同时采用规范化管理,专业分工也可以降低对开发人员的要求,从而降低产品研发成本。
软件开发是一项复杂的系统工程,牵涉到各方面的因素,实际工作中,经常会出现各种各样的问题,甚至面临失败。如何总结、分析失败的原因,得出有益的教训,对一个公司来说,是在今后的项目中取得成功的关键。
早在20世纪60年代中期,人们就发现软件的生产出现了“问题”,主要表现在生产过程不规范,缺乏管理。后来,人们在软件工程方法学中引入了工程的概念、原理、技术和方法,这种思想在一定程度上解决了软件生产过程中遇到的问题。但是直至80年代还是没有提出一套管理软件开发的通用原则,软件管理不善的问题依旧在大范围内存在。
目前的软件开发正逐步趋向于复杂化、多元化,大多数开发团队中都会出现同时开发多个版本、开发/维护工作并存、多地点同时开发等情况,给软件开发管理带来了前所未有的困难。如果管理不善,必将造成版本混乱,各个开发人员的工作相互交叉、干扰,整个开发团队的工作在一种无秩序的不良状况下运行,严重影响软件产品开发的进度和质量。
因此,随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件过程管理的重要性,管理学的思想逐渐融入软件开发过程中,应用开发的项目管理日益受到重视。而项目管理技术的发展与计算机技术的发展是密不可分的,随着计算机性能的迅速提高,大量的项目管理软件涌现出来。它们可以用于各种商业活动,提供便于操作的图形界面,帮助用户制定任务、管理资源、进行成本预算、跟踪项目进度等。
软件项目管理常见问题及解决方案
对于软件开发项目中,经常出现两种极端情况,一种是创造了新的生产率和质量的纪录;一种则完全是一场灾难,不是被取消就是拖延很长时间。前者如在很短的时间内,为了赶进度,在几乎不可能的时间内开发出一套软件产品,创造了软件开发的记录,满足了上级所要求的上机日期,由于开发时间太短,过于仓促,上机时,问题百出,试运行时间长达几个月或一年半载的,而且程序一改再改,维护工作量大。
后者,如某套系统未弄清楚需求,或因设计问题,开发失败。通过提炼这些成功和失败的例子,软件项目成功或失败的根本原因可能会更清晰一些。
目前我国大部分软件公司,无论是产品型公司还是项目型公司,都没有形成适合自己公司特点的软件开发管理模式,虽然有些公司根据软件工程理论建立了一些软件开发管理规范,但并没有从根本上解决软件开发的质量控制问题。这样导致软件产品质量不稳定,软件后期的维护、升级出现麻烦,同时最终也会损害用户的利益。
分析目前项目管理需要改进的问题可以从几种相关角色的角度去考虑:项目经理、项目组成员、公司管理人员、市场人员、客户等。
问题一:缺乏项目管理系统培训(相关对象:项目经理、管理人员)
项目经理在项目管理方面的培训较少或不够系统。项目经理或管理人员不了解项目管理的知识体系和一些常用工具和方法,所以在实际工作中没有项目管理知识的指导,完全依靠个人现有的知识技能,管理工作的随意性、盲目性比较大。在软件企业中,以前几乎没有专门招收项目管理专业的人员来担任项目经理(甚至很少是管理专业的),被任命的项目经理主要是因为他们能够在技术上独当一面,而管理方面特别是项目管理方面的知识比较缺乏。
解决方案:项目经理接受系统的项目管理知识培训是非常必要的,有了专业领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。应实行项目经理知识技能资格考核制度,让项目经理自觉补充学习项目管理的知识和一些常用工具和方法。
问题二:项目计划意识问题(相关对象:项目经理)
项目经理对总体计划、阶段计划的作用认识不足。项目经理认为计划不如变化快,项目中也有很多不确定的因素,做计划是走过场,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划与控制管理脱节,无法进行有效的进度控制管理。没有计划或者是随意的不负责任的计划的项目是一种无法控制的项目。
解决方案:在高技术行业,日新月异是主要特点,因此计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识,采用项目计划制定相关各种知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。
问题三、管理意识问题(相关对象:项目经理)
部分项目经理没有意识到自己项目经理的角色,从总体上去把握管理整个项目,而是埋头于具体的技术工作,造成项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。在软件企业中,项目经理大多是技术骨干,技术方面的知识比较深厚,但无论是项目管理知识,还是项目管理必备的技能、项目管理必备的素质都有待补充和提高,项目管理经验也有待丰富。有些项目经理对于一些不服管理的技术人员,没有较好的管理方法,工作不好安排的工作只好自己做。另外由于工作分解结构设计的合理性,项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。
解决方案:加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。
问题四:沟通意识问题(相关人员:项目经理、项目组成员)
在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失;有些人没有每天定时收邮件的习惯,以至于无法及时接收最新的信息。
解决方案:制定有效的沟通制度和沟通机制,对由于缺乏沟通而造成的事件进行通报作为教训提醒,以提高沟通意识;沟通方式应根据内容而多样化,讲究有效率的沟通;通过制度规定对由于未及时收取邮件而造成损失的责任归属;对于特别重要的内容要采用多种方式进行有效沟通以确保传达到位,例如除发送邮件外还要电话提醒、回执等,重要的内容还要通过举行各种会议进行传达。
问题五:风险管理意识问题(相关人员:项目经理)
项目经理没有充分分析可能的风险,对付风险的策略考虑比较简单。项目经理在做项目规划时常常没有做专门的风险管理计划文档,而是合并在项目计划书中。有些项目经理没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,随便列出几个风险,随便地写一些简单的对策,对于后面的风险防范起不到什么指导作用。
解决方案:通过学习项目管理知识掌握风险识别、量化、对策研究、反应控制的工具和方法掌握项目风险管理所必备的知识。通过加强对项目规划中风险管理计划的审核提高项目组的风险管理意识。总结本行业项目中常见的风险及其对策作为风险管理计划中必要的风险内容,并切实评估相应对策的有效性和可行性。
问题六:不重视项目经验的总结(相关人员:项目经理、管理人员)
项目经理在项目结束时有些是因为自身对写文档工作的兴趣或意识,或
者是因为紧接着要参加下一个项目,总体对项目总结的重视程度不够。有些是项目总结报告一再拖延,有些是交上来的报告质量较低,敷衍了事。
解决方案:在制度上鼓励和加强项目经验总结工作,使得项目总结及时并且具有指导意义而不是走过场。
问题七:项目干系人相关问题(相关人员:项目经理、项目成员、客户)
在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、
工作职责等没有足够了解以致于无法得到完整需求或最终经权威用户代表确认的需求。由于项目经理的工作问题,客户参与程度部不高,客户方相关责任人不明确或对范围和要求责任心不强,提出的要求具有随意性,项目前期对需求的确认不够积极;或者是多个用户代表各说各话、昨是今非但同时又要求项目尽早交付;项目后期需求变化随意,造成项目范围的蔓延,进度的拖延,成本的扩大。
解决方案:项目的目的就是实现项目干系人的需求和愿望。项目干系人管理应当从项目的启动开始,项目经理及其项目成员就要分清项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减小其对项目的阻力,以确保项目获得成功。
问题八:项目团队内分工协作问题(相关人员:项目经理、项目成员)
项目团队内部有时由于各阶段不同角色或同阶段不同角色之间的责任
分工不够清晰而造成工作互相推诿、责任互相推卸的现象,有时各阶段不同角色或同阶段不同角色之间的责任分工比较清晰但是各项目成员只顾完成自己那部分任务、不愿意与他人协作。这些现象或多或少地造成了项目团队内部资源的损耗,从而影响了项目的进展。
解决方案:项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。
以上对软件开发项目管理中出现的问题的分析还不够深入,也无法列举所有遇到或将遇到的问题,解决方案也要根据实际情况进行调整,希望引起对这些问题更多的思考和改进。
结束语:项目管理虽然没有非常高深的理论,但要真正实施起来,也绝非易事。对于软件开发企业而言,这不是一个小的改变,而是一种变革,企业需要为此付出艰苦的努力,宣传并树立公司范围内的项目管理文化十分重要。从而在实践中锻炼提高,解决各种各样的问题,使项目管理工作越做越好。
参考文献:
吴照云《管理学原理》经济管理出版社
StanleyE.Portny(宁俊等译)《如何做好项目管理》新经济工商实务丛书
NealWhitten(孙艳春等译)《管理软件开发项目》(第二版)软件项目管理系列丛书
WBSR模式是建立在WBS基础之上的,与责任融合后形成的一种新模式。从WBSR角度开展工作,能够确定软件项目的工作及产品范围,为工作顺利开展指明了方向,将工作细化之后,分配给每一个工作人员,促使工作人员明确自身职责,从而为项目计划制定、考核等工作奠定坚实的基础和保障。
2模型具体步骤划分
通过对模型进行深入分析和研究,并结合软件项目特征,能够确定责任范围,对整个项目进行结构分解,得到WBS集;软件项目的开发需要将用户需求作为核心,进而通过模型进行分解,获得PBS集;最后,要制定与项目开发相关的部署,确保每一个环节都能够顺利进行,保证项目进度,为工作提供依据,通过这种方式,不仅能够确保工作有条不紊进行,还能够有效提高工作质量和效率,从而促进软件开发工作进一步发展。
3模型主要应用流程
WBSR模型在软件项目管理中的应用主要涉及对项目的分解、工作目标的确认及更新。首先,建立工作小组,工作人员作为软件项目管理的核心,其成员综合素质直接影响工作能否顺利进行,基于此,小组成员一般选择项目经济、技术人员等,还可以增加用户代表等,以此来确保软件开发的合理、科学性;其次,工作、产品等结构分解,工作分解作为模式应用的基础,应结合实际情况进行合理分解,切勿盲目性,还需要结合成员经验等因素,为工作顺利开展提供支持;软件产品作为参与市场竞争的关键,分解产品开发,能够深度挖掘员工潜力,提高产品适应力,与客户达成共识;最后,还需要结合实际情况对项目范围进行及时调整,如果范围发生变化,相对应的工作流程也需要进行调整,实现统一、系统发展目标。
4模型应用情况
将软件项目管理与WBSR模式结合,将各个工作进行细致划分,能够为软件计划、预估等工作提供依据,确保工作顺利开展,在一定程度上推动了软件项目进一步发展,与此同时,在项目开展过程中,负责人加大对实际工作的监督和控制力度,能够及时发现不足之处,并采取有针对性措施,确保软件产品开发质量,该模式的应用,能够直观的反映组内成员的实际表现,为日后进行绩效考核奠定了基础,从而有效提高管理水平,促进企业可持续、健康发展。
5模式性能评价
通过对WBSR模式在软件项目管理中应用情况调查可知,模式对工作过程及产品开发从不同角度进行合理分解,提高了项目范围的精准性及有效性,避免工作失误情况的发生,并且将工作细化至每一个人受众,形成良性循环,促使员工能够认真、负责完成工作,起到了积极地促进作用。因此,面对社会发展新形势下,企业软件项目管理可以大力推广和普及WBSR模式,提高产品适应力及质量,从而实现企业经济效益最大化目标。
6结论
一引言
项目管理技术是软件工程专业的一门重要专业课。其教学任务是使学生了解和掌握项目管理的基本概念、基本原理和工程化方法。内容涉及项目管理知识体系(PMBOK)九大知识领域和五个标准化过程组,几乎涵盖了软件项目从立项到结束的方方面面,是一门具有相当广度的课程。然而,该课程的教学效果却不容乐观。
其一、项目管理技术的理论知识多脱胎于工程管理领域,由于国内软件工程专业建设刚刚起步,相关教材往往照搬工程管理理论,缺乏完全针对软件开发的必要整理和筛选。因此同软件开发实践结合并不十分紧密。
其二、而传统的教学方式往往重理论而轻实践,教师将理论知识“满堂灌”给学生,学生“死记硬背”理论条文,并不懂得如何将理论用于实际软件开发。这种仅以理论的多寡深浅作为对学生评价激励唯一标准的教学手段,必然导致培养的人才实用性不强,职业能力较差,工程化程度较低。达不到项目管理技术的教学要求。
因此,需要对软件项目管理技术的教学进行改革。二基于具体项目的软件项目管理教学软件工程项目相比一般工程项目具有更强的复杂性和更多的不可控因素,传统的项目管理教学所传授的知识常常不易使理论知识和实际开发吻合,给学生造成“学习无用之感”;课程本身也难以完全包括软件开发过程的全部情况。最好的方法是通过一个具体软件项目的开发过程,使学生接受项目管理的理念,而软件项目的开发设备相对单一,团队人数相对较少,相比一般工程项目更易进行实践演练。
可以看出,项目管理进行过程将根据实际情况不断进行计划变更、计划控制和计划执行的搏弈和循环。由于软件项目有以下特点:
(1)软件产品是无形的,不可捉摸的,无法感觉形状,设计也难以直观表示,很难确定产品质量或估计开发工作量。
(2)由于软件的拷贝生产轻而易举,因此,几乎全部的软件项目成本在开发过程中,而不是在制造过程。
(3)软件开发过程属于劳动密集型过程,尚未实现完全自动化,因此对软件项目开发进度的计划和控制比对一般工程项目更加复杂。
(4)软件是逻辑实体,本身很容易修改,但由于其复杂性,又很难正确地修改,在缺乏沟通的情况下,对个别模块的修改可能会带来新的错误。
(5)软件不像其他产品会因使用而磨损,和一般工程产品不同,软件产品的维护常常通过增加新模块功能完成升级。为保证新版本的稳定性,常常需要对新版本的重新设计因此,软件过程主要集中于软件项目的开发过程,而在这一过程中,相比一般工程项目,项目管理过程组的核心循环表现得更加突出。基于具体项目对软件开发过程进行阐述将更有利于学生理解软件开发过程中的项目管理。由于课程目标并不在于具体技术细节的学习,而在于体会软件开发过程中的项目管理。因此在项目选择中,不能使学生投入过多精力在技术细节上,而应更多的关注软件项目管理的沟通、计划和控制。我们选择计算机学院行政管理系统网站作为实践项目让学生组队开发,这一项目属于MIS(信息管理系统)项目类,难度不大,且能充分体现软件项目需求不明确、多变、沟通复杂等特点。作为计算机学院的学生,学生对项目的需求的理解也将更加实际。
2.1基于项目驱动的评价体系“为了解决软件问题,重要的第一步就是将整个软件开发任务看做一个可控的、可度量的以及可改进的过程。”将项目管理方法运用于具体软件项目开发的实践或在实践中改进现有方法,能够帮助学生更好的掌握项目管理技术。在实际教学中,我们将学生分成若干团队,每个团队8~13人,充分使学生体会到团队感,增加管理意识。项目经理是靠干出来的,不是靠背出来的。为使学生在具体项目实践中更加投入,必须改革原有的基于卷面成绩的评价体系。我们提出基于项目驱动的评价体系,使学生自觉将课堂所学的理论知识及时用于项目。学生的总评成绩将由团队项目评分、演练与总结评分、期末论文评分三部分组成:
(1)团队项目评分:60%其中20%由教师根据团队分阶段提交的项目资料给出;剩下40%由每个团队的“项目经理”根据团队的成员的表现给出。而项目经理的打分权限则取决于项目完成时专家对项目的评审得分。
(2)演练与总结评分:20%项目结束后各个团队成员对整个项目管理过程进行总结,评价和反思项目经理的管理过程,教师根据学生个人上课时有关项目的各种演练表现以及项目总结报告进行评分。
(3)期末论文评分:20%要求学生对项目管理九大知识领域进行一定深度的论述。为确保评价体系更加公平、公开、公正,我们规定:
(1)项目经理享有计划和分配项目团队资源,为项目组成员进行打分的权利,同时具有带领项目组完成所有课堂演练环节,完成项目开发的义务。作为奖励,项目经理可以直接获得满分的演练与总评成绩;作为制约,项目经理为自己所打分数只得在项目评审得分5%上下浮动,如果项目经理引起过团队半数以上成员不满,将被弹劾,一旦弹劾,相应权利和奖励同时消失。
(2)项目评审后,项目经理将得到“项目评审得分*团队开发人数”的可分配分数,项目经理根据项目组分数分配方法给团队成员打分,上限为40。
(3)项目评审时将邀请学院软件工程专家、需方代表不少于5人组成专家组对各团队项目进行公开评审,评审将从需方满意度、项目开发文档、项目开发过程三个角度进行打分。团队最终得分通过delphi法得到。可以看出,在以上的评价体系中,基于项目驱动的评分所占比重相当大,不仅注重项目的结果,同时注重项目开发过程。学生的分数在一定程度上模拟了现实生活的“奖金”,而项目团队则更加贴近现实生活中的软件开发公司。为了使项目成功,学生必须自觉地实践和探索科学的项目管理方法,不论成功与失败都将成为学生宝贵的经验和教训。评分中,由于个体学生所能获得的成绩与其所在团队成绩紧密相关,因此,为整个团队获得高分而努力的开发过程极大地培养了学生的团队协作精神。通过教学实践,这一评价体系调动了学生的学习主动性,起到了较好的作用。超级秘书网
2.2基于项目过程的知识传授和情景演练表1显示了项目管理九大知识领域在五个标准化过程组中的作用。可以看出在不同的过程组中,各知识领域所起的作用是不同的。配合实际项目开发的过程,为使所传授的知识能够及时用于实际项目,我们颠覆了原有教材顺序,按软件项目五个过程组所涉及的知识领域对教学顺序进行重新安排,基本做到项目进行阶段与所传授的相关知识同步。每次课程教学前后都及时安排对相关内容的情景演练。由表2所示教学实施安排表可以看出,项目管理的九大知识领域几乎都能做到安排于项目情景中进行传授,起到了理论对实践的指导或总结作用。可以看出,每次演练环节一般都是对上次所本传授知识的总结或当次所传授知识的及时操练,知识点覆盖较全面。通过设身处地去当一名项目经理或软件工程师,增加了学生对软件开发项目的感性认识和兴趣,提高了他们的管理才能。通过知识传授和情景演练的密切配合,使学生对软件项目的管理过程理解得更加深刻。
二结论
基于具体项目的项目管理教学使学生能够体会项目管理各知识领域的作用,领会各种方法、规范所适用的环境。通过实际开发后自己总结提炼的经验和教训,学生将更加接受项目管理的理念和知识,培养了团队合作精神。在学期末进行的教学效果调查中,83%的学生认为这种教学方法效果良好。学生普遍反映“项目管理枯燥的理论知识变活了,知道怎么用了,印象更加深刻了。”
项目管理是软件工程重要的专业课,在今后的教学实践中,我们将继续改进教学方法,做到量体裁衣,因地制宜,加强教学效果。
参考文献:
[1]韩万江,姜立新.软件项目管理案例教程[M].北京:机械工业出版社.2005.
[2]张海藩.软件工程[M].北京:人写作论文民邮电出版社,2002.
论文摘要:软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期(从分析、设计、编码到浏试、维护全过程)都能在管理者的拉制之下,以预定成本按期,按质的完成软件交付用户使用。目前,软件项目管理不善的新问题仍然存在。本文将在分析软件项目管理存在的新问题的基础上,探索时策办法。
随着计算机应用范围的日益广泛深人,应用软件的规模及复杂程度也日趋大型化、复杂化,这就导致软件开发的方式也从早期的单兵作战式或手工作坊式渐渐转变为集团化、工厂流水线式的团队协作开发方式。这种情况下,如何管理好项目的每一.步运作,及时解决出现的新问题是每一位项目主管责无旁贷的责任。
一、软件项目管理存在的新问题
(一)缺乏项目管理系统培训。项目经理在项目管理方面的培训较少或不够系统。项目经理或管理人员不了解项目管理的知识体系和一些常用工具和方法,所以在实际工作中没有项目管理知识的指导,完全依靠个人现有的知识技能,管理工作的随意性、盲目性比较大。在软件企业中,以前几乎没有专招收项目管理专业的人员来担任项目经理(甚至很少是管理专业的),被任命的项目经理主要是因为他们能够在技术上独当一面,而管理方面非凡是项目管理方面的知识比较缺乏。
(二)对项目计划熟悉不足。项目经理对总体计划、阶段计划的功能熟悉不足。项目经理认为计划不如变化快,项目中也有很多不确定的因素,做计划是走过场,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划和控制管理脱节,无法进行有效的进度控制管理。没有计划或者是随意的不负责任的计划的项目是一种无法控制的项目。
(三)管理意识存在偏差。部分项目经理没有意识到自己项目经理的角色,从总体上去把握管理整个项目,而是埋头于具体的技术工作,造成项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。在软件企业中,项目经理大多是技术骨千,技术方面的知识比较深厚,但无论是项目管理知识,还是项目管理必备的技能、项目管理必备的素质都有待补充和提高,项目管理经验也有待丰富。有些项目经理对于一些不服管理的技术人员,没有较好的管理方法,工作不好布置的工作只好自己做。另外由于工作分解结构设计的合理性,项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。
(四)相互间缺乏沟通。在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术新问题或成果等方面和相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失;有些人没有天天定时收邮件的习惯,以至于无法及时接收最新的信息。
(五)缺乏风险管理意识。项目经理没有充分分析可能的风险,对付风险的策略考虑比较简单。项目经理在做项目规划时经常没有做专门的风险管理计划文档,而是合并在项目计划书中。有些项目经理没有充分意识到风险管理的重要胜,对计划书中风险管理的章节简单应付了事,随便列出几个风险,随便地写一些简单的策略,对于后面的风险防范起不到什么指导功能。
(六)项目干系人相关新问题。在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、工作职责等没有足够了解以致于无法得到完整需求或最终经权威用户代表确认的需求。由于项目经理的工作新问题,客户参和程度部不高,客户方相关责任人不明确或对范围和要求责任心不强,提出的要求具有随意性,项目前期对需求的确认不吃积极;或者是多个用户代表各说各话、昨是今非但同时又要求目尽早交付;项目后期需求变化随意,造成项目范围的蔓延,无度的拖延,成本的扩大。
二、加强软件项目管理的办法
(一)加强项目经理的系统培训。项目经理接受系统的项管理知识培训是非常必要的,有了专业领域的知识和实践,再丈上项目管理知识和实践和一般管理的知识和经验的有机结合,组能大大提高项目经理的项目管理水平。应实行项目经理知识技育资格考核制度,让项目经理自觉补充学习项目管理的知识和一些常用工具和方法。
(二)提高项目经理对计划的熟悉。在高上术行业,日新月异是主要特征,因此计划的制定需要在一定条.的限制和假设之下采用渐近明细的方式进行不断完善。提高目经理的计划意识,采用项目计划制定相关各种知识、技术、具,加强对开发计划、阶段计划的有效胜进行事前事后的评估。超级秘书网
(三)加强项目管理方面的培训。加强项目管理方面的培训,实通过对考核乡勘际的合理设定和宣传引导项目经理更好地做好项仁管理工作。技术骨干在担任项目经理之前,最好能经过系统的目管理知识,非凡是其中的人力资源管理、沟通管理的学习,实且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。
(四)加强相互间的沟通。制定有效的择通制度和沟通机制,对由于缺乏沟通而造成的事件进行通报作夕教提醒,以提高沟通意识;沟通方式应根据内容而多样化,甘究有效率的沟通;通过制度规定对由于未及时收取邮件而造成壮失的责任归属;对于非凡重要的内容要采用多种方式进行有效通以确保传达到位。超级秘书网
(五)提高软件项目的风险管理意识。通泛学习项目管理知识把握风险识别、量化、策略探究、反应控制尔工具和方法把握项目风险管理所必备的知识。通过加强对项目知划中风险管理计划的审核提高项目组的风险管理意识。总结本表业项目中常见的风险及其策略作为风险管理计划中必要的风险详容,并切实评估相应策略的有效胜和可行险
(六)理清项目头系人。项目的目的就是实现项目干系人的需求和愿望。项目干弄人管理应当从项目的启动开始,项目经理及其项目成员就要分耀项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减刁琪对项目的阻力,以确保项目获得成功。
关键词:P6项目管理软件,EPC,总包项目
在我国,工程项目管理长期以来一直是封闭落后的计划经济的管理模式,这种不讲求效益,不遵守实际带有长官命令色彩的“拍脑袋”式的管理模式使得我国工程项目长期处于“没有管理的管理”状态。我院自改制以来一直坚持走工程总承包模式的道路,不断学习并摸索国际先进的项目管理模式及方法,在冶金行业率先引入了国际先进的项目管理软件系统:美国Primavera公司的PrimaveraProject Plan(通常所说的P3软件)6.2版,简称P6。P6是一种基于广义网络计划技术的工程项目管理软件,也是世界工程项目管理界普遍认可的项目管理软件。这套系统的引入不仅加深了我们对项目管理的认识,提高了我们的业务水平,同时大大增强了公司的市场竞争力,2008年公司中标了一个位于印度的综合钢厂的EPC总包合同,本人有幸作为公司第一批开拓国际市场的项目管理人员参与了此工程的建设,并在工程建设过程中使用P6软件进行项目管理,下面总结了自己在使用P6软件进行项目管理在实际应用中的一些体会。
工程项目的管理是一个多目标、多工序、既复杂又庞大、既分别独立又相互联系的系统工程。论文参考网。一个大型复杂的工程工程管理实际上就是利用能够控制的资源(人力、机具、材料、资金、工期)在一定的条件下对一个既定目标(进度、质量、费用)进行科学的计划和以更多的定量数据做深入动态分析;对工程的实施过程进行有效的调整、控制、优化,以尽可能小的投入,获得最大的效益。
1. 项目计划的编制
在项目的最初阶段,结合实际情况和业主的要求,并考虑到印度当地的气候条件(印度每年7-9月为雨季,对土建施工影响较大,且夏季温度较高,中午地面气温能够达到50度以上)等,对项目进行初步分析和计划编制,同时我们使用P6软件对项目的基本内容进行科学的代码编制,例如设计代码为EN(Engineering),采购代码PR(Purchase),施工代码CO(Construction)等,这些编码自上而下从大到小的将工程的各项任务编制成详细的进度计划,形成项目的基准计划,并以此为框架,不断对项目进行分析细化,使之成为一个可实际操作的项目进度计划。
与在国内进行项目计划编制不同的是,国外业主对计划的编制工作室非常重视,往往会要求尽可能详细的编制进度计划,甚至要求详细到每一道工序。论文参考网。虽然这样加大了我们的工作数量和工作难度,但也让我们对整个项目能够做到了如指掌。而且在此过程中,P6软件还可以按照我们设定好的各子项作业条目之间的逻辑关系,作业条目中添加的资源,费用,工期等进行进度计算,在时间上对所有工作进行排列,规定各个工作何时开始何时结束。P6可以对一个工程项目的所有任务做出精确的时间安排,同时还对完成任务所需的资源,费用等进行分析和比较,在千头万绪的任务中找出关键的任务(关键线路),保证对工期的控制。
2. 项目过程的跟踪
以上面编排的项目计划为基准计划,在项目的实际实施过程中,P6软件能够对工程进度进行跟踪,做到动态管理和控制。目前国内项目中,在对工程项目进行初期的计划编制后即打印后悬挂在办公室,并未对计划进行细致的反馈和跟踪,以至于很多时候对工程的实际完成情况了解不足,工期是超前了还是滞后了,提前多少滞后多少没有人能说清。我们在此项目中不仅仅只编制计划,更多的重要工作还在于对计划进行跟踪,定期按实际情况更新计划,将计划与实际相比较,通过P6的进度计算工程精确计算出项目当前的状态。
以往国内的项目中,往往只对项目的重要结点进行跟踪,而忽视了对整个项目的过程控制和管理,在此次的项目中,我们结合业主和自己的要求,使用以周为跟踪周期,以月为考核周期的方式进行实际情况的更新和跟踪,为下一步的项目分析、控制和优化提供坚实的依据。
3. 项目的分析、控制与优化
通过对项目基准计划的编制、项目实际过程的跟踪,P6软件进行进度计算后,会通过基准计划和实际情况两条横道做对比,一目了然的告诉你哪些工作的超前了,哪些工作滞后了,滞后的原因是什么?哪些工作实际何时开工或完工,本来应该在何时开工或完工,到目前为止完成了多少工程量或投资,本来应该完成多少工程量或投资以及我们关心的项目当前进展情况。我们根据软件提供的信息,对比基准计划(原计划)找出偏差,分析原因,研究纠偏对策,并实施纠偏措施。P6软件不但考虑时间问题,还根据资源和费用进行分析,求得一个时间短,资源耗费少,费用低的计划方案,并通过软件的强大的计算功能进行网络计划的优化,也就是利用浮时(Float)不断改善网络计划的最初方案,使之获得最佳工期、最低费用和对资源的最有效利用。并能够利用软件的过滤功能将影响制约工程进度的重要作业过滤出来重点监控。对于发现工期滞后的工程项目采取补救措施,制定相应的追赶计划。
以往国内的项目里,一旦发生工期滞后不能按时完成工程结点的情况时,管理者往往采取的措施是盲目增加施工人员,施工机具等抢时间、抢结点以满足业主对工期的要求,这样不仅增加了自身的成本也不利于保证工程质量和安全。而在此次的项目中,由于施工人员都来自国内,不能做到想增加多少就增加多少,所以通过P6对项目的分析和优化,管理人员可以采取多种措施保证施工进度。论文参考网。
从以上P6项目管理软件的使用过程和强大功能上可以看出,国外的工程项目计划工作在现代项目管理中占有重要地位,是整个项目管理的龙头。由于工程的其他管理工作都是围绕着如何实现工程总进度计划所指定的目标而展开的,因此,是否有一个全面、优质的进度计划几乎成为工程项目成功的关键。P6告诉我们现代化得工程项目管理要重视计划水平,树立起按计划执行的严肃性,使参与工程项目的业主、监理单位、承包商等按照统一的进度目标,并为完成这一目标的各种要求做出各自的努力。
而在具体使用中应遵守几个必要的应用原则:科学的项目工作分解和责任分工是关键;人员投入是保障(必须确保各级管理、编录人员的务实工作);自上而下来分解(根目录的建立、各级作业面的分解、投资预算的设置必须自上而下来科学设置);自下而上来汇总(主/子关系使项目管理必须从低层向高层次累计和汇总任何进度、投资和资源等等的信息);督促检查必须贯串始终(必须随时跟踪每一个目标的进展,发现问题及时协商、及时处理、及时采取正确的补救措施,确保目标运行方向正确、进展顺利);及时调整是灵魂(领导不重视、调整数据和投资资源不及时,必然是项目管理的P6平台失去生命)。国外企业中,计划管理部门是一个非常重要的部门,具有很强的现场指挥权和协调权。而在我国的企业中权力分散,令出多头的现象很普遍,计划部门只是履行编制施工计划和统计报表等一般的职责。
当前,我国的项目管理模式和水平还处于混交阶段,一方面国内固有的管理模式和思想已经不能满足国外工程项目的要求,另一方面国外先进的管理模式、思想和工具进入国内,刺激我们必须转变观念,积极学习国外先进的管理思想和工具。特别是在涉外工程或合资工程项目建设中,如果不能很好的与外国业主的管理模式相融合,将不能很好领会业主的管理模式,在项目的实际实施过程中将处处受制,增加项目的实施和管理难度,并大大降低企业的国际市场竞争力。由于我国仍沿用着传统的工程项目管理模式,企业中的计划管理部门,材料部门和财务部门之间都是互为独立的职能部门,都有着各自一套独立的核算体系和方法,在短时间内很难达到三者的统一。为了全面推行和实施“进度、资源、成本”的综合管理,传统的工程项目管理模式已经不能适应新形势下的工程管理和决策的需要。所以,在市场经济和国际化趋势向我们滚滚袭来的当前时代,市场竞争、优胜劣汰的潮流势不可挡,我们要虚心学习国外先进的工程项目管理经验,痛下决心,对自己已有的体制进行脱胎换骨的改造,只有这样才能经得起这场大潮的考验。