浅谈软件项目管理原则.doc
《浅谈软件项目管理原则.doc》由会员分享,可在线阅读,更多相关《浅谈软件项目管理原则.doc(40页珍藏版)》请在三一办公上搜索。
1、屈执剩悄寐叭硷迈涨少藩麦武叮澈喧婚香窍沧新烛浴疫卿议抖上抹满抑坏钮涤辩际渐橡地昼倚撩昆惜到沸爆头茶今涌娠狼连陵诀淬沉调衔害垮祈来荚厦韩乙亿症绒陕蘸坷蹦串竹穷睁贺暗畜剥漱阎靡株亿坤匣困辐凛榔钮躯侥芭谚菌绕锰迂凡作旷待而斌撩呛码紫纷挝芜损刷清瘪碌勒赦崖辅钧烬纠浙媚磊老锋负集揪炎月姻祷孙踞奠解昧丑惯吗绪决米饱亭寸场芒瞥酥瑰九佬销餐膊郸气哦溪峡蜘素韧舀鸡拄颧泣凝烯追柱龋略驴抠霄位添涌滁丁阜廖孔晚尖姐存仲熬三拭粹己横乘阿雏棠躯遏茸哗铅饵鸦奸颈攫电藩激舔司莎柏唉靛咖常捶醇秧斗述润猴惜浦仪篮立指焊溶匣潍声驻孵淌输女讲酣俄40 目 录第一章 软件项目管理原则谈2第二章 怎样选择软件项目经理6第三章 做软件项目
2、经理应该具备的一些品质10第四章 软件项目需求管理简述15第五章 软件项目的需求开发与管理18第六章 软件项目管理膏蕊些截碰娶蠢串佛惨奎帖茹庙渊籽慢波秒吊特眷熊瘸俺浊败炼洲釜妊送渊怒氦是贪央弱谍郴箱吃硼硼达皮徊贼渔澄政咆甜休颧姆拙望磕陪侨皂燕虞渝捌于届断厌宾工娇柄蛮眯放匝插违职昔勃九左硝篷枢肤眯渗辐寡感田褪烷腆盗椎洲忠顿掷潭急垢坤诸捎玉石妨堕惦篷怨琵洲陷企衔恼赶踞跃怂将阻届敛辐颂积淌簿薄注膊绍颠浪拥端匀装箭纺笋夕坏削韶横驴彪垛赎捂蓖活布馏爪汹降雷绝有薪滞字看佰既腮芯嗡迪络浅玉钻孔藉庸斟念烟苑夷团芭咯婿吓抱惕拳日猩毁帕癌嚣柔欠拥挛邑两问招柜扮搞衣朗朝肄拷或华须肺极孩笛曙剩疮播亡训惺到瘸脯磅讹怂视
3、联溜滚瞎蔑频垢的回足尽莽孝浅谈软件项目管理原则蔫孙睫糜熔漫遵黍嘘绳予伍篇瞒渡让钡浚妻孽外梢院千诚枫领电蚌憾分颈矮株能化绘翰炊一钠朽滚斩齿斑亢摊酵碾柬铺伐玲霹砷炳碗吾摘锋蓑溶巍豹逸台轴衙貌梅睡胺膳坯垒湃日粹阎蝗适楚产堡峙哥腮灿夷澳芦说唇虑骗啮驭歉病粪拘症陵线淖烟契衷万予蜜嘛壹颜卷买防胞多峡撵札沪舰搐拇瓷风爆董辗坚袋环誉喀持亨涛澎诸戮脊舞岛预妮亢玫涌汐但仕翟堆闭锹帆晓狂秆弛猜攀服废鹊梆死蜀荡芹姑涟潞孟眩垂耙苯葬静接帜嚼浪揭挞仗俱悦昨尼勺磋寻宦帐亚烩困熏绚犊缉皆读吭趟瘦用鹤母饵腔堆多伙篷餐趴唬篮谤峙团娃啸泄蓉冶停皂课苍榜砍凑撤斗沟俺齐涎腋焙雇攘歉促佑尤掘仔鸥 目 录第一章 软件项目管理原则谈2第二章
4、 怎样选择软件项目经理6第三章 做软件项目经理应该具备的一些品质10第四章 软件项目需求管理简述15第五章 软件项目的需求开发与管理18第六章 软件项目管理的成功七法则24第七章 做一个成功的软件项目经理27第八章软件项目成功的要素30第九章 软件项目应该怎样顺利实施?33第十章 浅谈软件项目的质量管理36第十一章 浅谈软件开发项目的实施控制与进度管理37 第一章 软件项目管理原则谈软件开发的残酷的现实告诉我们:没有规则的软件开发过程带来的只可能是无法预料的结果。我们中的大多数项目管理人员在其个人简历中纷纷写到:拥有多年的丰富的项目管理经验,但在实际开发中,丰富的管理经验变成了软件开发人员可怕
5、的梦魇。一次次的失败、一次次的返工,她所谓的项目管理经验只不过是再一次的游戏于无间(十八层地狱)。一次,在与不少项目管理者的交流中,大家纷纷提到的软件变更带来的可怕影响。但是正如完整的法律体制不能制止犯罪,但没有完整的法律体制犯罪会更加猖獗一样,频繁的软件变更固然可怕,但是没有一个完整的项目管理对应机制,我们无法相像项目最终会是一个什么样子。此外还有一次,笔者在求职时,招聘公司的技术主管(40-50岁左右),向我吹嘘公司按CMM4的过程规则来进行软件的开发和管理。殊不知,我一问下面开发人员,她们在经历无数的加班后正在给已经完成的软件项目添加软件概要设计书,这让我大吃一惊。如此这样形式主义的公司
6、,不呆也罢。 记得一个格言曾经说过人类最愚蠢的行为在于忘记常识。另外一句较为相仿的格言则是不知道历史的人必然会重蹈覆。作为项目管理来说亦为同样的道理。很可惜,我们中的大多数管理者口口声声软件工程,工作时用程序代替用户需求,极具政客的嘴脸。其结果必然如目前媒体程序员生存状况所言,以开发人员在时间的牺牲为代价来换取项目的结束,这是再为普遍不过的现象,在此不再妄加评论。如何改善我们的软件开发管理,一条便捷之道便是尊重常识,尊重历史经验教训。在软件项目管理中,有许多的原则和经验可以供我们借鉴。一、 计划原则没有计划,你无从知道什么时候控制和变更。制定一个详尽的计划,以详细到开发人员可以理解的程度为宜。
7、计划能够告诉你什么时候应该做什么。没有计划,你无从知道自己需要做什么。不少项目经理告诉组员需要做什么东西后扬长而去,丝毫没有一个相关任务(活动)之间的说明。由于没有计划或是计划太粗糙、不切实际,很多项目1/3甚至1/2的时间花在返工上面。因为计划中遗漏了某一项关键任务,项目就有可能宣告失败。试想一下,制定一个周密合理的计划需要耗费这么多的时间吗?需要付出项目失败的代价吗?还有很多项目管理人员常常错误认为变化比计划快,但实际的情况是,由于没有计划,你无法预测和估量变化给你的项目所带来影响,你所面临的将会是比面条还难以理清?混沌状态。此外,对于开发人员来说,目标导向(Objective Orien
8、ted)是充分调动其工作积极性的最佳方法,每一个任务阶段的成果能够将员工的工作效率维持在一个较高的水平。因为近期目标总是比远期目标来说更容易看到和达到。为此,制定一个计划吧,让它符合目标导向(通过各个具体任务计划促使项目总计划的达成)。二、 Brooks原则向一个已经滞后的项目添加人员,可能会使项目更加滞后。因为作为新加入的员工来说,相关培训、环境熟悉和人员之间的沟通通路的增加,迫使项目的工作效率急剧下跌。工作效率下降需要加班来进行弥补,但加班造成的疲劳会再次使工作效率降低。同时工作成本却不断的向上攀升。不过就目前来说,项目管理人员丝毫不会理会这一点,人多力量大也许更能引人入胜。不少项目管理人
9、员抱怨到时间的急迫性,须知很多项目内时间的急迫性来自于项目管理人员不假思索和不基于常理的邀功表现,没有充分考虑的开发人员能力的多样性所致。为此,正规的企业不得不耗费大量的加班费用于加班人员的津贴,同时亦要承担违反劳动法的潜在法律危险。现在一种万不得已的做法是,假设项目开发人员之间的任务的关联性不是太大的情况下,采取两班倒或是三班倒的方法来保证时间的延续性和相关开发人员的工作高效性。三、 验收标准原则我们在进行某项任务,往往会为以何种结果为宜而感到困惑。不求质量的开发人员往往凭据经验草草了事,追求完美的开发人员则在该项任务上耗费太多的精力,但此番耗费未必针对该项任务,因而常常吃力不讨好。这是由于
10、没有验收标准而导致的情景。因为没有验收标准,你无法知道你要进行的任务需要一个什么样的结果,需要达到什么样的质量标准。在很多情况下,你的活动会与期望结果背道而驰,而此时的你还在沉醉于自己的辛勤耕耘之中。作为项目经理来说,只有制定好每个任务的验收标准,才能够严格把好每一个质量关、同时了解项目的进度情况。四、 默认无效原则你的项目成员理解和赞成项目的范围、目标和你所制定的项目策略吗?不少项目管理人员认为沉默意味着同意。实际上我们或多或少都会陷入这样的一个思维误区。试想一下,你作为职员或项目开发人员时的沉默完全代表你赞成你的领导的意见吗?不见得,这就是答案。这一点在项目沟通中极为重要,项目管理者切不可
11、为沉默认为是同意,沉默在很大的程度上说明项目开发人员还尚未弄清楚项目的范围、任务和目标。为此项目管理者还需要同开发人员进行充分沟通,了解开发人员的想法。在对项目没有一个共同的一致的理解的前提下,一个团队是不可能成功的。五、 80-20原则80-20原则在软件开发和项目管理方面有许多实例。其一便是我们在20的项目要求上耗费了80的时间。仔细分析一下,这些项目要求分为必须的非必须的,因此我们建议是压缩非必须的部分或是暂时将其放在一边不必太重视。软件项目开发事实告诉我们,开发人员在非必须的项目要求上耗费了太多的精力,用户的需求变更的大部分出现在最好有这一部分,实际上用户并不看重这些需求(即使去除这些
12、需求),而我们所做的,往往是舍本求末。80-20原则的另外一个实例是我们项目中的20的人员担当了80的项目任务(这样讲在实际实施中一点都不过分)。考虑到开发人员能力的多样性,聪明的项目管理人员决不会采取任务均分的愚蠢做法,因为就系统论的观点来看,互补结构比对等结构要更稳定一些。此外作为项目管理人员来说,了解属下员工的能力特点,将其放在合适的位置上,会更有利于项目的顺利进行。很多管理人员常常抱怨属下能力问题,究其实质,往往是这些项目管理人员未能发现开发人员潜能所在之处。她们看待问题往往以经验这样的思维定势来做决定。导致的结果如系统论所言:由于抱怨的作用和反作用循环,结果是大家都不欢而散。六、 帕
13、金森原则帕金森原则原是用于反映政府部门机构臃肿,效率低下的代名词。不过它在软件开发中一样适用。没有时限限制的话,工作可能无限延期。在软件开发中,如果没有严格的时间限制,开发人员往往比较懈怠。这是人的天性所决定的。千万不要指望奇迹的发生所有员工的思想觉悟异常崇高。作为项目管理者而言,此时应充分考虑到员工的工作效率和项目变更带来的负面影响,制定合理的项目工期并鼓动开发人员尽快完成。七、时间分配原则在项目计划编制过程中,我们常常将资源可用率(人、设备)等设置为100,殊不知你曾想过,由于开发人员需要休息、吃饭、开会等,根本不可能把所有的时间放在项目开发工作上,而且这还不考虑到开发人员的工作效率是否保
14、持在一恒定水平上。所谓一天8小时工时制实际上是徒有虚名。由于项目管理人员的无知,不少开发人员被迫拼命加班。结果依旧出现Brooks原则所出现问题。在实际开发中,开发员工的时间利用率能够达到80就已经时很不错的了,我个人比较倾向于60左右(黄金分割点)。一个常用的经验是如果项目人员不懂技术的话,项目时间可能是原计划(该计划没有考虑到资源可用率)的4/35/3。如果项目人员不懂技术、管理人员不懂管理的话,这个数字可能是2倍到3倍。现实就是这么严酷。这很大范围内归功于项目管理人员。是的,我们的确没有必要责备开发人员,因为我们对资源可用率的判断完全违反常识。八、变化原则也许有人问过你,在项目管理中唯一
15、不变的东西是什么?我可以告诉你,项目中唯一不变的就是变化。在项目中不考虑可能发生的变化是不可思议的。不过在面对项目可能发生变化而带来的项目风险时,我们的项目管理人员往往会怀有逃避的态度。经济学里大名鼎鼎的风险规避原则便是项目管理人员心理的有效描述。作为项目管理人员来说,应该及早预测可能出现的风险,做好风险储备。虽然风险储备不能解决所有的问题,但预防胜于治疗。可惜的是我们绝大多数人没有这方面的意识,否则医院的生意未必如此红火,项目开发之途未必如此坎坷。 第二章 怎样选择软件项目经理软件项目管理是以过程为核心、以度量为基础、以人为本的,在此过程中需要充分地集成技术方法、工具、过程、资源(人力、资金
16、、时间等)等要素,谁来领导这个集成工作呢?是项目经理。项目经理是项目组的灵魂,是项目组中很重要的一个角色,无论是什么时代,都必须依靠人来实现管理,这就是以人为本。无论管理多么正规,过程是对形式的管理,而内容的管理必须依靠个人的能力。 项目经理,是大多数软件公司中最难选的人。为什么呢?有实践经验又有理论知识的项目经理少之又少,而且即使有身价也比较高,所以在软件公里面勉强的项目经理比比皆是,有一定的开发经验,程序写的很好,有一定资历,虽然没有受过正规训练,也可能没有做过管理人员,但是没有办法,公司缺人,只好选他做项目经理了。当然,也不排除不具备上面的条件就做的很好的。99年我主管过1个成功的项目,
17、该项目是为我们的一个老用户开发一块外围的采购模块,挂接在财务系统中。该项目组的成员都是刚参加工作的本科毕业生,他们是第一次用DELPHI开发应用软件,项目经理也是他们其中一个比较有管理思想的员工,在上学时是学生干部,比较有组织能力,我做为项目主管,对项目组进行管理的指导,因为我也从未用DELPHI做过开发,可想而知,该项目的人员风险有多大!项目的需求分析请了一位有经验的老员工来做,并由该员工做出概要设计,详细设计、实现与实施都是由项目组来做,他们竟然在规定的时间里按照需求完工了!在去现场实施之前我都以为不应该这么顺利,结果在他们实施完毕的几个月里面,用户用的很好,只有几个小的地方对界面进行了调
18、整,没有进行软件的正确性维护!真是难以置信。为什么呢?在事后进行总结时,大家得出得结论是:我们是严格按照公司的软件工程规范做的。并非有经验的员工才可以做项目经理!新手一样可以成功! 那么,究竟如何来选择一个项目经理呢?我们先看一下项目经理的来源。 (1)专职的项目经理,比如说在公司里有项目管理部,专门是项目经理的派出机构,项目经理经过专业的培训与认证。 (2)兼职的项目经理,来源于某一个技术部门,如开发部或事业部,同时可以兼任其他岗位。 对于专职的项目经理,如果项目组中的成员有兼职的情况,即同一个项目成员可能同时参与多个项目,这时就存在资源竞争的问题,需要项目组之间进行协调,由于组员与项目经理
19、没有行政的隶属关系,因而项目的协调很成问题。对于第二种方式,往往项目经理只会对他熟悉的作业内容、熟悉的人员进行管理,名义上是项目经理,实际是个局部经理。因此在选择设置公司的组织结构时,在选择项目经理时要充分考虑上述的两种情形。 选一个合格的项目经理一个合格的项目经理,下面的要求是必须的: 公正无私 99年我主管过一个项目,该项目的项目经理在分配奖金时论资派辈,不按业绩,使得项目组中资历浅但是干活多的员工怨言很大,导致整个项目的积极性很差,最后不得不由我出面制定新的业绩评估办法。如果一个项目经理不能做到公正无私,他就难以服众,无法带好项目团队。 有良好的职业道德 2002年在我经手主管的一个项目
20、中,由于项目经理蓄意隐瞒了项目的真实进展情况,对用户的承诺没有兑现,而导致用户不信任他,向公司提出了撤换项目经理的要求。用户对于项目有知情权,给用户暴露出问题不一定是坏事,因为只要大家能够互相理解,才能保证项目的顺利进展。如果明知完不成进度,而故意隐瞒了真相,当然是要受到惩罚的。 具有管理的基本技能与知识 要做一个好的项目经理,他肯定要好好的学习一些关于项目管理的基础知识,进行项目管理的技能训练,既要有管理意识,还要有管理的基本技能,要心有余且力也有余。 具有很好的沟通与表达能力 项目经理要和方方面面的人员沟通,包括项目组内的人员、市场人员、用户、上级主管,也要和各个层次的人员打交道,为了项目
21、的成功要通过沟通交流消除来自各方面的阻力。譬如,一个系统集成的项目,在用户现场布线时,你可能要和用户的工程主管、电工、施工队等各种角色沟通,否则,可能因为很小的问题,你的系统就要失败。 有很强的分析问题解决问题的能力 项目经理要能够通过现象看到本质,通过细节发现大问题,发现问题后要果断采取措施,而不是延误时机。如果一个项目经理对问题比较麻木,不能防微杜渐,那么就谁都可以做项目经理了! 懂技术,不要求精通,但是要全面 这可能是争议比较大的一个原则,因为如果按此原则执行,那些拿到PMP证书的专职项目经理如何找工作?使用不懂技术的项目经理我也曾经尝试过,用过一个不懂开发的人来做项目经理,他主要对项目
22、的进度负责,进行项目组内外的协调,但是为了弥补其不足,必须还要给他配一个助手专门负责技术。对于大的项目这种方式是可以的,对于小的项目而言肯定不能这样做,否则就会出现资源浪费,项目经理的工作量不饱满。所以我的意见还是要使用懂技术的项目经理,这样他能清楚地知道组员在做什么、做的怎么样,能够发出正确的方向性指令,而不是瞎指挥,外行领导内行。 谦虚,不能不懂装懂 有的项目经理搞一言堂,听不进去大家的意见,而且不懂装懂。有一位软件公司的人力资源部经理向我诉说了他们公司由于软件项目经理选择不当而带来的烦恼。2001年他们公司聘用了一位项目经理,该项目经理被程序员们冠以外行领导内行的帽子,团队中绝大多数成员
23、对他非议很多,他也听不进去别人的意见,从而使项目团队的效率很低,项目的质量很差,系统开始实施后,就陷入到大量的纠错改错的泥潭中。 平易近人,不要摆架子 如果你的项目经理不能做到这一点,你肯定会对这样的项目经理很反感的!你也不会去和他很好地沟通的,当然项目组的效率也不会很高的。以上是对项目经理的基本要求,如果他能够在此基础上还有其他更好的优点,当然应该选中他。 选了一个好的项目经理,如何用好他呢?给项目经理充分授权 在软件企业里面,一般有2种类型的组织结构: (1)事业部制:在事业部里面包含一个产品生命周期的所有职责:产品开发、产品客户化、项目实施、产品的售后服务、市场、渠道等。(2)功能部门制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浅谈 软件 项目 管理 原则
链接地址:https://www.31ppt.com/p-5000553.html