艾伟也谈项目管理,技术管理中常见的几个问题

  前几天跟朋友聊天时,朋友说他刚刚从一家知名软件公司面试出来,朋友去面试的是一家公司的技术管理岗位,所以在面试的时候被问及的问题也偏重于技术管理方面的问题,在与朋友的聊天中将这几个问题归纳了一下,大致归为如下几个问题。

  在日常工作中你是如何行使管理职能的

  这个问题以我的经验以及参考常见的一些开发方法,在实际中我都是早询问及晚反馈的方法。也就是早上上班后的半个小时内主动询问开发人员是否有不能及时解决的问题,如果有,组内组员讨论解决方法;下班的时候,组员可以以邮件或者其它方式汇报自己的进度,并评估当前进度与预计进度相比是否有滞后。为防止有些内向的组员不能用口头的方式反馈自己在开发中所遇到的问题,可以允许他在下班前的反馈报告中说出自己所遇到的重难题。作为技术管理人员,可能在工作中管理也要占相当一部分时间和精力,抽出适当的时间和精力做做走动式管理,也就是主动走到开发人员身边询问他们目前手头的工作并询问是否有无法解决的难题,尽早发现问题尽早解决问题,使项目尽量按预计日期交付。

  如果发现因为种种原因导致实际工期远远超出预计工期时,你应该怎么做

  实际上除非客户主动限定交付日期,一般自己估算工期的时候都会在理论工期(根据经验估算出来的)的基础上再乘以一个系数作为交付日期,但是确实也有即使这么做了仍远远超出工期的情况,比如在开始的时候对某些风险预计不足等,遇到这种情况个人觉得可以采取如下几种办法:

  一、增加人手,增加人手可以适当缩短项目周期。
  二、增加每日工作量,增加每日工作量尽管会被广大开发人员讨厌(我自己也相当讨厌,但是在没有办法的办法之下只好如此),但是也可缩短项目周期。
  三、和客户人员反馈和交涉,看能否博得对方理解而延长工期。
  四、如果客户人员不同意延长工期,那就再和客户人员商量,是否可以将项目的优先级列出来,在规定时间内将高优先级的功能开发出来,这样不影响客户使用大部分功能,其余功能可以在客户使用过程中逐步添加。
  五、如果客户人员不同意延长工期并且也不同意在规定期限内部分交付,那就要和自己的上级汇报,毕竟处在自己所在级别范围内该做的、能做的都做了,那么就向上级反馈,让公司级别的高层与对方公司级别的高层交涉,看是否有变通的办法。
  六、如果以上均行不通的话,那么只能退而求其次,尽量在满足用户使用和不违反合同约定的情况下简化或者缩减功能。

  项目实际工期比预计工期长,这种情况并不少见,有时候由于种种原因,比如开发队伍人员变动大或者对原有技术难点估计不足都有可能会导致这种问题。遇到这种情况之后我们首先尝试从我们自己的层面看能否解决这个问题,如果确实不能解决就应该及时反馈到公司高层,从高层的角度寻求解决办法,而不是设法掩盖问题,等到公司高层发现问题时连补救的办法都没有了,给公司造成经济和声誉上的损失。

  在平常需求分析阶段你们以哪些方式与客户进行交流和反馈

  最常见的一个办法就是合同约定,将客户需要的功能以白纸黑字的形式描述在纸上,这种情况下客户对将来交付的产品仅仅限于我们的描述,不过一旦客户签字之后,即使客户发现最终交付的产品与自己所期望的产品不一致也不能有什么办法,毕竟这些都在白纸黑字上写明了并且客户签字确认了的。这样做的坏处是这次可能会交付成功(哑巴吃黄连),但是客户与公司之间不会再有下次合作机会了。

  在实际中我们还用过一种办法,那就是界面原型法。对于网站,那就是设计一套静态页面形成的网站,客户可以通过我方人员的演示看到各个页面之间如何跳转及每个页面的功能;对于软件,也是设计出各个界面,客户可以通过演示看出各个界面之间如何交互及每个界面的功能。通过原型法,客户可以直观感受将来交付的产品是什么样子的,避免仅通过语言交流而带来的理解误差。一般情况下我都是采用这种发发和客户交流的。

  在客户不能描述自己期望的产品的情况下,你应该如何和客户进行交流和反馈

  在有些情况下我们会遇到一些客户,他们很希望借助软件来改变目前落后的操作和管理方式,但是客户也无法用语言来描述自己所期望的产品的功能和样子,这种情况下我们该怎么做呢?

  首先看市面上是否有类似于客户所需要的产品,如果有,可以借鉴这些产品并结合我们的理解做出界面原型来与客户进行进一步的交流(朋友说我这样有抄袭的嫌疑,呵呵)。

  如果不使用上面的方式,那我们还可以采用引导的方式和客户交流。就像我们去生病去医院,我们通过自己身体的不舒服知道自己生病了,但是我们不知道自己得了什么病,医生就会引导我们,比如会问头晕不晕、嗓子疼不疼、眼睛酸不酸、腿软不软等,通过这些询问医生就能确定我们得了什么病了(当然在医院里,我说的那些是理想情况,若遇上一心扑在偷菜事业上的医生,人家只会引导你进鬼门关了,还有那种医生一进去就不管三七二十一就让你做一大堆化验的医生,曾经有位哥们感冒了被化验出宫外孕来,白衣天使成了夺命魔鬼)。通过对客户的引导,可以进一步发掘需求,并且将客户的一些不太合理的要求化解,使我们能在尽量满足客户要求的基础上开发出比较理想的产品。

  当然以上是朋友能回忆起的问题和我针对这些问题的理解,事实上针对软件的开发和管理有很多办法,我们不能实际也不可能纸上谈兵式对这些问题进行阐述。就像在数据库设计时我们可以尽可能遵循一些范式,但是并不是满足了这些范式的系统就是一个好的系统,我们也不是一定要满足所有的范式,我们可以结合具体情况进行分析,最终我们的产品是一个在各种因素影响之下的产品。

时间: 2024-07-30 14:07:10

艾伟也谈项目管理,技术管理中常见的几个问题的相关文章

艾伟也谈项目管理,软件研发中的冲突及解决之道

深圳易方数码科技新技术研究主管,微软MVP时永安认为: 软件项目在研发过程中牵涉到很多利益相关方,这些相关方因为关注角度的不同,会产生很多矛盾冲突.这些冲突,轻则打击士气,拖延项目的进度,重则使项目无法正常进行.在我这些年的软件项目管理工作中,遇到过各种各样的冲突,其中最常见的有:项目开发周期的冲突和团队内部人际关系的冲突. 软件项目的研发周期,本来是应该根据项目工作量和开发人员情况来估算的.但现实中,往往会受到市场部门以及公司高层的干涉.他们从产品销售的角度考虑,希望软件产品越早发布越好,在他

艾伟也谈项目管理,个人管理:写书之前应该回答的几个问题

我在06年和一个同事写过一本Delphi入门的示例书籍Delphi数据库通用模块及典型系统开发,当时体会到了写书不像想象中的简单,基本上业余时间都没了,所以我之后就不想出书了,其中更重要的一个原因是,我还没有找到一本真正想与大家分享并且自己能写出来的书籍. 博客是个好东东,只要你愿意与人分享交流,你的行为就可以赢得大家的认可,如果你的观点或者文章写的又好,那么就会有更多形式与大家分享,例如最近我们可以看到的很多人都由于blog而出书了.同样,我这两年对博客的投入也赢得了一些人的信任,也收到过好几

艾伟也谈项目管理,学习腾讯的产品管理之道

马化腾带着一大批产品高管自上而下,持之以恒地推动产品本位的管理体制规范化,并不断地创新和优化这套体制,使得整个公司上上下下融入了"产品的基因",最终成就了"产品的腾讯". 1.设置一个质量监控小组,由经验非常丰富的高Level的产品人员构成,赋予他们很大的权力,去监控和规范所有的产品项目.并且用KPI来制约产品项目服从这些规范.为了不搞教条主义,很多规范都是在立项之初,由项目经理和这个小组共同确认的,未必是硬性指派,一经确认就受到严格监控.确保好的规范不流于空喊口号

艾伟也谈项目管理,如何管理“人”

我们常说工作中应该"对事不对人",但事都是人做的,不同的人做相同的事效果可能相去甚远,再好的业务如果用错了人也会全盘皆输.正所谓"事在人为"嘛,识人.用人.聚人是一个团队管理者获得成功的基础. 先说怎么认识人   人格矩阵法.即所谓的Topk技术,Topk就是由:tiger.owl.peacock 与 koala 4个英文单词的第一个字母组成,即把人的人格类型总结为老虎.猫头鹰.孔雀与考拉这4种动物的行为智慧: 老虎-此类人表现为:做事结果导向明显(不在乎过程),野

艾伟也谈项目管理,DevOps,不是一个传说!

DevOps最近成了热词,望文生义,你也能猜个八九不离十,它就是在说"研发团队"与"运维团队"之间的那点事儿.那么,到底什么是"DevOps"呢? WikiPedia上说:"DevOps是软件开发.运维和质量保证三个部门之间的沟通.协作和集成所采用的流程.方法和体系的一个集合.它是人们为了及时生产软件产品或服务,以满足某个业务目标,对开发与运维之间相互依存关系的一种新的理解."这恰好体现了精益管理中的客户价值原则,即:以客户的

艾伟也谈项目管理,我眼中的DevOps

相关文章:DevOps,不是一个传说! 过去一年以来,一批来自欧美的.不墨守陈规的系统管理员和开发人员一直在谈论一个新概念:DevOps.DevOps 就是开发(Development) 和运维(Operations)这两个领域的合并.(如果没错的话,DevOps还包括产品管理.QA.*winces* 甚至销售等领域) 脱节(The Broken) 那么--为什么要合并这两个领域?原因很多,但首要原因是:我们目前的工作流程是脱节的.绝对的脱节.很多公司的开发部门和运维部门之间存在的深刻矛盾,其实

艾伟也谈项目管理,多任务让你走得更慢

现代商务依靠多任务来完成工作.评价员工也基于的他们多任务能力.IT业人员会被例行指派到多个项目中去.我们是经常在这样做吗?多任务起作用吗?多任务的真正影响是什么?有别的选择吗? 这里老词重提一下"单任务",它代表了我们在多任务之前所习惯的软件工作方式.在这里的"多任务",指的是"工作在很多项目上".现代商务把它称作"多任务",认为它是一种更有效提高工作输出的策略.其实,不止工作,我们在日常生活中也会小规模地多任务.这两者在做法

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

昨天与同行进行案例讨论时得知,前2个月还被列为正面经典案例的项目到这次讨论时居然变成了反面典型,真可谓成也萧何败也萧何啊. 该项目是一个软件外包项目,发包方是非中国大陆的客户,项目规模在500人月左右,团队人数峰值为50人,实施周期为12个月.项目是2个公司联合投标中标的,其中一个公司只负责商务活动和客户沟通(签合同之前的绝大部分工作),另一个公司负责真正的项目实施(合同签订后的绝大部分工作). 项目初期,在人力资源上遇到以下问题: 1.由于项目所涉及的业务领域比较专业,负责真正项目实施的软件公

艾伟也谈项目管理,敏捷实施中的常见错误

一些评论员写下了敏捷实施中一些常见错误和反模式.他们贴出了"Top X"列表,列出了需要避免的事项和他们曾在各种组织实现敏捷时见过的错误. Target Process的Michael Dubakov写了两篇博文:"10个敏捷实施中最常见的错误"(Part 1; Part 2 ).他认为"许多公司在敏捷实施中再三犯同样的错误." 他的常见错误列表如下: 1. 从一个工具开始敏捷开发是不同的.一个工具不会立刻产生影响,不会由于这一工具的存在而解决多