开发中不能忽视的问题

发现这篇文章说的挺对。

    信任似乎和软件开发管理没有关系,但实际上,信任对软件开发过程影响很大。说说这些现象和原因以及如何获得信任。

对开发人员不信任的表现:

  1. 要求对开发人员到现场开发,在开发现场和使用现场不在一起的时候,用户和领导总是要求开发人员到现场开发,这也是开发人员需要进行大量出差的一个原因;
  2. 加班,软件开发人员似乎总和加班有关,其实加班也是客户(包括领导)对是否可以按时完成任务的一种担忧;
  3. 缩短计划工期,每一次做开发计划,给开发人员的时间总是很短,开发人员总是感觉不可能完成任务,而如果领导层次越多,则被削剪的时间越多,其实这些被削剪的时间都被用于防止风险的发生;
  4. 其它手段,比如封闭开发,派特别检查人员,领导别人关心等等。

  分析一下对开发人员的大致原因:
  首先要说明的,无论客户还是领导并不是希望采用怀疑的态度来对待开发人员,但由于IT开发的实际情况使得我们的客户对开发人员产生怀疑,讨论产生这种态度的原因对我们避免这些问题有很大帮助:
  1. 人员的不熟悉,IT行业人员流动的问题比较大,一个单位每年10%的流动率就算比较好的,我遇到过几次,单位在2年的时候所有开发人员基本上换了一个遍,对新开发人员的不了解,必然造成客户(老板)对开发人员的怀疑和不信任。
  2. IT项目的高失败率,很多开发人员认为自己项目没有失败,毕竟需要的东西开发出来了,但系统是否拖工期了,人员经费是否超支了,客户对我们的系统是否满 意,系统是否满足用户的需求,是否有扩展性和可维护性。最简单一点,一个项目是否赚钱(包括开发和维护)。开发人员是不考虑的。这种IT项目的好像成功而 实际上的失败,造成了客户(领导)对开发人员的不信任。
  3. IT项目的所谓高科技性,使得开发人员重技术轻管理,现在的技术人员重视某种语言的学习,重视架构学习,热衷于争论JAVA和C#的争论,但却不关心客户 需要什么,也不关心管理,这种热衷于展示某种技术,而不注意技术如何为客户服务的现象,使得开发人员的重视方向和客户的需求差别很大。
  4. 项目管理过程的缺失造成了客户(老板)对开发人员的不信任。软件项目的开发涉及很多方面,比如项目的范围管理(软件需求),费用管理,进度管理,质量管 理,沟通管理,人力资源管理,合同管理,风险管理。其实在软件工程的理论上也涉及到了项目管理的绝大部分的内容,但可惜的是,我们的开发人员对软件工程的 关注远远低于对某种单纯技术的关心,而在关心软件工程的学习的中对那些对软件项目应该关注的方面(比如范围、风险等)的管理却远远不够。
  5. 缺乏成功的案例。
  6. 对权利过分的追求。造成对开发过程中信息的封锁,这种沟通渠道的不畅通,必然造成客户、老板、上级领导对项目进展情况的不了解,必然造成这些人对项目失控 的担忧。由此必然产生对开发人员的不信任感。试想一下,有一个事情对你可能有极大的利益关系(比如考大学),而你对这个事情完全不可控和了解(比如在考大 学后分数没有下来的时候),你自己当时的感觉,就不难理解客户和老板的感受了。
  7. 个人对单位和部门的重要性评判的标准:一个人对公司和部门的重要性判断的标准是什么样,以我个人的观点来看,是你完成了多少个项目,而不是你在做多少个项 目。具体的说,公司毕竟是一个经济体,它的生存和发展是以个人和项目组给公司带来的盈利为衡量标准的,这个标准即使不是唯一的也是主要的,开发人员不要轻 视这个标准。
  8. 总在最关键的时候暴露问题,而没有解决方法,问题一直被掩藏着。到最后上线的时候才暴露出来,开发人员没有任何解决办法,和领导和客户在会议上大眼瞪小眼,你说领导会信任你吗?
 
  针对以上问题,我们谈一下如何获得别人的信任,和如何增强别人对你的信任。
  1. 首先,我建议大家不要频繁跳槽,不是说不能跳槽,但你必须知道在招聘时候的一些筛选标准,比如,一个人如果在一个单位的工作时间不够2年,一般会认为是这 个人无法和公司文化相结合,而如果在他的每个单位都不到2年,会认为这个人无法和其他人合作,那么这个人被招聘的可能性就很低了,另外,一个人工作如果只 有几个月,我们会认为他不真正了解所开发的系统,对你的项目经历一点好处、一点作用都没有,所以我建议大家在选择新单位的时候,先看一下自己的简历是否存 在这些问题,防止你的简历在第一轮就被筛选掉。

  2. IT项目的高失败率,这个问题大家谁都知道,但原因呢,恐怕就不见得人人都知道了,IT项目最主要的失败原因都是需求(国外统计占75-80%),所以如 何获得真实的需求就是最主要的问题了,那么需求调研的重要性远远高于所谓开发的选择或者某种技术的使用。顺便说一下,项目范围的蔓延和不明确,也是其他非 IT项目失败的一个主要原因,所以在一个更大的项目管理的范畴内,项目范围的管理(具体到IT就是需求)一直项目管理的重中之重。

   3. IT人似乎总崇尚于自己的技术,其实如果要实现你的目标必须要有一定的权利,否则你是无法实现你的目标的,什么是权利,有人认为是职位,其实在我看来所谓 权利是你可利用的资源的多少,而要想顺利的使用这些资源,需要你讲头低下来平等对待你身边的每一个人,获得他们的帮助,才能将公司的资源真正转化为你项目 的可利用资源,中国有一句古话:县官不如现管,平等对待你身边那些非技术人员,他们会给你意想不到的帮助,而这些帮助对你的项目成败有时候会起到关键作 用。

  4. 做好沟通管理,沟通不是简单的请客吃饭,想想你的老板需要你请客吗,你的客户谁有吃不起一顿饭,做沟通管理,首先需要给你的老板和客户一个可行的计划,然 后定时向他们汇报实际工作情况。当你的老板和客户看到你的实施都是按照计划不断进步,他们怎么会不信任你,沟通还有另外一个作用,就是及时汇报工作中的问 题,防止问题变成风险,及时获得他人的帮助,不要将问题变成谁也无法解决的风险,那样除了增加别人对你的不信任,什么作用都没有。

   5. 不要太看重职位,职位和权利是两回事情,作为中级管理人员,不要阻碍正当的信息交流。你的人员和其他人员的交流,如果对项目有帮助,为什么要阻止它呢。要 知道个人技术的进步有时候就在那些随意的聊天中。另外没有必要成为信息交流的瓶颈,如果你成为信息交流的瓶颈,那么离你离职的时间就不远了。

   6. 不要占太多的项目,一个人的精力是有限的,如果你没有那个本事,最好就管好一个项目,一个部门,不要占了所有的位置,获得信任的一个关键点是你完成几个项 目,而且项目完成的很好,那是最完美的。如果你占了几个项目,而这些项目让老板永远看不到完工的希望,你也无法获得他的信任,(可能开始的时候他会信任 你,但这种信任不会超过半年)。


猜你喜欢

转载自shellfish.iteye.com/blog/563621