- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目经理应该知道的97件事以往的软件开发模式是先了解用户的要求,然后再在极度神秘的环境下进行编程测试。毕竟,用户根本不知道我们在做什么,对吧?直至项目结束,我们的魔术师才会匆匆登场,揭去魔法布,然后期望用户会对我们卓越的产品惊叹不已。然而用户此时的通常反应是: “咳,好吧,我知道你们花了很多功夫,但我们真正需要的是……”今天,项目成功的秘诀就是尽早向用户展示任何可以展示的东西。如果能在项目启动早期,而不是当整个项目都结束的时候,就能发现项目中存在的问题,那该有多好啊!随着项目时间的推进,变更项目的成本越来越高。重新编码、重新测试以及改进当前软件的时间,加上整合外围代码进行集成测试所花费的时间都会大大拖延项目进度。如果变化非常重大,还可能危及时间和成本底线,需要经过变更控制委员会一个漫长的批准程序。在一些细小环节上做出的编程决策,或许对于软件开发人员和项目经理而言道理十足,可当软件投入使用后却有可能给用户造成巨大的混乱。我知道曾经有一个大型的培训公司,花了500万美元重新设计它的订购软件系统。此前,项目编号同订购产品之间的匹配存在一定逻辑性。例如,4125可能是学生手册,4225则是配套的学生练习盘,4325可以代表教师手册,4425则是营销宣传时使用的课程大纲等。你可以在同一屏幕上订购4X25系列的所有项目。①?? PHR,即 Professional? in Human Resources(人力资源专家) ,是由美国认证协会(American Certi- fication Institute)推出的在国际范围内比较权威的人力资源管理知识体系认证资格。——编者注每天,全球 140 个地方的行政助理一遍遍地反复订购同类材料,并很快记住了项目编号。一旦知道了学生手册的编号,他们无须查看就可以立即键入其他项目的编号,这样一来,订购过程十分快捷。在重新设计时,不知何故,这个项目团队居然忘记考虑实际情况下真人是如何进行订购的。新的设计方式中,项目之间没有逻辑关系。项目 6358 可能就是4125 曾经代表的学生手册,而其配套的学生练习盘现在是? 8872,而同一类教师手册又是 3392。现在,不仅用户不得不逐项查询并试着“忘记”旧的编号和系统,而且同类产品的不同项目也会分别出现在不同的页面上。行政助理们很愤怒。订购过程慢得就像是蜗牛在蠕动。该项目最后远远突破了它的时间和成本底线。作为项目经理,你应该尽早并经常让软件开发人员和用户交谈。2. 避免打地鼠式开发软件项目经理经常面临及早交付产品的巨大压力。时间是关键。你如何才能快速完成任务呢?假设你的团队有两名程序员,伯尼和罗布。两人都很能干,知识面相同,编程语言技巧也相当。你发现在开发过程中伯尼实现软件功能的速度远远超过罗布。当伯尼着力于快速完成编程时,罗布正花时间写代码并对其进行重构①。罗布对变量和方法的命名更擅长。一旦写的程序能够运行起来,他就把这个程序分成几小块。现在他要写测试来确保该程序的每一块都能按照他的意图运行。当他觉得结果比较满意时才宣称实现了功能。但是假设你并不知道上述这些细节。如果你只看他们谁先宣称实现了功能,那么很明显伯尼表现得更好,对吗?几个星期之后,你向客户演示这些功能。像往常一样,顾客喜欢你已经完成的功能,但现在需要你做一些改动和完善。你让软件开发人员修改这些代码。当你把新改进的功能带回给客户时,他们试用了罗布实现的功能,对他做出的改动十分满意。①? 重构就是改动代码,完善其内部组成结构而不改变其外部功能。它改进软件产品设计。重构代码是回过头去完善以前仓促创建并测试的某项可用的功能。现在需要进一步对该功能进行内部改进,以便长期使用,也使日后增加功能更为方便。遗憾的是他们发现伯尼实现的功能有些奇怪。当伯尼编写好新的功能后,一些以前能使用的功能现在却不能用了。客户把这些作为缺陷标记出来,然后你让伯尼来修改。客户又一次测试这些功能,结果后来新增的功能也不能用了。这到底是咋回事呢?如果你有孩子,就会知道发生了什么。伯尼创建的是一个打地鼠式的应用程序。打地鼠是一种游戏,孩子们拿着一个木棒敲打几个孔中随意弹出的地鼠,他们会很惊奇接下来是哪个地鼠弹出来,而且还乐此不疲。然而,在修改应用程序的时候如果总有坏代码不知从何处随意弹出,那可不是好玩的事情。那会令人沮丧,结果也难以预料,并且它会减慢产品开发速度。伯尼一开始就全速冲刺,只是南辕北辙了。? 尽管罗布从一开始就表现得较慢,但实际上他编写的代码更胜一筹。事实证明,他的节奏是可持续发展的。由于最初编写的代码就有较好的质量,所以,他才能更快地做出可行的改动。而且他早期编写的测试能随时带给他反馈信息,让他了解自己新写的代码是否与原有应用程序的其他部分兼容。? 当估计某一功能的实现时间时,不要只考虑最初写代码所花费的时间,还要加上提升、
您可能关注的文档
最近下载
- 电力系统优化与调度软件:PLEXOS二次开发_(16).电力系统规划与运营.docx
- 民宿管家职业技能竞赛理论考试题库(含答案).docx
- 古代诗人名人柳永人物介绍PPT.pptx VIP
- 第5章独立第三方B2B型医药电子市场.ppt VIP
- 北京市西城区2024年小升初考试语文试卷含答案.doc VIP
- AI技术在化学课堂的应用效果研究教学研究课题报告.docx
- HG∕T 5809-2020 浸胶芳纶帆布.pdf
- 网络安全防御能力评价体系框架.pdf VIP
- 2024年嘉兴国际商务区投资建设有限公司人员招聘笔试备考题库及答案解析.docx
- 统编《中国历史》八年级下册教材详细分析和教学策略.pptx
文档评论(0)