艾伟也谈项目管理,技术领导的疑难:如何掌控其他成员的开发

简介:   如何将项目的开发掌控好是技术领导(Team Leader)必须做好的。何为掌控项目的开发,即开发的进度和质量在计划内,不在期限快到时慌手慌脚,也不需交期到时天天加班,更不能删减测试时间。总而言之,就是开发工作有节奏,按部就班到达预期目标。

  如何将项目的开发掌控好是技术领导(Team Leader)必须做好的。何为掌控项目的开发,即开发的进度和质量在计划内,不在期限快到时慌手慌脚,也不需交期到时天天加班,更不能删减测试时间。总而言之,就是开发工作有节奏,按部就班到达预期目标。

  理想总是好的,可现实总是残酷的。你有过每个周六都加班,每晚都加班的经历没?你有项目完不成,接二连三申请延期发布的经历没?你有过遇见过你委以重任,但他却误了你事的同僚没?如果你工作了一段时间,又恰好又有带过小队伍的经历。我想你应该也遇到过这些问题中的一个或几个吧。

  我当然也遇到过,一回是将一个很重要的功能组件重写的任务分派给一个新的团队成员,给予了我能给的最多资源,并将其他任何任务,可能的干扰源我都给挡了。但结果呢,开始我还满怀希望,因为他非常自信,也不断的给我好消息,比计划更快更好。但时间过去一半也就是约两个月后,痛苦开始来了,他创建了一个新的分支,因为接口变了,无法和其他组件集成构建,而这一切我之前竟然不知道。但离版本发布已经只有2个月时间了。这还包括测试。而该模块功能上都还只完成一半的样子,而且完全抛弃了原有做法。更惨痛的是两个星期后他离职了,面对不能集成,功能不全的半成品真是欲哭无泪。最后版本发布时,此过程中代码仅作参考,而使用旧代码修改版本,预期的一些功能没有,预期的效率提升没有,还加班一段时间。这也是我的软件开发历程中最大的遗憾。

  事后,我总结了该次技术事故的教训,但没有及时发贴。现在做一下简单的总结,如何避免此类事故的发生。

  一、认识问题

  在将较大的模块分配之前,必须确保模块主人明确了需求,了解了问题。很多程序员有一拿到问题立马动手的冲动,此时你至少应保证他看到了所有的问题。此步绝对不能省略,你不能假设他自己会去找需求,他能找到需求。你也应该将你对需求的认识,你从全局上的观点传递给他。

  二、搭架子

  在甩手出去的工作,尤其是较重要的模块给一个不了解的人的时候。必要的模块架构设计是不能少的,这个时候你可以了解他的思路;讨论中提升设计的质量;更重要的是可以从整体的角度评判设计是否合理,是否可以和其它模块较好的工作。同时还可以减少模块开发人员的困惑,减少独自摸索的时间。

  三、分解工作

  在架构设计的基础上,将工作分解开来,独立出来一段一段做。分解时最好和开发人员讨论,他在细节上可能会比你更清楚。

  a. 工作项的大小。从经历来看每个工作项1-2周比较妥当,时间太长不利于管理时间,也较难准确预估。太短又太细,而且有些事情又没那么容易做完做好,此外还可能涉及其他方面的修改。很多人习惯做完任务就不管了,也没有足够的时间测试,调整。

  b. 工作项的独立性。必须保证每个工作项的独立性,可以单独开发,单独集成。每一到两周将代码集成编译并做简单的集成测试(保证主体不受影响,新增功能有效)。

  四、及时跟踪设计,时间,代码

  先说设计上的跟踪,在新成员刚参与时。可以要求必要的设计文档,如类图,核心部分的序列图。再就设计与程序员讨论我们现有的设计样式,使设计与已有设计有一定的相似性。并可借此机会培养新成员的设计水平和设计方法。此讨论可以多讨论一些OO,设计模式什么的。不一定要用,但要有用的准备和用于不用的判断。

  时间上的跟踪,主要是每周的周会,周会上可以依照总的时间安排和工作进度一起简要讨论,让大家心中有底。此外还有每周的工作安排和回顾,新成员可以要求写细点,每周要有两到三个检查点,及时跟踪。出现问题可以及时发现。

  代码上的跟踪,主要是要求在最新代码上开发,保证有交互的组件可以正确编译。此外新成员要在开始一段时间对代码进行Review,保证编码符合规范。模式和已有代码一致。

  另外就已有组件的修改,可以要求逐步改进,使用桥接或其他方式逐个替换进新的模块。

  很晚了,先就想到这了,欢迎大家提出好的想法。到时我再抽时间补充完整。

目录
相关文章
|
6月前
|
运维 前端开发 算法
揭秘成熟互联网团队:团队成员包括哪些岗位?
揭秘成熟互联网团队:团队成员包括哪些岗位?
319 0
|
项目管理
艾伟也谈项目管理,项目经理要如何看待技术?
  当上项目经理后,技术人员往往对自己的定位失去了感觉。其中最令人困惑的就是自身原有的技术标签,撕了也不是,因为技术还不能丢,贴着也不是,因为个人的成败往往决定于自己对团队的管理,而不再是自己的技术。  想要从这种困惑中摆脱出来,首先就要搞清楚下面几个问题:   Question 1——项目经理职位对技术到底有什么要求?  Answer:  想把项目管理工作做到点子上,两个观点要明确:  ①技术不是必须项。
968 0
|
项目管理
艾伟也谈项目管理,我也发软件开发团队的思考(侧重点是人员)
  //上个月给我们老板的mail.洋洋洒洒6000多字.  //为了方便公开,改了一下.以致可能有些地方前言不搭后语.  //不管他同意不同意,先在我们组实行了再说.  //请多大家多提提意见,日后看有没有机会找老板当面交流  经历的几个项目,项目的进度老是不尽如人意。
1195 0
|
测试技术 项目管理
艾伟也谈项目管理,在团队中如何推行一项新的实践
在一个老团队中,推行一项新的实践是非常不易的。     如果要求,每天10点站立会议增强团队成员之间沟通。大家会心里先衡量一下,恩,不就是每天站个十几分钟,自己说几句话,然后听别人说嘛,不难做到。
1126 0
|
项目管理
艾伟也谈项目管理,项目管理杂谈-员工的积极性在哪里?
  项目开发过程中,每每有人感叹,曾几何时,队伍如何好带,如何好用,而如今,人心繁杂,队伍不好带了。很多人的想法是“人望高处走”,不停的寻找待遇及其他方面更好的单位。其实,这种现象在当今社会也很平常,尤其在中小企业,毕竟,在经济等利益的驱使下,有几个人会与金钱过意不去。
1026 0
|
项目管理
艾伟也谈项目管理,技术管理中常见的几个问题
  前几天跟朋友聊天时,朋友说他刚刚从一家知名软件公司面试出来,朋友去面试的是一家公司的技术管理岗位,所以在面试的时候被问及的问题也偏重于技术管理方面的问题,在与朋友的聊天中将这几个问题归纳了一下,大致归为如下几个问题。
988 0
|
项目管理
艾伟也谈项目管理,我的项目管理观点
公司要我给项目经理做一个培训,关于项目经理的做事情的方法和观点方面。我就采用了Workshop的方式,Workshop不是会议模式,而是侧重于交流会谈的一种模式,毕竟大家都是项目经理,并非说我的做法就是对的,所有的一切都是自己的经验之谈,所以我只是说大家彼此分享经验,交流心得。
1033 0
|
项目管理
艾伟也谈项目管理,项目经理要向唐骏学习
  中国人性喜围观,然而在中国,大部分新闻并没有围观的价值,这未免让人失望。但是,只要是加上“唐骏”这个名字,新闻总是能让我们围观者觉得值,觉得得到某种满足,从这一点上来讲,唐骏牛!真的很牛!!   这一次,唐骏给大家带来的是“假文凭事件”,整个事件的发展,真是一波未平一波又起,可谓波澜壮阔,最后发展成为事关“诚信”的大事件。
1025 0
|
项目管理
艾伟也谈项目管理,项目管理 – 人员外购利弊谈
  昨天与同行进行案例讨论时得知,前2个月还被列为正面经典案例的项目到这次讨论时居然变成了反面典型,真可谓成也萧何败也萧何啊。   该项目是一个软件外包项目,发包方是非中国大陆的客户,项目规模在500人月左右,团队人数峰值为50人,实施周期为12个月。
1036 0
|
测试技术 项目管理
艾伟也谈项目管理,项目管理 – 人员外购利弊谈(续)
接上一篇文章“项目管理 – 人员外购利弊谈”。   以上方案只是初步分析,其缺点都是有相应解决办法的。  该公司对以上情况并没有使用DAR(决策分析解决方案)方法进行正式和认真的分析,仅仅从能快速启动和项目利润两个方面考虑来选择了最终的解决方案:项目经理由公司的技术和业务都掌握的人员担当;各小组的组长和测试组长采用人员外购的方式;项目组成员1/3由公司员工组成,1/3由实习人员组成,1/3采用外购方式。
1054 0