|
我个人认为,这是一篇不错的文章,虽然我不是Program Mananger,但是我几乎在做着和这个职位很相似的工作。在这里,我把这篇文章推荐给所有的程序员,我相信,这篇文章会让你明白,只有技术是远远不够的,因为没有Program Manager这个角色,程序员们只不过一些手中拿着利器却不知所措的散兵游勇。我希望我的导读和原文能给所有的程序带来启示。项目管理培训
原文在这里: “How to be a program manager”bbs.mypm.net
这篇文章的作者叫Joel Spolsky,在Microsoft做过Program Manager,这篇文章非常值得一读。下面是我给大家做的一个导读:项目管理者联盟
首先,他讲了两个人,一个是负责WYSIWYG 字处理的天才级的Program Manager——Charles Simonyi,第二个是上世纪80年代的负责Mac OS上的Excel项目的程序员Jabe Blumenthal,他发现了程序员和市场人员的代沟,Marketing的人很难通过把MBA-Speaking翻译成实际的Feature,并且,有太多的和编码不相关的工作,比如说,和用户交谈,运行usability测试,Reivew竞争者的产品,并且得冥思苦想怎么能让事情变得更简单,而我们的程序员通常来说即不具备这样的时间,也不具备这样的能力。于是,Jabe开始了他的Program Manager的生涯。项目管理者联盟文章
工作范围bbs.mypm.net
作者在第二节里说了一个PM主要负责哪些事务:项目管理者联盟
Design UIs (用户界面的设计)项目管理培训
Write functional specs (书写功能规格说明书)service.mypm.net
Coordinate teams (团队协调)项目经理博客
Serve as the customer advocate, and (从用户角度思考问题)项目经理博客
Wear Banana Republic chinos (Banana Republic是一个服装品牌,意思是作者在调侃PM需要衣冠楚楚,而不像程序员们只有T恤或牛仔裤)项目管理者联盟
接下来,作者讲述了他第一份Program Manager工作的经历,非常有意思,那是一个关于Excel 用户定制化的项目(陈皓注:应该是在Excel中加入VBScript的项目吧,就是所谓的宏)。项目管理者联盟
第一个阶段blog.mypm.net
首先,作者找了很多很多的用户谈论了这个什么是最有用最合理的实现,这是一个非常巨大的工作,花费了非常多的精力和时间。项目管理者联盟
然后,作者找到了Visual Basic团队询问了是否可能给Excel提供一个编译器和代码编辑器,以便实现“宏”。项目管理者联盟
接着,作者查看了一下Apple上面的AppleScript这种宏,取了取经。www.mypm.net
最后,作者同 Word, Access, Project, 和Mail团队们讨论了很多很多。项目管理者联盟
作者说,这个阶段的工作让他满是伤痕,他甚至害怕听到手机铃响。项目管理者联盟
第二个阶段项目管理者联盟
确定大方向。他开始写下Visual Baisc应该怎么样在Excel里面工作的文档。并提供了一些简单的宏的样子,这应该是high-level的Functional Spec。项目管理者联盟
当大的方向确定后,他开始了一些更为细节的功能规格说明的书写。这就是所谓的Functional Specification. (陈皓注:FS这份文档应该只是说明从用户的角度上来看这个产品长成什么样,而不是实现)pmp.mypm.net
虽然FS并不需要说明怎么去实现,但这份文档应该是需要非常详细地说明整个Excel和VBScript怎么相互交互的,这是其中最重要的部分。blog.mypm.net
当作者把FS的一个初始化版本发给开发团队(Ben Waldman)时,开发团队非常快地实现出了一个原型,并提供了面向对象的相关接口。但可惜的是,那并不是Program Manger所想要的。www.mypm.net
作者描述了一个细节如果帮助开发团队解决技术难点的例子。那是关于把一个Excel中的一个cell的值取出来的例子。当时,developer团队认为这是一个难点,因为这个值可能是任意类型的。而VB中却需要先声明变量的类型。后来,作者找到了VB的开发团队,了解到了Variants 和IDispatch可以做到这个。项目管理者联盟
我们可以看到,FS在这样反复地和developer 团队推敲,甚至去帮助程序员解决技术难题,之后最终才能确定下来。一旦FS确定后,program manger需要做两件事:转自项目管理者联盟
|