现代软件工程 第九章 【项目经理】练习与讨论

9.5.1  PM们的故事

讲了这么多条条框框,我们还是来讲几个故事吧。

A)是不是所有的好功能都是由PM主导,一步一步根据用户需求,按照用户场景设计,然后进行可用性测试等等步骤之后得来的呢?

功能本天成,妙手偶得之——一个来自微软的故事

约摸在1985年,微软的一个叫Steve Hazelrig的工程师正在写Mac Excel 版本的打印功能,那时候激光打印机很贵,而且离办公室也不近。他懒得经常跑到打印机那儿取打印纸检查打印效果,就写了一个小程序,把要输出到打印机的图像显示在屏幕上,还有一个放大镜功能可以把局部放大以检查每个像素的位置及效果。这时一个PM路过看到了这个小工具,说,这么酷的东西,为啥不做成一个功能呢?

所以后来微软的编辑软件都有了“打印预览”这一功能。然而,用户们并没有正式地要求这一功能。

B)PM怎么说服聪明的同事?

这个故事在[注4, 注5]中都提到了。在Macintosh研发的过程中,由于计算能力的限制,计算机的图形显示非常缓慢。一位聪明的程序员展示了他的新算法,能很快地画圆形和椭圆。当他得意地展示给Steve Jobs看的时候,(作为一个不懂编程技术的PM,Steve应该表示仰慕才对……)Steve平静地反问——你能继续改进,让圆角的矩形框显示速度加快么?程序员说:这个太难了,也没有必要。椭圆不是挺好的么?Steve为了说服同事,建议两人到外面散步,然后指出现实世界中的各种告示牌都是用圆角的矩形框来实现的,走了一圈,同事就被说服了。过了几天,圆角的矩形框也可以很快速地在屏幕上显示了。

C)PM如何找到需求?

一些人常说PM负责提需求,Dev就管实现就好了,那需求从哪里来呢?我们用了一章的内容来说明这个问题,参见本书“第8章 需求分析“。

D)PM的分析能力和韧性

能把市场、我方的优势和劣势、创新的机会讲得头头是道,也是一种能力。在“第8章 需求分析”中我们讲过NABC方法[YEKA3] 。乔布斯在NeXT公司时也做过很有说服力的分析:

http://v.youku.com/v_show/id_XMzE1Mzc2NTE2.html 

注意,这么厉害的PM,分析得这么透彻,但是NeXT的产品还是失败了。

但是乔布斯没有气馁,又投入了另一个公司的运作——Pixar。

你有这些能力么?

微软的PM有着独特的历史和价值,正如Steven Sinofsky讲的:一直被拷贝,但很少成功复制……[注6] [注8]。新的技术浪潮和商业模式给IT人士提供了一波又一波的机会,了解PM的特点和要求,对想要进入这一领域的同学来说很有好处。

9.5.2  我是做PM 的料么? 在校学生如何为成为PM做准备

你是否觉得你的长处不在于写代码和debug,而是协调、沟通,让一个团队或组织有效运转起来?你是否喜欢表达,善于和各种专业背景的人沟通?你是否经常思考如何改进生活中点点滴滴的小问题?你会思考这样的问题么:新浪微博、豆瓣、qq、微信都可以社交,它们的定位、产品特性、用户群、解决的需求,有什么不同?你是否对以下领域感兴趣,甚至自己找过相关的书来看:心理学、社会学、组织行为学、统计学、商业模式?

如果你的答案是yes,那么我看好你的PM潜质。

在校学生可以通过下面的方式锻炼自己的 PM 能力:

- 参加多种社团并组织一些活动,最好是草根的活动,而不是由上而下规定的活动;

- 选修各种相关学科的课程

- 争取在实际的企业中实习

- 和小伙伴一起,搞点小生意,小创业

9.5.3 生活中的三元组举例

我们说过, 大部分优秀的团队可以做到目标三元组 (多,快,省)中的两个,类似的三元组还可以用来说明各种商品或活动的不同特性, 例如,如果你和你的小伙伴想周末去某地旅游,交通工具的选择也可以用一个三元组来权衡(快速,灵活,便宜)。请分析各种交通工具的特性(长途汽车,火车,自驾,飞机,自行车,等)。


9.5.4 带领团队剖析现有软件的问题

  http://www.cnblogs.com/xinz/p/3308608.html

      公司的最高领导如何看 PM 的作用? 你觉得下面的说法有道理么?

      http://www.weibo.com/1657236125/BtDnHzTrs

9.5.5 PM 和乐团指挥,dev lead 和独奏演员

有人说,PM 既不懂开发,也不太懂测试,但是他们似乎指挥了团队的行动  -- 就像乐团的指挥一样。那么,那么乐团的指挥凭什么能让几十号人的乐团都听他的呢?     他们到底懂多少乐器,他们写过音乐么? 乐团指挥是怎么培训,怎么培养的呢? 他凭什么就能拿一根筷子就在台上指手划脚? 同样, PM 和一帮开发人员合作,PM 和开发领导 (dev lead)是什么关系,听谁的?

http://weibo.com/1826246840/E7jVrxI6n?type=comment#_rnd1473453120840

团队的PM (或者所有成员)去采访一个乐团指挥和独奏演员 (独奏小提琴家,钢琴家等),回答这些问题。  

9.5.6 PM 和风险控制

PM 和一些小伙伴做项目,就像一个创业公司一样,但是PM 要留意各种风险和失败的原因。下面是市场上创业公司失败的前几个原因,学生团队对这些风险有没有准备?

另外,我们现在做的具体项目也许从某些方面来说是前无古人的 (例如用到了某个新语言的特性),但是,类似的项目前人已经做了很多次,并且总结了很多经验。 PM 能否理解和运用这些经验, 请看 《快速软件开发》第三章中的典型错误。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/500377.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

现代软件工程 第十章 【典型用户和场景】 练习与讨论

1. 讨论:下面的老板犯了什么错误? 只看用户的表面语言或行动还是不够的。我们还要找到用户语言行动背后的动机! (图像来源: http://www.weibo.com/funnyshoelace) 2. 是否要文档 有人说,我们敏捷的团队,就喜欢直接的面对面的交流&#xff0…

现代软件工程 第十一章 【软件设计与实现】 练习与讨论

1 如何避免在产品开发后期不断有重大修改,导致其它模块的连锁反应? DCR Tell mode vs. Ask mode设计变更 在项目早期,如果大家觉得要做一个设计变更,便可以采用告知模式(Tell-mode)的形式,也就是说,修改方必须通告所…

现代软件工程 第十二章 【用户体验】练习与讨论

1 什么是用户体验, 什么时候开始考虑用户体验? 究竟什么是用户体验呢? 请看: http://www.infoq.com/articles/aaron-sanders-user-experience (中文版)http://kb.cnblogs.com/page/508097/ 既然用户体验和用户界面对一个项目这么重要&…

现代软件工程 第十七章 【人、绩效和职业道德】 练习与讨论

0. 为啥要讲人、绩效、和职业道德? 学好专业不就行了么,为啥要扯这么多? 用专业知识教育人是不够的。通过专业教育,他可以成为一种有用的机器,但是不能成为一个和谐发展的人。要使学生对价值有所理解并且产生热烈的感情…

现代软件工程 第十三章 【软件测试】 练习与讨论

13.5.2 有错不改 果冻: 微软的产品经过这么多版本的不断完善,应该是把所有问题都搞定,“止于至善”了吧? 阿超: 那也不一定,在非常有名的电子表格软件Excel中,就有这样一个Bug:Exce…

现代软件工程 第十四章 【质量保障】 练习与讨论

15.3.1 有些成功人士或公司认为不需要独立的测试角色(Test),你怎么看? 我猜想和踢足球类似,还是那几个原因: 人太牛: 不世出的天才,例如高德纳写书时发现排版软件不好用,就自己写了一个。也没听…

现代软件工程 第十五章 【稳定和发布阶段】练习与讨论

15.3.0 案例分析 可以看看这两个学生项目的例子,推断出这些团队的血型: STG游戏的跳票(为了完美,推迟了7天,但是7天之后也没有发布……) [i] 英语学习软件(说了“明早发布”,但是明早一直没到)[ii] 15.3.1 反动分子阿…

现代软件工程 第十六章 【IT 行业的创新】练习与讨论

16.6.0 Xerox Parc 的成功创新和推向市场的失败 http://research.microsoft.com/en-us/um/people/blampson/Slides/AltoAtPARCIn1970s_files/frame.htm http://research.microsoft.com/en-us/um/people/blampson/38-AltoSoftware/WebPage.html http://research.microsoft.com/…

感恩回馈——你评博客,我送好书

各位博客园的用户: 最近我的书《构建之法—现代软件工程》上市了,得到了不少读者和老师的好评,出版2个月即告重印。该书的相关信息参见豆瓣页面:http://book.douban.com/subject/25965995/ 《构建之法—现代软件工程》得以出版和畅…

《梦断代码》读后感 - 驱动,责任,交流,远虑

这三篇读后感原来发布在我自己申请的域名 yishan.cc 上面,后来这个域名被墙了。 (原文写于2008年12月) 几个星期前,我给《现代软件工程》课的每一个团队都发了一本 《Dreaming In Code》的中文版 《梦断代码》,要求写读后感。这本书讲了这样的…

软件工程练习:模块化,单元测试,回归测试,TDD

这是《构建之法》实战教学的一部分。适合作为同学们的第二个程序作业。 第一个程序作业: 请看 “概论” 一章的练习,或者老师的题目,例如这个。 作业要求: 软件工程的作业越来越有意思了, 我们在第一个作业中&#xff…

《构建之法》参考书和链接汇总

《构建之法》 参考书和链接汇总 参考书汇总 一些读者对《构建之法》引用过的参考书也感兴趣,因此我把所有参考书单独列出来。其实人大部分的思想都是受某些外部信息的启发影响而来,很多道理看似新颖,其实别人早就讲过了😀。这个参…

现代软件工程讲义 7 分析和设计方法

(这一节在第一版的 《构建之法》中没有, 是《构建之法》电子书(多看版), 和纸版书第二版中新增加的内容,纸版书第二版预计2015年6月出版) 11.1 分析和设计方法 我们写软件就是要解决用户的需求,我们需要表达和传递下面这些…

三周的 软件工程实践课 课程安排建议

不少学校想在暑期安排软件工程实践课, 在这么短的时间内要做到软件生命周期的完整体验是有很多挑战的,下面是一个建议: 软件工程课程设计 - 三周计划,10 次授课,10 次学生报告。 第一周,准备: 在…

现代软件工程讲义 源代码管理

【现代软件工程课件】 源代码管理 -- 以实践促进学习 移山软件学院的学生果冻问老师: 为啥需要源代码管理? 我自己写代码多爽,别人要,就用QQ 传过去好了。 老师问:原始人怎么建房子? 果冻:或者找一个洞&…

现代软件工程讲义 个人项目和结对项目练习 地铁

很多老师反映教软件工程和程序设计的时候没有合适的题目,《构建之法》提供了下面的题目,都是从简单的解题思路入手,逐步增量改进。学生们可以复习基本的编程技能,然后逐步加入模块化,文件处理,单元测试&…

最新软件工程总结,项目模板,软工作业下载

(改了标题吸引目标用户) 老师教课,学生上课,首先要讲明师生关系。 其次,就是要说明这门课的底线是什么。 我们假设所有人写作业都独立思考,认真实践,不断改进,勇于创新... 这个假设通常是不全面的&#xf…

C语言 教学实践建议

(编程/软件工程课程怎么教) 这是2016年秋季学期和北京工业大学耿丹学院合作教学的计划。这也可以用于其他学校的 C 语言课程。 2016级有四个班,每班大约 32 人,每班配有一个有一定实际工作经验的助教,配合老师把课教好。 C语言是一门基础课&…

团队项目建议 - 英语学习 App

在这几年推广《构建之法》软件工程教学的过程中,我看到很多老师在讲软件工程的时候,虽然讲了很多年,但是手头没有任何项目,学生或者现想(得到一些大而无当,无法在一学期内完成一个可用版本的项目), 或者抄袭…

结对和团队项目建议 - 黄金点游戏

故事看这里: 背景故事 (链接) 作业 这个游戏可以变成一个持续发展的团队项目: 1)在课堂上玩这个黄金点游戏,用Excel 纪录成绩。过渡到做成简单的单机版游戏,锻炼基本的编程能力 2)两人合作,做成简单的 client/server A…