思步网

查看: 23043|回复: 7
打印 上一主题 下一主题

[心得体会] EasyTrack分享:为什么做软件开发类项目,会出现人多、事少、工作量大的情况?

[复制链接]
本帖最后由 EasyTrack 于 2019-1-24 14:31 编辑

人们常说人多力量大,似乎这才符合常理,但往往在软件项目开展的过程中会出现人多、事少、工作量大的情况,这跟我们以往的认知大相径庭。 


首先,要解释下标题的意思。人多,指的是同一个项目团队、同一个小组或者同一个部门的范围内;事少, 指的是做出的效果,真正的产出少;工作量大,指的是,工作时间长,工作忙,实际的投入大。 


其实,人多事少工作量大,说白了就是效率低,而影响效率的原因千万种,包括人员问题、沟通问题、流程问题、管理问题、技术问题..... 


1,一线工作人员,没让专业的人做专业的事,导致效率低

没让专业的人做专业的事情, 是工作开展的大忌,在工业上,早已证明了一切,在工厂生产中,工人流水化作业,一个人只专注一件事情,会越做越熟练,越做越快,越做效率越高。 


在软件开发分工越来越明确的今天,让后端人员抢前端人员的饭碗,去写网页、样式,效率能高吗?让后端人员去抢DBA的饭碗,去做数据库优化,效率能高吗?


不专业的人做不专业的事情,可能和公司的发展历程、组织架构、人员规划有关,也可能和任务安排有关。


公司发展初期,养不起很多专业的人,可能更需要“全栈”工程师,啥都一把捉;公司发展的过渡期,有点钱了,也意识到了要让专人做专业的事情,但是人员还没招齐,那没办法,你也得兼职着做各种各样的事情。如果公司有钱了,发展也成熟了,不是属于以上两种阶段,在IT组织中,连前端、后端、测试、架构、DBA、网络、服务器运维、技术支持、安全、产品,这些职能都没区分好的话,就会对工作效率有影响。IT一线工作人员,每个坑位,都需要一颗专业的螺丝钉。


2,开发人员不注重代码质量,导致后期返工,导致效率低

有时候,快即是慢,对于经验不足或者习惯不好的开发人员,开发前期,被迫或者自己没意识到,为了追求进度,逻辑没考虑周全,没做好自测,代码能跑起来就算完成任务了,表面上任务完成得很快。但是在项目后期,测试阶段,问题大规模爆发,甚至要返工,由于测试后期,离自己写代码的时候,可能隔了一段时间,有的东西自己都忘了,再回过头去重新“熟悉”,效率能不低吗?更为严重的后果是让项目进度不可控。因此,就算进度再紧张,也顶住压力,必须要做最基本的测试,再进入下一个任务点。


3,个体组织人员膨胀,出现沟通成本大的问题,导致效率低

沟通成本是人员膨胀后,暴露出来的首要问题。


举个简单的例子,很多公司都有每天晨会习惯,如果一个组有5个人,开晨会汇报工作,平均一个人汇报2分钟,就需要10分钟,现在一个组增加到10个人,一人汇报两分钟,都要20分钟才能汇报完。时间就这样过去。 


再举个例子,30人天的工作,分给2个人做,可能需要15天,共耗费30人天,但是分给5个人做,6天能完成吗? 


信息在沟通、传递的过程中,可能会“失真",你想的,不一定能100%说出来,你说出来了,别人也不一定能100%理解,而且每个人的理解能力、知识体系都不一样,理解起来容易产生偏差,产生偏差就容易做错事情。

 

因此,如果人员出现膨胀,要以项目为单位,进行合理的项目拆分、人员拆分。同一个“小项目”最好不要超过4个人负责。沟通的时候,推荐使用口头 书面 复述,减少沟通过程中的信息失真。


4,上下属之间相互不信任,做事有阻碍或者导致重复工作,导致效率低

上下属相互信任是一切工作的基础。如果上级不信任下属,不敢授权给下属,凡是都要自己过一遍,而上级往往是一对多的关系,这个时候,工作瓶颈会出现在上级身上;如果上级不信任下属,搞一堆监督机制,为了下属不做错事情,又让别人同事过一遍,又要耗费额外的成本,劳民伤财,而下级得不到信任,做事受阻,久而久之就会畏手畏脚,很难独当一面,或觉得自己有能力没地方使,干脆走人。上级应该充分信任下级,放心授权让下级去做事情,但这些都一个前提就是要有一个较好的软件管理过程,包括开发环境和测试团队和在完成任务的过程中进行一些辅导和进行重要节点管控和监督。


上级不信任下级经常碰到,而下级不信任上级也很要命。程序员是很有个性的工种,不好管理,往往特别多想法。就好像车轮子陷入泥潭中,上级说车子往前推,有的人又说,往后拉,各自发力,估计车子永远都摆脱不了泥潭,还谈何效率?


因此,如果有意见,前期可以提,但是解决方案一旦定下来,应该上下一心(即使有意见也埋在心底吧),朝着目标一起去努力。


5,不同部门之间沟通存在隔阂与障碍

软件开发过程中,在IT范畴内,不同部门难免有交集,例如开发与运维、开发与测试,不同岗位承担的责任、掌握的知识体系、考虑问题的角度往往不一样,导致处理事情受阻。


举个例子,有一次,开发人员为了验证某个问题,需要运维人员协助重启某个站点。对于开发人员来说,这个站点,用的人比较少,而重启也是一瞬间的事情,风险为基本为0,但是由于运维人员掌握的知识体系不一样,怕重启了会造成很大影响,甚至害怕出了问题要自己承担责任,明明可以瞬间操作解决问题的,又要等到中午或者半夜三更没人的时候才敢重启,效率就是这样降低了。这个时候,需要运维人员,去学习一下相关知识,或者引入新流程,例如,重启站点,需要某个专业人士口头同意,即可立即执行。


因此,不同部门之间的人,应该互相学习,才能更好地沟通;做事情,尽量做轻量级的流程化、标准化。


6,上级工作安排不到位

上级工作安排不到位,也会导致工作效率低。有时候会有这种怪现象,可能很多事情没做,但是下面的人没事可做;或者有的人很忙,有的人很闲。


软件开发分工,不像搬砖头,一人搬一车就行了。软件开发,工作量化本身就是一个很难的地方,如果项目经理没有做项目计划,没有做工作点、任务点拆分工作就很难安排到位。特别是刚刚从程序员转型做项目经理的人,过程性思维,不会对项目做整体的把握、整体规划,想到哪里就做到哪里,想到什么就分配什么工作,最后一团糟,一会把下面的人累死,一会又让下面的人闲死。


7,项目管理培训需求传达不明确或者理解有偏差导致返工 

探知客户内心潜在的需求很难,而需求确定后,信息传递的媒介,往往是需求文档。语言文字这种东西,传递的过程中容易失真,丢失原有的意思。这种情况尽可能比较,需求传递跨越太多层次才到最终到达开发人员身上。如果是这种结构,每层信息丢失2%都不得了,做错了,返工的效率和代价就十分巨大。


很多时候是这种传达方式:

而我们需要的是这种传达方式:

最终的研发人员,应该接受到需求后,应该是反向和用户、产品经理、研发经理沟通,最终才能确定的。






上一篇:EasyTrack分享:项目经理请注意,这个项目的管理有“坑”
下一篇:汽车研发类项目该怎么做?以众泰汽车为例
[发帖际遇]: EasyTrack 在网吧通宵,花了 3 (金) 金币. 幸运榜 / 衰神榜
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对
回复 论坛版权

使用道具 举报

看起来好像不错的样子
鼎力支持!!
我是个凑数的。。。
我是个凑数的。。。
看帖要回,回帖才健康,在踩踩,楼主辛苦了!
好帖是需要鼓励的~
您需要登录后才可以回帖 登录 | 注册

本版积分规则



思步组织思步科技|思步网|火花学堂|思步文库|思步问答|思步英才|天下心
© 2007 思步网 浙ICP备10212573号-4(首次备案号:浙ICP备07035264号)|邮箱:service#step365.com(将#换成@)|服务热线:0571-28827450
在线培训课程|求职招聘|思步文库|官方微信|手机APP|思步问答|微博平台|官方QQ群|交流论坛|软件工程透析|关于我们|申请友链|
点击这里给我发消息     点击这里给我发消息
思步 step365 过程改进 CMMI中文 质量保证 质量管理 流程体系 需求跟踪矩阵 敏捷开发 Scrum 软件度量 项目评审 全员改进 流程管理 人力资源 6sigma 信息安全 ISO27001认证 IT服务管理 ISO20000认证 ISO9000认证 软件测试 SQA 配置管理 IPD 软件工程 PMP认证 PMP试题 PMBOK中文 精益研发 agile 顾问式管理培训
返回顶部