传说中:

「杀一个程序猿不需要用枪,改三次需求就可以了。」

而且,

「这竟然也是程序猿制造Bug的根本原因....」

↓↓↓↓↓↓↓

#/原始需求/#

 

你去饭店,坐下来。

“服务员,给我来份宫保鸡丁!”

“好嘞!”

↓↓↓↓↓↓↓

#/中途需求变更/#

大厨做到一半。

“服务员,菜里不要放肉。”

“不放肉怎么做啊?”

“不放肉就行了,其它按正常程序做,不就行了,难吗?”

“好的您稍等”

↓↓↓↓↓↓↓

#/改动太大,部分重构/#

厨房:

大厨:“你大爷,我肉都回锅了”

服务员:“顾客非要要求的嘛,你把肉挑出来不就行了吗”

大厨:“行你大爷”

然而还是一点点挑出来了

↓↓↓↓↓↓↓

#/低估改动成本/#

 

餐厅:

“服务员,菜里能给我加点腐竹吗?”

“行,这个应该简单。”

↓↓↓↓↓↓↓

#/新需求引入了新研发成本/#

 

厨房:

大厨:“你TMD,不知道腐竹得提前泡水?炒到一半才说?跟他说,想吃腐竹就多等半天”

服务员:“啊你怎么不早说?”

大厨:“早说你MLGB我怎么知道他要往宫保鸡丁里放腐竹”

然而还是去泡腐竹了

——新需求引入了新研发成本

↓↓↓↓↓↓↓

#/某一功能点摇摆不定/#

 

餐厅:

“服务员,还是把肉加回去吧”

“您不是刚说不要肉吗”

“现在又想要了”

“…好的您稍等”

↓↓↓↓↓↓↓

#/甲方是大爷/#

 

厨房:

大厨:“日你啊,菜都炒过火了你让我放肉?还好肉我没扔”

服务员:“客户提的要求你日我干嘛?”

大厨:“你就不能拒绝他啊?啊?”

服务员:“人家是客户嘛。”

↓↓↓↓↓↓↓

#/改动开始导致工期延误/#

 

餐厅:

“服务员!服务员!”

“来了来了,你好?”

“怎么这么半天啊?”

“稍等我给您催催啊”

↓↓↓↓↓↓↓

#/开发者请求重新排期/#

厨房:

大厨:“催你M催,腐竹没泡好,我还得重新放油,他要想吃老的也行,没法保质保量”

↓↓↓↓↓↓↓

#/甲方催活/#

餐厅:

服务员:“抱歉,加腐竹的话得多等半天,您别着急哈”

“我靠要等那么久?我现在就要吃,你们能快点吗?”

“行…您稍等”

↓↓↓↓↓↓↓

#/开发者开始和中间人pk/#

 

厨房:

大厨:“我日他仙人板板,中途改需求又想按期交付,逗我玩呢?”

服务员:“那我问问,要不让他们换个菜?”

大厨:“再换我就死了”

↓↓↓↓↓↓↓

#/因工期过长再次改动需求/#

 

餐厅:

“服务员,这样吧,腐竹不要了,换成蒜毫能快点吗?对了,顺便加点番茄酱”

↓↓↓↓↓↓↓

#/频繁改动开始导致大量冗余/#

 

厨房:

大厨:“我日了狗啊,你TM不知道蒜毫也得焯水啊?还有你让我怎么往热菜里放番茄酱啊??”

服务员:“焯水也比等腐竹强吧,番茄酱往里一倒不就行了吗?很难吗?”

大厨:“草。腐竹我还得接着泡,万一这孙子一会又想要了呢。”

↓↓↓↓↓↓↓

#/奇葩需求/#

 

餐厅:

“服务员,菜里加茄丁了没有?我去其它饭店吃可都是有茄丁的”

“好好好您稍等您稍等”

↓↓↓↓↓↓↓

#/奇葩你也得做/#

 

厨房:

大厨:“我去他二大爷他吃的是斯里兰卡三流技校炒的宫保鸡丁吗?宫保鸡丁里放茄丁??”

服务员:“茄丁抄好了扔里边不就行了吗?”

大厨:“那TM还能叫菜吗?哪个系的?”

服务员:“客户要,你就给炒了吧。”

大厨:“MB你顺道问问他腐竹还要不要,我这盆腐竹还占着地方呢不要我就扔了”

↓↓↓↓↓↓↓

#/黑暗前的最后黎明/#

 

餐厅:

“服务员,还要多久能好啊”

“很快,很快…”

“再给我来杯西瓜汁。”

“…好”

“我再等10分钟,还不好我就走了,反正还没给钱。”

“很快,很快…”

↓↓↓↓↓↓↓

#/出现Bug..../#

10分钟后

“咦,我上次吃的不是这个味啊?”

程序猿制造Bug的根本原因竟然是....的更多相关文章

  1. 程序猿——踩bug之路

    从开始这就是一个新的坑,还好今天我们爬上了: 带着Ui界面的编程,最想感谢的是我的搭档乔美萱:此处我觉得需要掌声和尖叫,一路带我从走到飞: 一.结对编程项目:带UI的小初高数学学习软件 1.用户注册功 ...

  2. 论 BUG调试与(程序猿)初学者

    作为一枚程序猿,BUG调试是最基本的技能,对于初学者更是重中之重.个人而言,要想为自己的程序猿生涯更上一层楼,就得知道什么是BUG调试,而且还必须知道怎么调好BUG.那么BUG究竟是什么呢?在我之前的 ...

  3. 漫谈程序猿系列:无BUG不生活

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZm9ydW9r/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...

  4. 程序bug导致了天大的损失,要枪毙程序猿吗?[ZZ]

    来自猫扑:程序bug导致了天大的损失,要枪毙程序猿吗? 0 引言 年会上Review 源代码算什么? 法庭上 Review code 才带劲..... 2015年9月3日,随着东京最高法院驳回瑞穗证券 ...

  5. 关于程序猿怎样降低程序Bug的若干建议

    毫无疑问,程序猿是善于思考问题的一族. 一个程序的编写都是通过:思考.设计.编写.调试.測试以及执行这些主要的阶段. 但大部分程序猿都有一个问题就是不太愿意測试自己的代码. 他们草草的调式完毕以后就觉 ...

  6. 怎样跟程序猿谈一场没有Bug的恋爱

    <iframe width="580" height="90" align="center,center" id="cpro ...

  7. 漫谈程序猿系列:她发现了一个Bug……

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZm9ydW9r/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...

  8. 从此走上一条iOS程序猿不归路。。。

    新的城市,新的生活!前不久刚刚结束了苦逼的面试找工作之旅,期间也小有收货,如今正处年底工作闲暇之余,将前一阵子陆陆续续的总结整理了一下,本人菜鸟程序猿一只,水平有限,本文总结的知识不算深入,比较浅显, ...

  9. 程序猿进化 - 在拉钩子1024对APE节讲座计划

    注意:下面这篇文章来自于我在网上拉勾1024对APE节现场演示程序. 我是蒋宇捷,信天创投的合伙人.之前是百度魔图的联合创始人. 我先做个自我介绍,事实上每次介绍自己事实上是非常痛苦的事情,由于我前不 ...

随机推荐

  1. 了解一下Ubuntu系统

    百度百科: ubuntu系统基于Debian发行版和GNOME桌面环境.Ubuntu的目标在于为一般用户提供一个最新的.同时又相当稳定的主要由自由软件构建而成的操作系统,它可免费使用,并带有社团及专业 ...

  2. linux redis 多实例安装

    前言: Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表( ...

  3. day_8文件的操作

    首先昨天讲的内容有 类型转换 1:数字类型: int ()  bool()  float() 2:str 与int:    int('10') | int('-10') | int('0') | fl ...

  4. C++面试基础之回调

    回调函数技术广泛运用在动态库开发(或者类库)中,是使软件模块化的重要手段.回调函数可以看作是一种通知和实现机制,用于控制反转,即模块A调用模块B时,模块B完成一定任务后反过头来调用模块A.在被调用方代 ...

  5. 包建强的培训课程(4):App测试深入学习和研究

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  6. Java面试题精选,大型网站系统架构你不得不懂的10个问题

    作者:JavaGuide(公众号) 下面这些问题都是一线大厂的真实面试问题,不论是对你面试还是说拓宽知识面都很有帮助.之前发过一篇8 张图读懂大型网站技术架构 可以作为不太了解大型网站系统技术架构朋友 ...

  7. MySQL InnoDB 逻辑存储结构

    MySQL InnoDB 逻辑存储结构 从InnoDB存储引擎的逻辑结构看,所有数据都被逻辑地存放在一个空间内,称为表空间,而表空间由段(sengment).区(extent).页(page)组成.p ...

  8. PHP判断访问系统的用户设备类型

    当今的电子设备越来越多,我们在开发过程中往往也需要分析用户使用的电子设备类型.下面是采用PHP代码来获取用户使用的哪些类型的电子设备来访问自己的平台. /** * 用户设备类型 * @return s ...

  9. Kali学习笔记32:Maltego、Exiftool

    有段时间没学Kali里面的工具了 以前做信息收集的时候呢,忘记了两个很强大的工具:Maltego.Exiftool 先来看看Maltego: 这个工具不仅可以方便地收集DNS信息等等,强大地地方还在于 ...

  10. Python中变量的命名

    变量的命名 目标 标识符和关键字 变量的命名规则 0.1 标识符和关键字 1.1 标识符 标示符就是程序员定义的 变量名.函数名 名字 需要有 见名知义 的效果,见下图: 标示符可以由 字母.下划线 ...