1、http:/ 13651671543 上上 海海 漫漫 索索 计计 算算 机机 科科 技技 有有 限限 公公 司司软件和互联网企业研发管理问题和对策软件和互联网企业研发管理问题和对策理念和问题分析理念和问题分析流程改进流程改进管理平台管理平台林林 锐锐 博士博士第1页,共22页。Page 2目录目录1.从从“无农不稳、无商不富无农不稳、无商不富”谈研发和盈利模式谈研发和盈利模式2.企业研发管理的理念企业研发管理的理念3.组织结构和人力资源管理问题组织结构和人力资源管理问题4.产品生命周期管理问题产品生命周期管理问题 5.项目管理问题项目管理问题 6.技术开发问题技术开发问题 7.跨部门协同工作
2、问题跨部门协同工作问题 8.管理工具问题管理工具问题 9.互联网企业的研发弊病互联网企业的研发弊病 10.对策:研发管理流程改进对策:研发管理流程改进11.对策:集成化研发管理平台对策:集成化研发管理平台第2页,共22页。Page 31.从从“无农不稳、无商不富无农不稳、无商不富”谈研发和盈利模式谈研发和盈利模式1.1 1.1 软件企业的优缺点软件企业的优缺点中国目前拥有世界第一大手机用户市场,世界第二大互联网用户市场,IT产业已经成为中国第一大支柱产业。软件是IT产业的灵魂,随着计算机和互联网的进一步普及,各行各业对软件的需求日益增大。传统软件企业的业务大体有两类:“承接合同项目”和“自主开
3、发产品”。为了满足各种客户的需求,开发方总是不断地付出新的成本,导致每个合同项目或者每个产品都无法产生大规模的倍增效益。加上国内用户的版权意识淡薄,软件市场恶性竞争,所以在这种模式下的中国软件企业大部分都是穷光蛋。用“务农”来比喻传统软件企业最贴切不过了:干活像农民一样辛苦,利润低得像农产品,还要被客户呼来唤去、经常受气。软件人员的称谓发生了悲剧性的变化,90年代叫“软件白领”,2000年初改为“软件蓝领”,现在叫“软件民工”。传统软件企业也有一些优点:企业虽然不富有,但是可以低调地活下来,很少发生烧钱、破产现象;员工们虽然干活辛苦,收入不高,但是会干苦力活的人在任何时候总会有饭吃的,而且这种
4、环境最能够锻炼人(例如需求分析、设计、编程、测试、维护、项目管理、营销等全让你经历过),有上进心的人可以锻炼成为高级人才,将来挑大梁。第3页,共22页。Page 41.从从“无农不稳、无商不富无农不稳、无商不富”谈研发和盈利模式谈研发和盈利模式1.1.2 2 互联网企业的优缺点互联网企业的优缺点互联网企业是利用互联网开展服务的企业,其消费者是广大网民。互联网企业可以将服务直接送到消费者面前,不需要中间环节,如果互联网企业具有高超的运营本领,它可以充分享受到“复用”带来的规模效益。对于某项服务来说,用户数量的增加不会导致研发成本明显增加,通常只需要增加相应的硬件投入即可。例如下载彩铃,1万个用户
5、和100万个用户的总体成本差别不大,而后者的销售收入却是前者的100倍。所以互联网业务能够产生大规模的倍增效益。把传统软件公司比喻为“务农”型企业,互联网企业则是“经商”型企业。“经商”会大起大落,赢了发大财,输了血本无归,虽然有很高风险,但是高收益吸引很多企业去冒险。随着互联网的进一步发展,软件产业的模式必将发生翻天覆地的变化,IPv6提供了无穷多的IP地址,家家户户都有宽带接入,无线通信通畅无阻,那个时候人们还要像现在这样购买操作系统、数据库、办公软件吗?不需要了,一切软件都将在互联网上运行,为人类提供在线的服务!在这个进化过程中,互联网企业和软件企业都能从对方学到自身不具备的东西,然而大
6、部分墨守成规、不与时俱进的公司将被淘汰。第4页,共22页。Page 51.从从“无农不稳、无商不富无农不稳、无商不富”谈研发和盈利模式谈研发和盈利模式1.1.3 3 无农不稳、无商不富的理念无农不稳、无商不富的理念一个国家如果农业很差,老百姓经常没有饭吃,那么国家就会动荡不安。反之,如果国家成天务农,不发展商业,那么国家就不会富裕,就会落伍。这是“无农不稳、无商不富”的内涵。这句话同样适合于软件产业。广大软件人员应当具有“务农”的朴实心态,要踏踏实实地把研发基础打好,如果没有扎实的基础,即使好机会来了也抓不住、发不了财。软件企业既要开展传统的软件业务(务农保生存),又要尝试互联网的运营业务(经
7、商谋发展),沿着“农商结合”的道路发展。作者并非喊喊口号而已,我自己的公司也一边经营传统软件业务,一边朝互联网运营发展。以前我公司的主要业务是为IT企业提供研发管理解决方案(包括咨询和软件工具),每次签订一个合同,我都要花费2个月的时间去客户公司提供服务,为了提高客户的满意度,常常把自己弄得筋疲力尽。尽管大部分的客户敬重我、不会刁难我,但是我自己感觉也像个民工,很劳累,一年做不了几个合同,效益不高。经过长期摸索思考后,我们决定开辟新的业务,把企业研发管理放到互联网上运营,目标客户群是广大中小企业或者个人用户,他们将以比较低的费用租用基于互联网的集成化研发管理平台,不仅降低了用户的成本,也降低了
8、我公司的服务成本。同时我公司保留传统的销售和服务模式,目标客户群是少数的中大型企业。希望不久的将来,我能够获得成功的经验,再和大家分享。第5页,共22页。Page 62.企业研发管理的理念企业研发管理的理念2.1 2.1 目标目标企业的根本目标是企业的根本目标是“合法地赚取尽可能多的利润,使企业利益最大化合法地赚取尽可能多的利润,使企业利益最大化”。企业所有的特定目标和行动都是围绕根本目标开展的。根本目标进一步决定了企业研发管理的目标和策略。企业研发管理的基本目标是:让所有人员有条不紊地开展工作,在预定的时间和成本之内,让所有人员有条不紊地开展工作,在预定的时间和成本之内,开发完成质量合格的产
9、品,从而使企业和个人获得预定的利益开发完成质量合格的产品,从而使企业和个人获得预定的利益。企业研发管理的奋斗目标是:调动一切积极因素,努力提高产品质量、提高工作效率并且降调动一切积极因素,努力提高产品质量、提高工作效率并且降低成本,使企业和个人获得比预定目标更多的利益低成本,使企业和个人获得比预定目标更多的利益。2.2 2.2 质量、进度(时间)、成本质量、进度(时间)、成本“质量、进度(时间)、成本”通常是衡量企业研发管理“优劣”的三个关键指标。不同的企业,甚至同一企业在不同时期,对三者的重要性看法是不一样的。如果出现“三者难以同时兼得”的情况,那么产品的决策者一定要搞清楚质量、进度(时间)
10、、成本之间的复杂关系,判断孰重孰轻,给出优化和折衷的措施。2.3 2.3 规范化规范化 vs.vs.超越规范化超越规范化在企业里,大部分的工作是成熟的,有成功的模式可以套用,应当走规范化的路线;而另在企业里,大部分的工作是成熟的,有成功的模式可以套用,应当走规范化的路线;而另外小部分的工作可能是独特的,并不适宜套用规范(也可能没有规范可以套用),那么应外小部分的工作可能是独特的,并不适宜套用规范(也可能没有规范可以套用),那么应当采用超越规范化的管理方式。当采用超越规范化的管理方式。通常前者约占80%,而后者约占20%第6页,共22页。Page 73.组织结构和人力资源管理问题组织结构和人力资
11、源管理问题常见问题:组织结构和项目的矩阵关系,职能经理和项目经理对团队的交叉管理、平衡问题。项目经理之上的领导太多。能干的人都是搞管理了,谁在第一线干活?浪费高级人才岗位和职责不清晰,而且经常变动,好多人不清楚自己的岗位和主要职责。责、权、利不明。(每个岗位只要定义前3项职责就可以了,避免重叠,避免推卸责任)绩效考核的问题:企图用KPI取代研发管理;设定什么指标和绩效提取的问题。缺乏竞争和激励机制营销、研发、服务没有很好衔接。组织结构的指导原则是:勿设虚职减少(避免)交叉管理减少管理层次岗位职责要精炼第7页,共22页。Page 84.产品生命周期管理问题产品生命周期管理问题常见问题:不清楚“产
12、品生命周期”和“项目生命周期”之间的关系,不清楚产品管理和项目管理的区别与联系。缺乏“产品生命周期阶段划分和决策评审”的详细操作指导书,不能有效地开展决策评审和技术评审。大型企业内部可能有一些机构在推行ISO9000,CMMI,PACE,RUP等方法,越做越复杂,难以产生广泛认同、简单有效的思想方法,难以提高管理效率。不清楚“软件配置管理”、“文档管理”和“BOM表管理”的区别和联系,甚至错误地使用工具。没有掌握“研发过程的变更控制”和“生产过程中的变更控制”。第8页,共22页。Page 95.项目管理问题项目管理问题项目经理水平问题(职业化问题)项目经理的财务权问题(只有带头干活的权力,没有
13、用钱的权力)立项管理问题自主研发项目:缺乏“调研,可行性分析,立项建议,决策评审”,主要靠公司领导独断,团队只知道干活,却不了解产品的开发背景,不清楚用户期望的产品应该是什么样的。在开发过程中经常迷失方向,导致进度延误、费用超支等问题。合同项目:需求不清晰、合同内容空洞;双方在签订合同的过程中给出了一些空头承诺(例如对进度、质量、费用的估计过于乐观),在实际执行时却难以兑现这些承诺。结项管理问题人们往往对财务和设备进行了详细的清算,却忽视了对知识财富、经验教训的总结。没有对项目的价值进行评估,开发人员干完活后,不知道自己的工作成果产生多大的效益,缺乏成就感。结项后,不能对员工的业绩进行公正考核
14、,自然不能很好地激励员工。第9页,共22页。Page 105.项目管理问题项目管理问题项目规划和监控问题许多项目经理肩负重要的软件开发工作,他们往往把注意力集中在开发上面,很少认真考虑如何进行项目规划和监控。没有突出项目监控的重点,项目经理要么什么都不监控(导致项目失控),要么监控得太多而陷入琐碎事务中。项目经理写周期性项目进展报告时,记流水帐,或者复制上次的报告,应付了事。懒得动脑筋分析项目遇到的一些问题,例如某些任务的进度延误了,不分析为什么延误了,就顺延。导致问题越积越多。项目实际执行情况与原定的项目计划严重脱节,领导、客户、市场人员、开发团队不了解项目真正的状况,使项目计划行同虚设。软
15、件配置管理问题有些软件机构竟然不使用软件配置管理工具,用最原始的方式手工管理代码和文档,经常出现“成果丢失、版本混乱”等问题。不少机构按照的CMM的要求制定了配置管理规范。该规范在理论上比较完善,面面俱到,但是实际操作比较麻烦,没有突出重点。久而久之,人们厌烦后就逐渐放弃了规范,按自己的习惯操作,留下了隐患。例如不少程序被 checkout 后长久没有 checkin;有些程序保留在开发者本机,根本就没有放入配置库。维护期间修改了程序,但是没有放入配置库。第10页,共22页。Page 115.项目管理问题项目管理问题软件质量管理问题虽然人们大都认可软件的质量很重要,但是许多软件人员并不懂得如何
16、有效地改善软件质量属性如正确性、健壮性、可靠性、性能、易用性、安全性、可扩展性、可复用性、兼容性、可移植性等等。不会分析当前软件的质量要素是什么,没有把精力集中在改善对经济效益贡献最大的质量要素上面。没有把精力集中在改善对经济效益贡献最大的质量要素上面。有些软件机构没有软件质量管理的措施,开发人员把完成功能当成终极目标没有软件质量管理的措施,开发人员把完成功能当成终极目标。用户在使用软件的过程中发现许多Bug,导致开发方的纠错性维护代价很高。有些软件机构虽然很重视软件质量,按照按照ISO,CMM 的要求建立了管理规范,但是效果不明显的要求建立了管理规范,但是效果不明显。人们搞不清楚软件测试、技
17、术评审、质量保证的作用和关系。不懂得内建质量,主要靠修补错误的方式提升质量,代价比较高不懂得内建质量,主要靠修补错误的方式提升质量,代价比较高。很多人误以为提高软件质量是质量保证人员和测试人员的责任,没有意识到任何开发人员、管理人员都会误以为提高软件质量是质量保证人员和测试人员的责任,没有意识到任何开发人员、管理人员都会对质量产生影响,都要对质量负责。对质量产生影响,都要对质量负责。另外,质量保证人员的权力比较小,很难推动质量改进措施。变更管理问题经常随意变更需求、设计、代码等,严重影响项目的正常开发进程。无法拒绝客户的不合理变更。第11页,共22页。Page 126.开发问题开发问题A.开发
18、团队不能熟练应用“增量迭代”的开发模式。B.需求分析能力欠缺,不能很好地抓住用户真正的需求、清晰地阐述需求。C.系统设计能力欠缺,不能综合考虑产品的功能、性能、可扩展、可复用等。D.软件用户界面设计能力欠缺,易用性不够好。E.开发团队各成员的编程质量差异比较大。F.测试和改错的效率不高,不能在比较短的时间内发现缺陷,并很快消除缺陷。第12页,共22页。Page 137.跨部门协作问题跨部门协作问题A.上下游人员相互不熟悉对方的工作流程和规范,沟通比较费劲,沟通效率比较低。B.上游不能及时了解下游工作进展情况和负荷,不断传达新的任务,下游忙不过来。C.上下游人员在沟通的时候,没有及时记录沟通的结
19、论和建议。D.上下游人员的工作成果分散在各自的计算机里,难以积累和共享知识财富。E.上游传达给下游的需求不清楚,各方理解有偏差,导致需求和工作成果经常变更。第13页,共22页。Page 148.管理工具问题管理工具问题企业使用管理工具可以提升管理效率,积累知识财富,例如代码和文档版本管理、任务进度管理、缺陷管理等等。国内IT企业管理工具的主要问题不是“工具太少了”,而是“工具太多了,杂乱无章,缺乏整体规划和管理”。工具之间各不兼容,没有办法整合数据。有些工具很老了、不好用,但是有数据,不能淘汰,又不能更新。结果这么多杂乱的工具非但成不了财富,反倒成了包袱,十分头痛。示例:您的部门(项目)采用什
20、么工具来制定、监控任务进度表?百分比MS Project,Excel,Outlook51%工作周报+Email13%其它:手工记录,不管理,不关心36%您的部门(项目)采用什么工具来管理源代码和文档的版本?百分比CVS47%Subversion18%VSS5%其它:保存在本机,不管理,不关心30%您的部门(项目)采用什么工具来管理缺陷(Bug)?百分比Bugfree,Bugzilla,TestTrack,Jira等28%其它:word,Excel,Email,口头通知,不管理72%第14页,共22页。Page 159.互联网企业的研发管理弊病互联网企业的研发管理弊病互联网企业的成长规律示意图
21、技术积累和规范化程度较弱,心态浮躁技术积累和规范化程度较弱,心态浮躁 有些互联网业务带有很强的时效性,项目开发周期通常较短,甚至可能只有几天或几周时间。所以互联网企业的研发讲究一个“快”字。人们留传一句话:互联网企业的3个月,相当于传统IT公司的1年。绝大多数人并未真正领悟这句话的含义,并被严重误导。这句话的正确理解应该是:“互联网产品与服务的成败,在3个月内就可以看到其他IT企业通常需要1年才能看到的效果”。可能利用互联网做坏事可能利用互联网做坏事 互联网和手机的普及,使得很多人可以在没有见过面的情况下发生交易。在诚信制度不完善的互联网环境中,极容易发生欺诈行为。在互联网上,没有人知道他是一
22、只狗,也不知道他是个坏蛋。网页和手机短信的欺诈手段非常多,例如“取消表示同意”,“不回复表示同意”,“关键文字的颜色和背景色是相同的,让你看不到”,甚至不通知你就随机收费。最近几年国内还诞生了“流氓软件”这个新词汇,并给出了排名,这在全世界都称得上是“创新”。人变好不容易,变坏却是很容易的,如果人们以互联网的发展速度变坏,那是非常可怕的。融资失败,可能倒闭创意快速实现试运营快速扩张融资再融资,再扩张致富第15页,共22页。Page 1610.研发管理流程改进研发管理流程改进10.1 流程改进方法流程改进方法所谓流程就是工作的步骤和制度(规范),流程规定了“谁”“在什么时候”“怎么做事情”“产生
23、什么成果”。流程一般有6个要素:目的和适用范围、角色职责、工作步骤和流程图、输入和输出、成果模板、度量和评价。流程改进是指分析企业的强项和弱项,改正缺点、发挥优点,制定更合理的流程,使广大员工依据流程开展工作。超过百人的研发队伍,公司应该设立专门的流程改进机构,不断发现企业自身的研发管理问题,并在公司层面进行持续改进,为各业务部门提供有效的研发管理方法论和工具支持。流程改进的一般方法如下图所示:研发管理流程改进的示意图第16页,共22页。Page 1710.研发管理流程改进研发管理流程改进10.2 流程示例流程示例 集成化研发管理流程SPP第17页,共22页。Page 1811.集成化研发管理
24、平台集成化研发管理平台http:/11.1 功能介绍功能介绍上海漫索公司于2006年9月推出“集成化研发管理平台RDMS”,用于管理IT企业的研发过程和项目管理过程。平台运营网站http:/,客户可以“租用网络版”或者“购买企业版”。集成化研发管理平台整合了6个常用的软件工具,如图下所示:(1)研发项目管理系统Future 4.1(2)跨部门协作管理系统Cooprate 2.0(3)企业文档管理系统DocCenter 4.1(4)研发管理门户网站Portal 2.0(5)信息发布交流系统InfoShare 2.0(6)客户服务管理系统Satisfy 2.0 第18页,共22页。Page 191
25、1.集成化研发管理平台集成化研发管理平台http:/11.2 主要优势主要优势(1)将研发管理过程中常用的工具集成于一个平台中(Web环境),企业不必购买多个分立的管理工具,避免了管理工具之间不兼容、数据孤立的问题。不仅提高了研发管理效率,而且大大降低了购买工具的成本。(2)管理平台不仅可以为企业建立完备的研发管理数据库,积累企业的知识财富,而且帮助企业领导对所有项目的人员、进度、工作量、成本、质量进行数据分析,为持续提升研发绩效提供客观依据。(3)本公司出版了配套的著作IT企业研发管理:问题、方法和工具。客户可以获得“集成化研发管理流程SPP”的所有文档,掌握国内领先的研发管理方法。(4)客
26、户以最低成本“租用或者购买”国内领先的研发管理平台,以最快速度推广应用。客户自己研发租用或者购买RDMS开发代价至少5人开发和测试1年时间,费用至少40万元。租用:30元/人月,360元/人年购买:1000元/用户,10万元封顶风险可能开发出很难用的软件,前功尽弃。无风险,已经有大量用户使用RDMS。维护和升级需要2人长期维护和升级软件。免费维护和升级服务。应用周期至少1年时间才能实用。1周之内即可推广应用。第19页,共22页。Page 2011.集成化研发管理平台集成化研发管理平台http:/第20页,共22页。Page 2111.集成化研发管理平台集成化研发管理平台http:/第21页,共22页。Page 2211.集成化研发管理平台集成化研发管理平台http:/第22页,共22页。