艾伟也谈项目管理,公司的中场

  一个公司宛如一只球队,成败不是一个人的事情,是一整队的事情。那么球队在某一场具体比赛里面最重要的角色是哪一个?不是教练,如果说整个赛季如何可能是教练的功劳。如果是某一场比赛,最重要的角色是中场。对于公司也有这么一个中场的角色,不过不是老总,而是具体的那个产品经理。

  其实产品是否成功,部分取决于总体效率如何。我把效率分为两个部分,一个是工作效率,一个是规划效率。

  工作效率很好理解,就是每个工时的投入产出比。提高工作效率很好描述:如果我们以每一个人为坐标轴来观测,就是要求每个人都有合适的负担,不能够某个人负担过重,更不能某个人负担过轻;如果我们以每一天为坐标轴来观测,就要求每一天都有合适的负荷,不能一天忙死,一天闲死。合起来很简单,就是说每一个人每一天都要有合适数量的工作去做。

  但是工作效率高了,不代表总体效率就高。比如说每天都在做,但是今天把昨天的推翻了,明天又把今天推翻了,那就是在瞎折腾。所以我们还要有规划上的效率,保证不会出现类似的情况。上面说的那种瞎折腾看起来好像不可能整天发生,但是实际上在我们面对变化的需求时,就会遇到这样的事情。

  现代的软件工程是如何保证效率的呢?

  从工作效率来讲,就是尽可能准确的给出每一个任务需要的时间,然后根据这个时间给出一个时间线(Deadline)。当然,不准确是必然的,于是还可能会中间有些CheckLine来避免无法完成任务的情况到最后快结束时才爆发,然后就是加班加班再加班。Checkline订多长合适呢?一星期?我个人认为确定每一天的计划更为合理,如果做不到,那么两三天也比一星期强。因为有的时候你会发现有的人做了一天还是好像没有什么进展似的,可能性有三个:要么规划得不好,没有自行细分更细的CheckLine;要么就是觉得得过且过,到那天再说,不急;要么就是能力不济,到最后都是这样。这三种情况我都见过,因此更紧密地时间检查周期是很有必要的,至少可以及时看出到底出了什么问题,可以有更大的余地进行有针对性地调整。

  而规划效率呢,则需要准确区分新增需求、对旧有需求(设计)的改进以及对旧系统Bug的改进。作为项目经理,这几个概念是需要严格区分的,否则会产生很大的问题(这我也经历过)。

  对于Bug,无论任何时候都是需要及时修改的。那么什么是Bug呢?就是系统的实际执行情况,和原来定义的设计是相违背的,或者对于没有定义的部分,是超出常规思维方式或者逻辑上有矛盾的。与此概念最容易混淆的,是对旧需求(设计)进行改进。我们经常会听到用户会反馈类似这样的抱怨:这个文本编辑器非常的不好用,我想要他固定一个具体的大小,它却只能够设置“大中小”,而且还会随着用户的操作变大变小;那个上传图片的地方也很不好用,只能一张一张照片的上传。那么面对这样的问题,我们可以很简单的将它和Bug区分开来:想一下这是当初就这么定义的呢,还是说定义的和用户一样,只不过开发人员弄错了?要区分Bug和需求改进,还有一个很重要的原因,是修改Bug和需求是完全不一样的。修改Bug的时候,只需要告知程序员哪个地方错了即可,而修改需求,则需要很多前期的工作,例如确定需求、制定UE、制作UI、套UI、修改代码等。通常情况下,修改需求都可以“转化为”新增一个需求。

  而需求方面的新增和改进,则应该在新一个迭代之前收集,迭代开始阶段进行设计,然后进入开发阶段的时候就不应该再随意的更改了(除非证明设计有严重缺陷)。如果不这么做,你就会经常体会到今天推翻昨天的代码的情况。软件工程有讲,软件开发的整个过程中,越到后面进行修改,成本就越高。这里隐含着一个意思,就是越到后面出现的改动,你的沮丧情绪也越严重。这对整个团队是非常有伤害的。当然了,这也要求我们的中场,能够坚守立场不动摇,同时在开始开发之前,认真做好设计。

  然而这些并不是做好中场的全部,中场还有一个重要的功能是把前后场联系起来,起到承上启下的作用。如果我们把系统限定为软件开发,则后场是UE、UI人员,前场是开发人员。此时中场的一个重要职责是,确定好后场的UE、UI制作是否按时完成,是否达到了前场开发人员能处理的质量水平。有的时候因为各种原因后场过来的东西,开发人员是无法处理的,例如没有切图而把整个页面的PSD给发过来了。中场就要检查和避免这种情况,如果你听UI说做完了,你就认为做完了,那是很不负责任的。最后,你的工作也可能因为这样的原因被拖了进度。

  如果我们把系统限定为整个公司的范围,则后场是开发部门,前场是销售和客服部门。这时候,一定要想办法尽量减少前后场直接来回的情况。原因是,一个这样会有很多复杂的路径存在,到时候责任人不好理清楚,响应速度也可能很慢。另一个原因是,前后场直接开大脚,质量很难控制。比如说客服接到反馈说文字编辑器很不好用,直接就告诉相关开发人员,开发人员马上就开始修改了。这样做有很多比较要命的缺点:1、所有任务的优先顺序可能无法控制;2、开发质量无法控制;3、没有任何的设计就直接上去了(多数开发人员在这方面确实很差)。也许中场很忙,会有太多的事情做,那么这个时候也需要交由一个专门的副手来执行着一个工作,而不是前后场大脚乱踢。

  如果你的职业规划中,未来有一段时间是要做中场的,那么上述的这类概念则必须要清楚。我不知道你的经历如何,就我的经历而言,违反上述规则的很常见。甚至有的时候,在某些地方我会被告知那样做是理所当然的(其实对方也说不出是个什么理,只是强调就是这样的,这就对了)。您认为呢?

时间: 2024-09-20 14:39:06

艾伟也谈项目管理,公司的中场的相关文章

艾伟也谈项目管理,软件公司的两种管理方式

这篇文章是我的一个外国的同事Gareth推荐给我的,我和他一起工作过一段时间.他之所以觉得非常不错,是因为这篇文章让他身有体会,他觉得我也一定会有体会,并让我考虑一下翻译到我的blog上来.我看完后觉得很有代表性,而且觉得说得太对了,所以翻译过来,希望大家都读一读,最好转给你的公司老板. 这篇文章来源于 StakeExchange 上的一个问题--"为什么BA和PM的薪水要比程序员要高?",顶在一楼的回复分析了这个原因,并指出了两种管理文化. -------------------正文

艾伟也谈项目管理,编程习惯

文/Alexey Radul 译/程显峰 原文地址:http://web.mit.edu/~axch/www/programming_habits.html 近年来,我对编程艺术有很多体会.过后,我发现有些体会是错的:有些体会我遗忘了但又重新感受到:而另外有些则是必然会发现的.我还完善了一套项目管理的好习惯,这些习惯包括我自己的,或者小组的,抑或是更大的,公司内部的.一方面,这些习惯对软件的成功开发是至关重要的(太小或者纯粹巧合的不算),另一方面,这些习惯也不是什么高深莫测的东西,较小的篇幅就可

艾伟也谈项目管理,对项目管理的几点认识

自2007年参加工作以来,参与的项目也有好几个了,但都是以项目成员的角色参与,从来没有以项目经理的角色参与项目.中国有句古话叫"旁观者清",同一个问题站的角度不同,可能会形成不同的结论.下面我就以一个普通项目成员的角度谈一下对项目管理的几个看法,希望大家给予指正. 1. 团队成员选择 人员选择要谨慎,要尽量选择合适的人员,在选择团队成员时要重点考虑其团队合作能力.编码可读性.能力和项目的匹配度等因素. 2. 项目远景的确定 项目初期项目经理需要和高层以及客户协商,定下项目的远景目标(即

艾伟也谈项目管理,我也发软件开发团队的思考(侧重点是人员)

//上个月给我们老板的mail.洋洋洒洒6000多字. //为了方便公开,改了一下.以致可能有些地方前言不搭后语. //不管他同意不同意,先在我们组实行了再说. //请多大家多提提意见,日后看有没有机会找老板当面交流 经历的几个项目,项目的进度老是不尽如人意.更重要的是市场的开拓因为这些项目拖住了后退而无所作为. 我们现有的情况是:项目期限和最开始的保守估计都相去甚远,最后提交给客户的产品60%都是最后一个多月开发出来的,还有20%左右是以前就固有的固定模块.这几个项目我参与了编码,我对整个系统

艾伟也谈项目管理,我的项目管理观点

    公司要我给项目经理做一个培训,关于项目经理的做事情的方法和观点方面.我就采用了Workshop的方式,Workshop不是会议模式,而是侧重于交流会谈的一种模式,毕竟大家都是项目经理,并非说我的做法就是对的,所有的一切都是自己的经验之谈,所以我只是说大家彼此分享经验,交流心得.我把我所要分析的内容大概做了一个讲义,也希望更多人能够参与到这个Workshop中.项目经理好做吗?      项目经理好做吗?好做!项目经理好做吗?不好做.不同的人.不同的态度.不同的方法,其结果也就存在有极大的

艾伟也谈项目管理,软件架构引言之项目管理的问题

软件架构引言之项目管理的问题   很多朋友都有过或者正在管理一个或者多个软件项目,那么我的文章就从这个问题开始:如果单纯从表象来说,软件项目管理过程中暴露的最大问题是什么?   不同的人的会有不同的答案,但是大致这样的答案我想大部分人都是会认可的,那就是"进度拖延".进度拖延当然是表象之一了,其他诸如质量不过关.功能不完整等等,我觉得都是和进度拖延密切相关的.很多项目经理都想去做那些认为是十分必要的事情,比如计划.测试等,但是"没有时间".为什么会没有时间?等到项目

艾伟也谈项目管理,项目管理 – 人员外购利弊谈(续)

      接上一篇文章"项目管理 – 人员外购利弊谈". 以上方案只是初步分析,其缺点都是有相应解决办法的. 该公司对以上情况并没有使用DAR(决策分析解决方案)方法进行正式和认真的分析,仅仅从能快速启动和项目利润两个方面考虑来选择了最终的解决方案:项目经理由公司的技术和业务都掌握的人员担当:各小组的组长和测试组长采用人员外购的方式:项目组成员1/3由公司员工组成,1/3由实习人员组成,1/3采用外购方式.      公司如此考虑:      i.成本方面可以通过实习人员省出来的成本

艾伟也谈项目管理,动起来再调整 - 向项目经理推荐敏捷

要成为一个好的项目经理需要学会逆水行舟.虽然顺水推舟有时也能到达目的地,但学会逆水行舟,你才能到达任何地方. "虽然很有道理,但我认为现实不允许,很多项目都有规定的期限.中途还有给客户演示效果,往往实际项目中都是按最后上线日期来进行项目规划管理的." "写得不错,但是有些建议过于理想化了.毕竟说得很有道理,但实际中具体做起来又不是那么一回事了." 这是两位网友对<软件项目经理新手上路>的评论.这话很有道理,也是在现实生活中碰钉子碰出来的.在项目中确实存在

艾伟也谈项目管理,Richard Durnall谈系统管理和从外向内的组织结构

InfoQ中文站:能给我们介绍一下"系统管理理论"(System Management Theory)么?能不能跟我们分享一下您在实际应用中的经验? Richard Durnall:系统管理理论是过去五十年里出现并逐步发展而来的.它与传统的那种基于管理和控制方式的科学管理理论有很大的不同.首先让我们回顾一下管理科学的历史来了解系统管理理论. 在19世纪工业革命之前,商业规模通常不大,从业人数十分有限.19世纪30年代的技术革命中出现了大规模的工业企业.与传统的村镇工业不同,这些企业开始