`
bcyy
  • 浏览: 1825764 次
文章分类
社区版块
存档分类
最新评论

程序员要勇于说不

 
阅读更多

在网上看到一篇文章,很有感触。

又一次情绪激动、气氛高度紧张的会议,这一次是商议如何让目前这个重要项目“重回正轨”——计划的完工日期早已超了几个星期。所有的这些场景听起来都很耳熟吗?我想说的是,项目超期在任何行业里都是常见的事情。然而,软件行业里看起来更容易出现这种情况。

我们怎么会走到这种地步的?这还要从我们梦开始的地方说起。所有的开始都是精神抖擞、干劲十足。一个漂亮的创意,这次我们发誓绝不会重蹈上次的覆辙,不会犯上次的错误。这次我们告诉自己,这次的计划将会“正确”的执行,不会图省事,也不会中途变更。经常有时候我们会感觉梦想正朝正确的方向前进,设计很成功,每个人都很乐观,外界评论也很好。然后,噩梦开始降临,因为各种打击开始出现。

系统中最容易的部分却耗用了大家全部的时间。一个微小的疏忽就可能意味着当初一系列简单的假设都不再成立。错误的假设产生连锁效应,导致系统设计陷入死局。需要对设计进行修改来纠正这些问题。希望仍然存在,只要付出足够不眠之夜和周末加班,我们仍然能让项目“重回正轨”

具有里程碑意义的原型终于诞生了,所有人都充满信心,因为原型表现的非常好。外人不知道这是多少个通宵达旦的努力换来的。很快,“小需求”开始出现。通常的说辞都是从“这有什么难的?”“这真的很简单!”开始,更经典的话是“如果我们能够…那将会太神奇了”。通过交换意见发现,这些新增的小的功能特征不仅看起来“简单”,而且实际可做。当然,你是不会说不的,然而,历史的悲剧即将重演。

现在,你和你的团队终于回到了现实世界,再次查看这些新增需求。在经过了近距离的观察这些看起来“非常简单的功能特征”后,突然意识到它们并不像起初听起来的那样简单。但为时已晚,你已经答应了这些新修改。

“呯!”你的邮箱通知你有了一封新邮件,真是火上浇油,销售已经向客户许诺。销售向客户谈到了这些“简单”的新功能,而客户提出来更多他们想要的“更简单”的新功能。销售照单全收,因为这些新需求听起来比起初那些更简单。


停,不能这么干

在80年代和90年代期间有一个非常流行的运动口号: “Just Say No”,是用来宣传让孩子们远离。不管你是否还记得这场运动,它表达的信息是非常有力的。相似的,我们应该使用同样的语气来面对我们遇到的问题。

当然,我并不是在怂恿抵制任何的需求变更。从我的角度,任何需要编码开发的新增内容我都会用红线划分开。但诸如界面或前端内容的修改不包括在内。

任何新增需求在接受前一定要确定相应的充裕的追加时间。内心里对新需求的缺省反应应该是“just say no”。当然,并不需要从表面上暴露这种反应,可以用适当的外交手段达到这种效果。在项目开始之日,任何一个最初没有规划的“需求变更”都要谨慎斟酌。任何后来新增的功能特征都要坚持这个原则。有了这个原则你很容易说出“不”。因为这是一个标尺,所有人都明白,后加的新功能会耗费额外的时间。把这种压力放在客户和老板的身上,要么延缓完工日期,要么放弃另外一个功能做替换。

结论

有各种各样的原因会导致一个软件项目不能按时完工。项目进展缓慢,程序员持续在高强度压力下工作,这使项目开发时间的预估变得更加困难。程序员应该有心理准备,新增需求的情况肯定会出现。把“just say no”记在心里,多少能预防你张嘴就说“行”的习惯。玩枪很危险,给枪加上保险装置,至少能防止伤了自己的脚。

分享到:
评论

相关推荐

    什么样的人适合做程序员?程序员应该具有什么样的素质程序员四大禁忌

    ③要严谨细心,程序设计语言不是人的自然语言,本身就是严格的,程序员有一处不小心,都可能导致所设计的程序错误或者不能达到设计目的,更严重的会导致电脑死机甚至系统崩溃。 ④要能勇于挑战难题,以解决一个程序...

    WEB前端程序员面试模板可编辑Word模板程序员面试模板

    工作态度评价:良好的责任感,吃苦耐劳,擅于管理时间,勇于面对变化和挑战。 技能证书 软件类:国家计算机二级MSoffice证书 语言类:大学英语六级证书,普通话二甲资格证 其他类:机动车驾驶证

    程序员敏捷之路秘笈:降龙十八掌

    但是,有朋友说这几次都是站在管理的角度,程序员自己如何才能做做到敏捷呢?回来想想再结合之前看过的书总结出了如下18条,于是就起名“降龙十八掌”吧。到底哪一条对哪一掌  在公司做了三次相关敏捷的主题:现有...

    The-Pragmatic-Programmers:程序员思维修炼 -- 读书总结

    高级新手:不想要全局思维 新手:需要指令清单 由新手到专家的转变,脱离独立与绝对化规则,进入直觉的境界并最终称为系统本身的一部分: 规则 -> 直觉 考虑各个方面 -> 关注相关方面 旁观者 -> 系统的一部分 不知道...

    程序员面试刷题的书哪个好-selenium-:Selenium-

    程序员面试刷题的书哪个...2、 面对领导的指出的错误要敢于承认,面对领导批评要勇于接收, 领导不满意----对事不对人 为难你---小成绩满,沾沾自喜,忽略了谦虚的态度。 安排冲突是—领导不了解情况,将工作进度和工作

    7前端面试二面 1:如何回答常见的软技能问题.md

    面试是个技术活,不仅仅是技术,各种软技能的面试技巧也是非常重要的,尤其是程序员一般对于自己的软技能不是很看重,其实**软技能才是决定你职场能够走多远的关键**。 ## 程序员应该具备的软技能 程序员除了业务...

    技术简历.教你怎么写,面试的敲门砖.

    简历的一部分介绍: 1. 本人热爱软件事业,对IT领域的软件开发和...4. 有比较强的动手能力,勇于面对困难和挑战,有很好的分析问题与解决问题的能力; 5. 工作认真负责,积极上进,能够吃苦耐劳,有良好的职业素质;

    Java-design-mode.zip_site:www.pudn.com

    Java设计模式,我想很多java程序员都没有懂。希望大家勇于学习

    TypeScript魔法堂之枚举的超实用手册

    前言 也许前端的同学会问JavaScript从诞生至今都没有枚举类型,...语言没有提供规范和语言实现,不代表思想活跃勇于造轮子的程序员们不会自己撸一个。 如果语言没有提供,还有那么毅然决然要自己造一个,那枚举到底

    Java简明教程

     本书讲述Java面向对象编程的思想和方法,揭示Java的技术实现内幕和编译上的不完善之处,这对培养读者勤于思考、勇于实践和敢十创新很有帮助。在编排上采用“提出问题→引导读者思考→培养思考能力”的模式。  抓...

    phpcms2008

    3年来,凭借Phpcms团队长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Phpcms得到了近10万网站的认可,并且越来越多地被应用到大中型商业网站 主要功能: 新闻、图片、下载、信息、产品、...

    Sail!企业网站管理系统简体中文版 v1.1.zip

    2年来,凭借Silence长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Sail得到了很多公司和网站的认可,并且越来越多地被应用到大中型商业网站 主要功能: 单页、文章、产品、公告、留言、...

    XTCMS内容管理系统 v1.1.zip

    2年来,凭借Silence长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得XTCMS得到了很多公司和网站的认可,并且越来越多地被应用到大中型商业网站 主要功能: 单页、文章、产品、公告、留言、...

    phpcms2008_gbk

    3年来,凭借Phpcms团队长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Phpcms得到了近10万网站的认可,并且越来越多地被应用到大中型商业网站 主要功能: 新闻、图片、下载、信息、产品、...

    金领简历 敲开苹果 微软 谷歌的大门

    《金领简历:敲开苹果、微软、谷歌的大门》特别适合在校学生及希望进入顶级科技公司的求职者(特别是程序员、设计师和游戏开发员)阅读。 职场大牛的武林秘笈 进入顶级科技公司的葵花宝典 赢得高薪的综合性指南 ...

    基于javaweb实现酒店客房预定管理系统附项目源码+文档说明

    涵盖知识面广,可有效地提高学生综合运用所学知识分析解决问题的能力,增强学生对事物的理解与掌握能力,培养学生掌握科学的研究方法,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学习与工作奠定了...

    基于JAVA JSP+SQL网上书店系统的毕业设计,数据库用Microsoft SQLServer,通过编写JavaBeans

    为了实现上述目的,我对网上书店系统有了深一步的了解,从而满足客户的要求,让他们可以随时找到自己想要购买的图书。 本论文课题新颖,主要涉及软件,数据库与网络技术等。涵盖知识面广,可有效地提高学生综合运用...

    Sail!企业网站管理系统 v1.0中文版

    2年来,凭借Silence长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Sail得到了很多公司和网站的认可,并且越来越多地被应用到大中型商业网站 主要功能: 单页、文章、产品、公告、留言、...

    Sail!企业网站管理系统简体中文版 v1.1

    2年来,凭借Silence长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Sail得到了很多公司和网站的认可,并且越来越多地被应用到大中型商业网站主要功能:单页、文章、产品、公告、留言、招聘...

    PhpCms2008 SP4 20111122 简体GBK

    3年来,凭借Phpcms团队长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得Phpcms得到了近10万网站的认可,并且越来越多地被应用到大中型商业网站。 主要功能: 新闻、图片、下载、信息、...

Global site tag (gtag.js) - Google Analytics