好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

技术项目应避免的常见犯错误.docx

6页
  • 卖家[上传人]:菲***
  • 文档编号:209328601
  • 上传时间:2021-11-09
  • 文档格式:DOCX
  • 文档大小:15.14KB
  • / 6 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 技术项目应避免的常见犯错误 技术项目的失败,屡见不鲜,不论你运营的是一个持续跟进一些项目的软件公司,还是一个需要顾问来为你供应系统集成的非技术公司,你都有可能遭遇这个问题一个项目延期数年,超支数百万,已经不是新奇事了进度延期、预算疯涨、直至最终完全失败,这在软件世界特别普遍 例如,在20XX年,我飞去洛杉矶出席微软为软件开发者举办的其中一个会议活动中,微软发表了感动人心的消息:下一个版本的windows将会带来一些革命性的新功能回顾我的笔记,其中有一个新功能叫做WinFS详细细节不讲,简洁来说,WinFS建议将操作系统的文件系统功能(文件和文件夹的位置信息)和数据库功能(个人对文件的描述信息)合而为一,放进一个又大又邪恶的“文件数据库混合体” 这是一个挺有野心的动作从技术上来说,WinFS约等于重新支配一个国家的交通系统,以适应会飞的汽车是的,这样会使航空公司停业同样,全部车库也要变宽来适应带翼的车子但先别想太远,还是让这功能在一年或最多两年内面世再说吧 三年过去了一个叫Quentin Clark的微软经理在博客里说道,WinFS根本不能准时面世,并且它阻碍了微软推出其最新的操作系统。

      因此这个功能要延期,或者放到以后版本的数据库上,这意味着没有了“将文件系统与数据库系统合而为一”这唯一的亮点有鉴于此,你怎么知道你某个技术项目哪一天会注定成为另一个WinFS?这里我有五步指引来确证一个软件的失败: 错误一:采用平凡的开发团队 软件设计是有难度的,而且不幸的是,许多自称程序员的人的确不能胜任软件设计尽管这是项目失败的首要原因,你也不曾从官方的失败报告中得知在全部的行业,软件业,物流业,或者客服业,人们对同事的无能都太过宽容你从来都不会听到有人说“我们团队没有足够的智慧来完成这件事”为什么要这样伤人的心呢?显而易见的,假如这队分得了任务的人员并不擅长这份工作,他们的工作会日复一日,日复一日……等等……但软件却没有做出来你也不用太担忧HR会阻挠你招聘一班废物在大多数的案例里,我向你保证,HR对此毫无建树 错误二:按周来定目标 假设你想改造你的厨房你请来的师傅已经搞过许多厨房,而且不作具体蓝图就能估算出这项工作的成本但软件开发者是在制造前所未有的东西假如前所已有,他卖张拷贝的光盘给你就行了因此,粗略的估计是不可能的他们需要在写代码之前做好详尽的计划。

      无论你是客户还是开发经理,你的责任就是确保开发人员带着详尽计划来开展工作当你向开发人员询问计划时,他们大多数人可能只会给你一份把进度按周来划分的时间表这看似特别合理,但其实不然假如你让软件团队提交一份大粒度的时间表(大是指需要两天以上的工作),那么你可以认定他们没有考虑到全部需要实现的细节,而这些细节将会积累,导致延期 错误三:为截止时间而谈判 还有什么比按周划分软件项目更糟糕?就是要求团队承诺大大地提早完成工作依据我的经验,大多数开发者都会乐观地接受你的示意并参与讨价还价然后你会得到一份友好的协定时间表,但却无法按时执行 试想以下状况:海象妈妈会在怀孕15到16个月后,生出小海象你可能会叫海象妈妈保证在15个月内做到,而她也说没问题 或者你说,“15个月? 疯了吧?我们要在8个月内生出”当然,这样谈判是无法促进事成的,而且即使得到一份8个月的进度表,我还是告知你一个小隐秘:这是不可能实现的你可以取得一份11个月的时间表,但你还是要等15个月,因为小海象就是要15个月才能出产,有时甚至16个月 错误四:均分任务 这里有一个破坏项目的好方法。

      列出人们需要做的全部工作,然后给重新均分给各人假如Mary有太多的工作,就分一些给John这听起来完全合理,使得你不会被质疑但我向你保证,时间一长确定会出现问题那是因为当一个开发者去替代另一个时,我们有理由假设效率降为非常之一John将会花费很多小时去搞清晰Mary其实已经熟识的那部分代码而且John改bug也不及Mary快,因为Mary才了解全部的陷阱在哪里 错误五:工作到深夜 让我们假设有个项目要每周工作40小时,连续六个月才能完成假如你让全部人每周工作60小时,那么持续四个月就能完全搞定软件团队可能甚至会接受这个挑战,因为这使他们看上去像英雄(那个海象队有多厉害?他们每个周末都来工作!)这能行的,是吧?再想想吧有一部完整的文献论述了“加班不会使软件更快产出”Edward Yourdon,作为软件企业家和该文献的,称这种项目为“死亡行军” 软件开发者花费大量的脑力劳动即使是最好的程序员,也很少有能坚持几小时以上的高强度脑力劳动另外,他们还需要休息一下大脑这就是为什么你似乎总能撞到他们在上网或玩游玩 强迫他们投入更长时间坐在电脑前,并不会转化为更多的产出——即使会,那都将是劣质的产品。

      当软件开发者的大脑完全发烧,他们几乎做错多过做对,写出无法使用的代码,或者引入大量的bug而假如你真的禁止他们上网,玩多人游玩,强迫他们在正常的睡眠时间连续写代码,好吧,他们可能会开头离你而去死亡行军不是造成项目延期和预算爆炸的唯一条件,但肯定是充分条件 假如以上是使你项目失败的方法汇总,那么怎样做到万无一失呢?首先,你要招聘一个巨星级人马在FogCreek,对于一个全职岗位,我们倾向于审核大约400个候选人因为最优秀的开发者拥有十倍于“一般优秀”的创造力 其次,让开发者给出细粒度的时间预算是的,让开发者去预估制作一个新应用需要花多长时间,是不简单的这就是为什么他们要在每个项目之前作出牢靠的蓝图 一旦你有时间表在手,不要尝试提前截止日期假如项目不能在你能谅解的时间内完成,解决方法不应是去交涉一个“好听的”时间表,而应当是争取更多资源,或者推迟上线,或者拿掉一些功能 最终,鼓舞你的员工按合理的工时,一周干40小时我是说真的除了间或为截止日期而冲刺,我们在Fog Creek都是一天8小时工作制在技术的世界里,应当将一个大项目看成是一次马拉松,而非一次短跑 当项目正在进行时,你会多次被诱导而想重新安排工作。

      但你要谨慎地重安排所换的新人需要花不少时间去驾驭原的代码我觉得让人员在不同岗位上轮换有助于消退不可替代性,但我是谨慎地支配这事,并且在时间表里加入额外的三周给新人以学习新代码,和额外的一周给旧人去教新人 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.