商业目标决定软件开发之道市公开课一等奖省赛课获奖课件_第1页
商业目标决定软件开发之道市公开课一等奖省赛课获奖课件_第2页
商业目标决定软件开发之道市公开课一等奖省赛课获奖课件_第3页
商业目标决定软件开发之道市公开课一等奖省赛课获奖课件_第4页
商业目标决定软件开发之道市公开课一等奖省赛课获奖课件_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

商业目标决定软件开发之道

——将商业智慧引入软件工程与项目管理

商业目标决定软件开发之道第1页目录1.软件危机新了解

2.企业-产品-人3.企业根本目标4.企业根本目标决定产品开发之道和用人之道5.软件产品开发之道:开发正确产品6.软件产品开发之道:正确地开发产品7.怎样组建软件开发团体8.怎样管理软件开发团体

参考书:《软件工程与项目管了解析》,林锐著,电子工业出版社,商业目标决定软件开发之道第2页1.软件危机新了解1.1当代软件危机特征

IT产业已经逐步发展成为中国支柱产业之一,然而充满活力、优异软件企业太少了(苛刻地讲,十个手指头就能瓣完),绝大多数软件企业长久面临“产品质量低下、进度延误、成本高昂”共性问题,就像患了恶劣慢性病,无法根除。

太多原本雄心勃勃软件企业并没有战死在沙场上,而是被恶病折磨得奄奄一息直至颓然逝世。IT产业利润和前景实在是太诱人了,没有取得免疫力新企业又如雨后春笋般地诞生,前仆后继,延续着相同故事。

三十年多前(1969年),NATO会议把这种病称为“软件危机”。三十多年过去了,这种病依然存在,之所以不再危言耸听,是因为人们已经司空见惯、习认为常了。而且适应了极度浪费社会财富“快速诞生、快速死亡”企业生存方式。软件危机一直就在我们身边。1.2为何长久克服不了“软件危机”?

莫非是国内大学计算机教育太差劲了?莫非是软件人才不够?莫非是书籍资料不够造成人们不懂软件开发、不懂管理吗?莫非是政府对IT产业扶持不够?莫非社会对IT产业投资不够?尽管中国还不是发达国家,但平心而论,当今软件企业生存环境真是太好了,找不出象样借口来推卸失败责任。内因决定外因,是大部分软件企业内功太差,以至成为扶不起阿斗。中国教育界和工业界长久失误:大学教育以填鸭方式给学生灌输技能,却忽略了传授思想和方法;学生们埋头学习,不知学以致用,离开学校后对企业、产品、人生一片茫然;企业以混乱甚至错误方式开发产品,重复着前人失败而不是成功。这就是产生“软件危机”真正根源。

商业目标决定软件开发之道第3页2.企业-产品-人

2.1知识框架在软件行业,“企业-产品-人”这三个主体组成了复杂系统,普通性知识框架如图1所表示。假如人们不明其理而行事,必定会对系统造成伤害。图1“企业-产品-人”系统知识框架商业目标决定软件开发之道第4页2.企业-产品-人

2.2方法论与模式教育界和工业界应该研究和推广让“企业-产品-人”走向成功“方法论和模式”,这是处理“软件危机”最有效方法。意义:让人们少走弯路,少经历没有价值挫折,从而在有限生命年华里做出尽可能多贡献方法论是用于指导人们处理问题系统性思想方法,而不是一堆孤立方法、技术集合。方法论主要研究“是什么”、“为何”、“怎么办”这类基本问题。当人们掌握方法论之后,就能够在实践过程中产生出处理特定问题方法。

模式描述了在我们周围不停重复发生问题,以及该问题处理方案关键,这么你就能一次又一次地复用该处理方案而无须从头开始研究。在技术开发领域,人们总结了不少很有价值模式,比如设计模式、编程规范、文档模板等等,被业界人士广泛采取,大大地提升了工作效率。人们期待更有价值模式,那就是让“企业-产品-人”走向成功模式。

下文将探讨“企业根本目标、产品开发之道、用人之道”这三个论题,尝试提出系统性观点、论断,为研究软件工程和项目管理方法论和模式打下基础。商业目标决定软件开发之道第5页3.企业根本目标

3.1论断学过法律人都知道:宪法是国家根本大法,是立国之本,任何普通法律法规都不得与宪法相抵触。企业根本目标是“正当地赚取尽可能多利润,使企业利益最大化”。这个根本目标就如同企业“宪法”,是企业生存和发展之本。企业全部特定目标和行动都是围绕上述根本目标开展,任何背离根本目标行动都将对企业造成伤害,应该杜绝。

假如企业主不明白这个道理,企业必定会很快倒闭。假如广大员工不明白这个道理,企业必将岌岌可危。

上述文字简单朴实,没有任何玄妙之处,似乎任何人都看得懂,不过我敢断言:除了极少数天生商人之外,绝大多数人在遭受第一次商业挫折之前不会深刻领悟这一点。3.2强烈反差我们从小到大接收自闭政治教育太久了,被灌输幼稚口号太多了,以至于长大成人后依然极度缺乏商业智慧。

企业根本目标莫非不是为了振兴民族产业、为国家多做贡献吗?开发人员追求莫非不是最先进技术吗?(解释为何)企业本性就是惟利是图,而不是救国救民,不论大企业还是小商贩都一样。不论是“姓资还是姓社”,企业改革主要目标就是让企业回到盈利这个正道上来。违反企业根本目标做法注定是要失败。(解释国企包袱)理工科大学生、硕士生、博士生们(国家栋梁之才)几乎毫无商业智慧,连小商贩都不如。商业目标决定软件开发之道第6页3.企业根本目标

3.3案例分析:巨人企业(史玉柱)建造巨人大厦故事企业最初决定建造一栋18层科技大楼,供员工们办公用。各级政府领导时常光临巨人企业,少不了题词、表彰、勉励和指示。一些政府领导提议巨人企业为珠海建一座标志性大厦。结果每一批领导视察之后,巨人企业虚荣心就膨胀一次,不停提升大楼高度。为了给本市、本省乃至本国争光,充满浪漫主义色彩巨人企业决定建造70来层摩天大楼。…最终企业现金断流,风华正茂巨人企业一夜之间瓦解经济学研究人员精辟评论:假如一个明星企业经常受到政府各级领导视察和表彰,那么企业就会干蠢事,它离死期就不远了。

警示:企业根本目标决定了企业必须专心致志地盈利,企业人士要理智地躲避伪善社会事务,预防企业被非目标事务拖累。林锐读博期间第一次创业失败故事获取荣誉太多,思想中毒太深。发自内心地“以振兴民族软件产业为己任”。把微软企业当对手:构思了一套三维图形系统,该系统下至开发工具、上至应用软件无所不包,准备击败微软企业二维操作系统。

整天忙于开发那个振兴民族产业软件,结果不到一年就把企业30万元资金用个精光,不过没有卖出一份软件,所以企业啥都没振就倒闭了。

让我们回顾电影《甲方乙方》里冯小刚年底工作汇报,作为企业根本目标喜剧解释:

同志们,我们推出“美梦一日游”深受广大群众喜欢(墙上挂满了群众们送旌旗)。大家工作都很勤奋,客户越来越多,不过我们挣钱却越来越少了。(企业)再办下去就成了慈善机构,所以大家只好散伙。

商业目标决定软件开发之道第7页4.企业根本目标决定产品开发之道和用人之道

4.1产品开发之道两个内涵开发正确产品:即开发能为企业赚取利润产品;正确地开发产品:即努力使产品为企业赚取尽可能多利润。4.2企业用人之道两个内涵用正确人:即利用能为企业赚取利润人;正确地用人:即努力使人为企业赚取尽可能多利润。4.3决议与执行观念“开发正确产品”和“用正确人”属于企业决议过程。“正确地决议”是企业各级领导第一职责。

“正确地开发产品”和“正确地用人”属于企业执行过程。“正确地执行”

是企业各个团体第一职责。

决议和执行之间关系是战略与战术之间关系,二者相辅相成,缺一不可。企业成功是建立在“正确地决议”和“正确地执行”基础之上。任何错误决议、错误执行都可能造成产品失败,进而造成企业倒闭,所以切勿在企业里鼓吹“失败是成功之母”。

在决议过程和执行过程中,人们总是会碰到各种各样困难,任何优化和折衷办法都是围绕“企业利益最大化”这个根本目标开展。

商业目标决定软件开发之道第8页5.软件产品开发之道:开发正确产品

5.1开发正确产品所谓“开发正确产品”是指“开发能够赚取利润产品”。对于企业而言,评判产品“对错”标准就是“能否盈利”。政府每年给大学科研机构投资很多钱,允许人们去研发不盈利东西,比如很多自然科学基金项目标考评目标是学术水平而不是经济效益。不过企业职能和大学科研机构完全不一样。企业只能开发“能够赚取利润”产品,赔钱产品不能开发。疑问:一些国际著名大企业拥有自己研究机构,比如贝尔试验室、IBM研究院、微软研究院等等。这些机构学术水平极高,企业花巨款让那些天才们研究一些看似不盈利东西,岂非违反企业根本目标?

解答:科学技术是第一生产力。为了提升企业科技竞争力,国际著名大企业不得不花巨款从事超前研究。那些超前研究结果通常没有短期经济效益,不过可能在很快未来被大规模地应用,从而产生巨额利润。当然不少研究结果可能永远都不会产生经济效益,这就是科研投资风险。世界范围内科技竞争非常激烈,有些关键性技术往往决定了企业命运。万一竞争对手在科技上领先一步,马上就会占领市场主要份额,自己就面临被淘汰危险。比如当前几乎全部大型电信企业都在研究3G(第三代移动通信),简直能够用豪赌来形容。所认为了让自己在未来能够活下去而且活得更加好,大企业不得不花巨款从事超前研究,这是战略投资。对于普通中小企业而言,它们只能干些力所能及事情。假如采取成熟技术就能够做出能盈利产品,那就没有必要自己研究新技术,尽可能地降低风险。判断一个构想中产品是否能给企业带来利润,这绝对不是一件轻松事情,千万不能依赖于少数领导人拍脑袋决议方式。“开发正确产品”这种决议过程叫“立项管理”。商业目标决定软件开发之道第9页6.软件产品开发之道:正确地开发产品

6.1概念

基本要求:项目团体在预定时间和成本之内,开发完成合格产品;努力方向:项目团体尽最大努力把产品做得好、做得快而且少花钱。“质量、效率、成本”通常是衡量产品开发过程优劣三个关键指标。普通说来,质量、效率、成本之间存在反抗关系。俗话说“一分钱一分货”,人们买东西时候大多认可“质量越好价格就越高”。再如俗话“慢工出细活”,言下之意是提升质量将使生产率降低。依据常识可知,要想同时提升产品质量、效率而且降低开发成本是非常不轻易。6.2关于软件质量

软件质量属性很多,如正确性、准确性,健壮性、可靠性、容错性、性能、易用性、安全性、可扩展性、可复用性、兼容性、可移植性、可测试性、可维护性、灵活性等。对于一个特定软件而言,我们首先要判断什么是它质量要素,才能给出提升质量详细办法,而不是一股脑地想把全部质量属性都做好,不然不但做不好,还可能得不偿失。简而言之,能成为卖点质量属性才是质量要素,才值得开发人员关注。

提升软件质量最终目标为了获取尽可能多利润,而不是出于对完美质量追求;假如一些质量属性并不能产生显著经济效益,我们能够忽略它们,把精力用在对经济效益贡献最大质量要素上。

缺乏商业经验开发人员往往因为单纯而傻得可爱,却因幼稚而傻得可笑。(以设计可扩展性和兼容性为例)

商业目标决定软件开发之道第10页6.软件产品开发之道:正确地开发产品6.3关于效率

企业总是希望产品上市时间越短越好,这么能够抢占市场。对于协议性项目而言,开发方应该在协议指定期限内交付软件,不然违约话将损害双方利益。所以对于企业而言,时间就是金钱。

在正常情况下,开发团体工作效率是决定产品实际开发时间主要原因。所以提升工作效率是企业获取更多利润有效路径。在旧社会,资本家工厂里都有监工,监工职责就是让工人们不停地干活,在给定时间内生产出更多东西。

提升工作效率前提条件是全部工作结果质量必须合格。不然,工作效率越高,软件中缺点就越多,那么用于测试和维护代价也越高,得不偿失。所以提升质量、提升效率都不是喊口号,要依据企业目标和当前实力,量力而行。

在不对质量和成本产生负面影响前提下提升工作效率,这才是真本事,常见办法有:提升项目组员工作技能。使他们在开发产品时不但做得好而且做得快。制订适当软件过程。软件过程定义了做事主要步骤,假如过程混乱,做事颠三倒四话,势必伤害生产率。提升复用程度。复用就是指“利用现成东西”,软件中能够复用对象有设计模式、代码库、文档模板等等。软件人员应该知道复用他人留下成熟可靠结果(可能要花钱去买也可能是无偿),而且还要给自己留下能够在未来复用东西。

使用高效率开发工具和管理工具。商业目标决定软件开发之道第11页6.软件产品开发之道:正确地开发产品6.4关于成本普通地,开发成本和维护成本是软件主要成本组成。除了软硬件基础设施成本外,人力资源成本占了开发成本主要百分比。人力资源成本等于雇员工资乘以工作时间,所以企业招聘员工理想状态是:以最低工资招聘恰好满足工作需要人(比如国内日企和台企)。另外,设法提升工作效率以降低总开发时间,从而降低人力资源成本。人们经常关注开发成本而忽略了维护成本。对于一个有信誉企业,假如卖出去软件产品中有错误,那么就有义务修改错误。软件刚卖出去时候,销售价格必定比开发成本高,看起来是赚了钱。不过假如软件质量比较差话,那么维护成本将是个无底洞,完全有可能把先期赚钱给消耗光。所以人们不可为了压缩开发成本而放弃软件测试、技术评审等质量检验活动。前期偷懒将使后期遭殃。阐述“CostPrice”和“MarketingPrice”概念。在绝大多数情况下,设法降低成本将有益于企业获取更多利润,但并不是绝正确。企业有短期目标和长久目标之分,为了使企业利益最大化,在一些时候企业会不惜成当地去抢占市场,以使未来获取更多利润。产品决议者一定要搞清楚质量、效率、成本之间复杂关系,判断孰重孰轻,给出优化和折衷办法。

商业目标决定软件开发之道第12页6.软件产品开发之道:正确地开发产品6.5关于软件过程改进普通地,在软件开发过程中,工程类过程域主要有:需求开发、系统设计、软件实现、软件测试、软件维护等等;管理类过程域主要有:项目规划、项目监控、需求管理、质量管理、配置管理等等。上述过程域中任何活动都会影响产品质量、生产率和成本。从20世纪90年代起,软件过程改进成为软件工程和项目管理交叉学科主流研究方向。软件过程改进目标就是“提升产品质量、提升工作效率和降低开发成本”。业界实践证实,走规范化之路是成本最低、见效最快、能连续发展软件过程改进方法。

请读者参考《CMMI3级软件过程改进方法与规范》。商业目标决定软件开发之道第13页7.怎样组建软件开发团体7.1组建团体基本流程首先了解产品开发需求,从而确定团体人员需求,然后物色符合需求人才,最终建立团体。团体人员从哪里来?通常先在企业内部挑选,最大程度利用现有人力资源。假如企业内部不能满足要求话,再经过社会招聘获取人才。

团体人员结构是金字塔形,能够简单划分为三层:团体领导、关键组员和普通组员。比较合理人员百分比为:团体领导不超出10%(当官不能太多),关键组员占30%左右,普通组员占60%左右。

产品开发需求项目人员需求物色人才建立团体关键组员普通组员团体领导10%30%60%商业目标决定软件开发之道第14页7.怎样组建软件开发团体7.2关于人才几个观念只有为企业创造效益高于企业为其付出成本那些人,才是企业所需人才。(不论其学历和职称)团体需要优异人才。软件开发是智力创作而非体力劳动,优异人才创造力比平庸之人要高得多,假如团体没有优异人才,几乎不可能开发出有竞争力产品。优异人才要价通常比较高,不过他物有所值。团体中优异人才并不是越多越好,优异人才太多反而有更大弊端。一是人力成本太高,他们可能消耗掉产品创造大部分效益,那么就不划算了。二是团体分裂风险太高,因为团体空间有限,无法同时满足很多优异人才事业发展欲望;当这个矛盾激化时,优异人才内讧将产生极大破坏力。“一山不容二虎”就是这个道理。所以,团体中优异人才恰好够用就行。

商业目标决定软件开发之道第15页7.怎样组建软件开发团体7.3物色团体领导

软件开发团体领导应该具备四项素质,按级别从低到高排列:不错技术才能,较强管理能力,丰富产品开发经验,敏锐商业头脑.

对于项目经理而言,终究是技术才能主要还是管理能力主要呢?

业界不存在判断准则,人们也没有必要过多地争论,应该视项目标规模和复杂性而定。假如项目标技术难度很高,不过规模很小,只有几个人干活,那么领导者技术才能比管理才能愈加主要。反之,假如项目标技术难度不高,不过规模比较大,只要团体组员超出十人,那么领导者管理才能比技术才能愈加主要。

企业在物色重大团体领导时,不但要考查候选人技术才能和管理能力,尤其要关注商业头脑和产品开发经验。商业头脑是团体领导最主要素质。有商业头脑领导能够率领团体朝着最盈利道路前进,即使碰到一些坎坷,也无碍于最终成功。反之,缺乏商业头脑领导通常不知道产品卖点是什么,却一味在技术方面下功夫,经常让团体干些不盈利南辕北撤事情。假如团体领导有丰富产品开发经验,那么他就能复用以前成功经验,能够躲避失败风险。当项目遭遇一些意外困难时,他自己不会手忙脚乱,能够从容地率领团体克服困难。简而言之,假如你想成为普通团体合格领导者,你应该具备不错技术才能和较强管理能力。假如你理想更大,想成为“将帅之才”,那么你必须具备丰富产品开发经验和敏锐商业头脑。商业目标决定软件开发之道第16页7.怎样组建软件开发团体7.4物色团体关键组员领导者应该从团体里面挑选出一些关键组员,为自己分担压力。不但分配主要任务给他们,而且也要给他们更多利益。区分“关键”与“普通”要素是“才能、责任心、忠诚度”。让才能出众、责任心强人成为关键组员这是顺理成章,无需解释大家都明白。不少人对“忠诚度”有疑狐,以为这是鼓吹“拉帮结派、玩权术”。大家无须忌讳“忠诚度”这个词,世上没有哪个领导不“拉帮结派、玩权术”,不然他怎么能够巩固地位、向上发展呢。只要他拉对了人、玩对了权术,这就是他领导水平。英明领导不但让那些才能出众、责任心强人成为关键组员,而且还有魅力使关键组员忠诚于他,从而使团体越来越强,大家事业发展越来越好。反之,平庸领导经常重用亲近自己不过才能平庸、责任心不强人,当他自己陷入困境时候,团体就“树倒猢狲散”。商业目标决定软件开发之道第17页7.怎样组建软件开发团体7.5物色团体普通组员任何组员都会对项目产生影响,有正面也可能有负面,所以团体领导也要专心物色普通组员。假如把关键组员比作医生,那么普通组员就相当于护士,好医生加上好护士才能把医务工作做好。选择普通组员主要指标是“技能合格、安分守己、任劳任怨”。技能合格是最低要求,因为招聘他来是干活,而不是摆在那里看。安分守己是指这个人比较老实,不搞破坏也没有非分之想。安分守己组员让领导放心。安分守己向前一步就是任劳任怨,不但让人放心而且让人感动。任劳任怨是指领导让他干啥他就认真地干啥,即使很劳累、没有多少成就感,他也愿意。任劳任怨这种美德只有普通人员才可能具备,因为优异人才只会对自己追求东西倾注热情,极少对上级指派工作任劳任怨。

任劳任怨普通组员即使在事业方面缺乏成就,不过很值得交朋友。朋友远近是用情感而不是用功利来衡量。不论你领导才能多么出众,在你强盛时期,你要专心照料那些任劳任怨普通组员,让他成为你朋友。而当你脆弱之际,他们会回馈给你友情,帮你走出心灵困境7.6小结:就如人们找对象一样,你极难找到心目中完美人,你当前所拥有其实就是最符合你。在现实中,物色人才不要太挑剔,不要期望太高,甚至聚散离合都是正常现象,因为你不可能让全部理想中好人全聚集在一个团体之中。主要是利用现有条件组建一支能战斗团体,向目标前进并努力获取胜利。商业目标决定软件开发之道第18页8.怎样管理软件开发团体8.1团体管理目标与策略基本目标:让全部组员有条不紊地开展工作,在预定时间和成本之内,开发完成质量合格产品,从而使企业和个人取得预定利益。

努力目标:调动一切主动原因,努力提升产品质量、提升工作效率而且降低开发成本,使企业和个人取得比预定目标更多利益。

策略:大部分管理工作是成熟,有成功模式能够套用,应该走规范化管理路线;而另外小部分管理工作可能是富有个性,并不宜套用规范,那么应该采取超越规范化管理方式。规范化正面意义是“稳定有序”,负面意义是“僵化死板”。超越规范化正面意义“高效灵活”,负面意义是“混乱无序”。

团体管理既需要大量规范化管理方式,又需要小量超越规范化管理方式。通常前者约占80%,而后者约占20%(注意80-20仅仅是参考数据)。

国内大部分软件企业管理现实状况是:规范化管理太少了,非规范化管理太多了,处处都是土匪游击队运作方式。妨碍中国软件企业发展瓶颈问题通常不是技术,而是杂乱无章管理,这个共性问题值得业界人士高度关注。

商业目标决定软件开发之道第19页8.怎样管理软件开发团体8.2规范化管理规范化管理有两层含义:首先制定工作规范,然后按照规范开展工作。软件团队主要工作包含了技术开发和管理,所以至少需要两类规范。一类是软件技术开发规范,它规定了如何开展需求分析、系统设计、编程、测试等工作;另一类是项目管理规范,它规定如何开展项目规划、项目监

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论