用户名 密码 联盟服务 关于我们 联系方式 收藏本站
返回网站首页 PgMP认证,美国项目管理协会高端项目管理认证!大型项目与项目群管理Program Management全球权威认证


网站登录:会员 企业 专家 服务商
企业服务:PMP培训  内训课 公开课
工 具 箱:发表文章 提问题 发案例
首页动态 | 文库 | 下载 | 书架 | 访谈 | 专栏 | 专题 | 人才 | 培训 | 软件 | PMC 互动:活动 | 案例 | 问答 | 论坛 | 博客 | 圈子 
应用:基础工程软件制造活动研发  认证:PMPNPDPACPPgMPIPMPP2ISPMPIMCP建造师MPM  特色:热点奖项

PMI-ACP®认证

适合敏捷开发项目
敏捷项目管理最佳实践

4月开课 | 实战课

PMI-PBA®认证

重视项目商业分析
商业价值与需求分析能力

4月开课 | 新闻

软考项目管理

信息系统项目管理师
系统集成项目管理工程师

计划 | 报名 | 经验

PMP®认证

单项目管理经典指南
年轻项目经理首选

9月开课 | 网络班

PgMP®认证

大型复杂项目全球标准
定位高级项目管理层

深圳 | 北京 | 上海

NPDP®认证

产品管理国际认证
全球产品管理最佳实践

北京 | 上海 | 感受

PfMP®认证

链接战略与项目
实现组织资源投资回报

17计划 | 北京 | 上海

敏捷项目管理ACP认证培训
国际产品经理NPDP认证

解析软件开发及软件工程中的效率问题

作者:佚名   提交人:项目管理者联盟[项目管理者联盟]   属性:提交人转载   发布时间:2015-4-1   点击:2493   【收藏本文

  我之前写过一篇叫《加班与效率》的文章,从概念上说了一些我对“效率”的认识,但是那篇文章趋于概念化,对于一些没有经历过这样的环境的同学来说,可能会觉得太抽象了。很早以前就想写一篇更具体一点的,可执行的文章与《加班与效率》这篇文章相辉映,并再把我两年前在杭州QCon上的那个“鼓吹工程师文化”的《建一支强大的小团队》(新浪微盘)的观点再加强一下。项目管理者联盟

  但是我遇到了一些思维方式上的麻烦——我讲的总是从我的经历背景出发,没有从其它人的经历背景来讲。这就好像,我在酷壳里说了很多东西(比如:专职的QA,Code Review很重要,编程年龄,创业的,Rework的……),有好些人觉得是不可能甚至太理想,其实我说的那些东西都是实实在在存在的,也是我所经历过的。于是,不同的经历,不同的环境,不同的眼界,造成了——有些人不理解我说的,而我也不能理解他们所说的。项目管理者联盟

  所以,过去的这段时间我一有机会就找一些人交流并观察一些身边的事情,并去试着跟从和理解那些我不能理解的东西。现在觉得差不多了,所以,写下了这篇文章。(但越是去理解对方,我就越坚持我的观点,所以这篇文章可能还是会出现鸡同鸭讲的情形,无所谓了)项目管理者联盟

  本文不讨论任何业务上的效率问题,只讨论软件开发或是软件工程中的效率问题。虽然产品和业务上的效率问题是根本,但是因为本文不是拉仇恨的,我也不想混在一起谈,所以请原谅我在这里先说开发团队的,以后重新开篇文章专门谈产品和业务的。项目管理者联盟

  我下面会罗列几个非常典型的开发方式——软件开发中的“锁”,接力棒式软件开发,保姆式软件开发,WatchDog软件开发,故障驱动式软件开发。项目管理者联盟

  软件开发中的“锁”talent.mypm.net

  如果你搞过并发编程,你一定知道什么是“锁”,锁就是用来同步和互斥。我发现有好些开发部门里的各个开发团队间存在很多锁。比如:项目管理者联盟

  技术能力上的锁。有一个项目需要在不同的地方做开发,这些模块用到不同的技术,比如:Java, C/C++, Python,Javascript,但是,这个团队里的每一个开发人员就只懂一门语言,于是,需要配合,需要任务排期,同步互斥锁就很多,于是,一个本来只需要2个人干3周的的工作变成了8个人干两个月。项目管理者联盟

  负责模块上的锁。同理,不同的人负责不同的模块,于是一个项目要动好多模块,那么你就需要把这些模块的人找过来,和上面一样。每个人都有自己的时间安排,人越多,锁越多。于是,一个来来只需要2个人干2两周的事,变成了7、8个人干一个多月。项目管理者联盟

  我上面并非瞎扯,这都是事实。我们可以看到,时间锁、进度锁。这堆有不同技能或是负责不同模块的开发人员有锁,有锁你就要等,他们有自己的安排,所以,要协作起来,你就需要排期,去同步。而参与的人越多,你的锁就越多。你协调他们的时间就更复杂。项目管理者联盟

  沟通锁、利益锁。而且,最恐怖的事情是,他们之间的沟通成本巨大。他们会花大量的时间在讨论,一个功能是实现在你那边,还是我这边,每个人都有自己的利益和算盘。无形中增加了很多推诿、官僚和政治上的东西。项目管理者联盟

  有时候,我们会觉得分工和分模块是产生效率的前提,但是实际情况并不是这样。我们也可以看到,所谓的“分工”被彻彻底底的滥用了。他们把“分工”当成了永远只干一件事的借口。blog.mypm.net

  【解决方案】项目管理者联盟

  一个程序员应该能够掌握多个语言,也能够负责多个模块甚至不同的职责。如果一个程序员觉得多学习一门语言,多掌握一个模块是件很困难的事,那么这个程序员本质上是不合格的。项目经理博客

  “接力棒式”软件开发项目管理者联盟文章

  在有各种“工作锁”的软件开发团队里,一般都无法避免“接力棒式”的开发。也就是说,底层的C程序员干完了,交给上层的Java程序员,然后再交给更上层的前端程序员,最后再交给运维人员。这就是接力棒式的开发。项目管理者联盟

  而且,更糟糕的是,如果在引入了软件流程下,这种“接力棒的方式”真是会把你搞崩溃的。比如下游团队开发一个月,交给QA测试一个月,再交给运维分步上线一个月,然后,上游团队拿到下游开发的API后开发一个月,再交给自己的QA测试一个月,然后再交给自己的运维上线一个月,于是,半年就这样过去了。这是一个由一个一个小瀑布叠出来的一个大瀑布。项目管理培训

  哦,你会说,这个好办啊,上下游不会先商定好接口么?然后做并行开发么?是的,这是其中的一个优化方式,但是需要很好的接口设计。但是,在实际过程中,你会发现(这时我并非信口开河,我说的都是事实),项目管理者联盟

  如果这两个上下游团队在一起还好办,要是不在一起,那么,实际情况是,后面的团队会等到前面的团队提测了,才开始开发,本质上就是串行开发的。项目管理者联盟文章

  如果有更多的团队呢?比如:A团队 -> B团队 -> C团队 ->D团队呢。接口就变得非常地关键了。而在实际情况下,因为没有好的接口设计人员,所以,在开发过程经常性地修改接口,或者是因为接口不好用也只得忍着。项目管理者联盟

  【解决方案】项目管理者联盟

  我以前写过一篇叫《IoC/DIP其实是一种管理思想》,对于这种接力棒的方式,应该反过来,如果业务应用团队是A团队,那B/C/D团队应该把自己的做成一个开发框架也好,服务化也好,让应用团队自己来接入。比如:前端做好一个前端开发框架,PE做好一个运维开发框架、各种工具,共享模块团队做好开发框架,让应用团队自己来接入,而不是帮他做。你会发现,在这么多团队各自P2P勾兑出来的很随意的接口的所带来的成本已经远超过一个统一标准的协议。项目管理者联盟

  “保姆式”软件开发项目管理者联盟

  所谓“保姆式”软件开发就是——我只管吃饭,不管做菜洗碗,就像——衣来伸手,饭来张口的“小皇帝”一样,身边有一堆太监或宫女,不然生活不能自理。这种情况经常见于开发和测试,开发和运维间的关系。很多公司,测试和运维都成了开发的保姆。项目管理者联盟

  我就能看到,很多开发快速写完代码后基本上都不怎么测试就交给QA去测试了,QA一测,我草,各种问题,而只会做黑盒的QA并不能马上就能确定是代码的问题还是环境的问题,所以还要花大量时间排除不是环境问题,才给开发报BUG。很多问题,可能只需要做个Code Review,做个单测就可以发现了,硬要交给QA。运维也是一样的,开发出来的软件根本就没有考虑什么运维的东西,因为有运维人员,所以我才不考虑呢。项目管理者联盟


<<上一页 1 2 3 4 下一页>>
项目管理者联盟PMP认证中心
[相关文章] [网友互动]
·软件开发项目如何做好进度控制 (990)项目管理者联盟10-18
·软件开发项目团队的特征与内涵 (827)项目管理者联盟08-09
·软件开发项目失败的3个原因 (1092)项目管理者联盟06-01
·软件开发团队中项目经理的职责 (2035)项目管理者联盟03-28
·软件开发项目进度控制常见问题 (1729)项目管理者联盟03-28
·小型软件开发项目常犯的错误和解. (1531)项目管理者联盟01-12
·项目管理者联盟特邀在线专家缪燕. (1778)缪燕11-19
·敏捷软件开发方法中的6个实战经验 (1495)项目管理者联盟10-29

03-17[帖子] 软件开发中最顶级的17个平台和工具 (417)
03-15[帖子] 搜搜企告诉您为什么软件开发周期总是预. (367)
02-22[日志] 即时通讯软件开发 几种网络编程方. (47)
12-26[日志] 2017年首信软件工程领域重点研究课题合. (24)
07-20[帖子] 软件项目管理——进度管理:软件开发项. (1105)
03-28[帖子] 这个大型软件开发项目为何最终惨败 (1050)
03-28[日志] 这个大型软件开发项目为何最终惨败 (151)
11-24[帖子] 如何搭建创业型软件开发团队的PMO (2013)
[发表评论]
本站热点
·通过率90%:项目管理者联盟PMP内训组
·《国际项目集经理PgMP认证》12月22
·PgMP新增名单(2017年第三季度)
·人力资源项目管理沙龙(杭州)圆满结束
·PgMP新增名单(2017年第二季度)
·PMP培训班(北京)-针对2018年3月
·项目管理者联盟PMP2018年度培训班招
·产品经理认证NPDP八期北京班圆满结束
·《项目经理该知道的那些事》沙龙活动成功举
栏目说明
    《文库》栏目为项目管理者联盟网站核心栏目,收录了十大行业项目管理文章5000余篇,囊括了项目管理五个阶段、九个知识领域的相关文章,是广大项目管理爱好者学习的知识库,欢迎大家发表原创文章、转贴文章,或直接发给编辑。须联盟会员且登陆后才能发表文章。
敏捷项目管理ACP培训
项目管理活动
免费参加2017(第二届)中国软件估算大会
主办单位:项目管理者联盟
时    间:2017-11-16
地    点:北京·北京丽亭华苑酒店
电    话:010-82273401-11
邮    件:pmp3@mypm.net
项目组合管理及PfMP认证培训-[北京/上海,2017年计划]
主办单位:项目管理者联盟
时    间:2017-12-1
地    点:北京 上海·
电    话:010-82273401-18
邮    件:pgmp@mypm.net
活动QQ群:531390275
免费积累PDU,仅500人

2016年项目管理活动计划
2015年活动精彩回顾
原创排行榜
 高扬 105 项目管理 84
 人月神话 60 郭致星 52
 蒋昕炜 46 项目管理评论杂志 46
 高国伟 45 乔东 44
 肖杨 38 潘德有 36
 张为 34 周劲松 34
搜索文章
关键词:
行  业:
团 队   成 本   风 险   进 度
沟 通   采 购   质 量   合 同
更多>> 专题集锦
更多:
经理访谈
更多:
个人专栏
更多:
项目管理者联盟特刊
联盟特刊是对网站会员发行的内部刊物,刊物内容包括:案例及分析等,得到了会员好评。
电子期刊:
特刊下载:
2017合刊  2016合刊  2015合刊 
2014合刊  2010合刊  2009合刊 
2008合刊  2004合刊  2005合刊 
2006合刊  2007合刊       
施工企业管理
《施工企业管理》创刊于1986年1月,中国施工企业管理协会主办,是反映施工企业管理杂志。
浏览往期:
建造师杂志
《建造师》杂志由清华国际工程项目管理研究院主办,是中国面向建设企业管理人的高端杂志。
浏览往期:
更多>> 推荐文章
10-20·如何挑选人才组建项目团队.
10-20·项目管理书籍连载——《解.
10-20·建设工程全过程全系统建设.
10-20·管理好项目预算的5个建议
10-16·解析项目集利益相关方的争.
10-16·被要求压缩进度,项目经理.
10-13·在资源不足的情况下,如何.
10-13·项目管理中的神秘三角关系
10-13·琴瑟和鸣--SCRUM中“讲”好
10-12·质量管理的十大误区
10-12·【向古人学项目管理】做项.
10-12·掌握这25个风险点,再也不.
10-12·【干货】 项目经理的压力这
10-09·项目管理中的5大监控点
10-09·细化项目工作范围就这么几.
10-09·书法人项目管理的理论与实.
关于联盟 | VIP会员 | 培训服务 | PMP认证 | PgMP认证 | 刊物出版 | 沙龙会议 | 人才服务 | 广告投放 | 联系我们 | 友情链接
项目管理者联盟 版权所有 京ICP证070584号 | 京公网安备110102000464号
如转载本站文章,必须于文章开头处注明转自“项目管理者联盟”,并注明原作者