`

从一个笑话看软件开发管理

 
阅读更多
<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60"></iframe>

关于软件开发的笑话有很多,下面这个是我刚在里的看到的:

1. 程序员写出自认为没有Bug的代码。
2. 软件测试,发现了20个Bug。
3. 程序员修改了10个Bug,并告诉测试组另外10个不是Bug。
4. 测试组发现其中5个改动根本无法工作,同时又发现了15个新Bug。
5. 重复3次步骤3和步骤4。
6. 鉴于市场方面的压力,为了配合当初制定的过分乐观的发布时间表,产品终于上市了。
7. 用户发现了137个新Bug。
8. 已经领了项目奖金的程序员不知跑到哪里去了。
9. 新组建的项目组修正了差不多全部137个Bug,但又发现了456个新Bug。
10. 最初那个程序员从斐济给饱受拖欠工资之苦的测试组寄来了一张明信片。整个测试组集体辞职。
11. 公司被竞争对手恶意收购。收购时,软件的最终版本包含783个Bug。
12. 新CEO走马上任。公司雇了一名新程序员重写该软件。
13. 程序员写出自认为没有Bug的代码。

要我说,如果真有这样的公司,不倒闭对不起人民。

这个笑话从程序员开始,到程序员结束,从头到尾都在说程序员的不是。但是我要说的是,这完全是管理者的失败,从整个过程中,看不到任何管理工作。这种管理者不但无知无能,还很无耻——将自己的失败责任推给程序员。

1、程序员凭什么证明他的代码没有BUG?有Test case吗?有Code review吗?这个环节管理缺失。

2、测试发现BUG有进行BUG管理吗?有跟踪吗?这个环节管理缺失。

3、凭什么证明程序员已经把那10个BUG修改好了?另10个又为什么不是BUG?BUG的评价标准难道是程序员说了算?这个环节管理缺失。

4、5个不能工作的BUG修改问题有没有追究责任?增加新BUG是修改过程中不可避免的事情,但是如果有有效的单元测试机制,可以大大减少这种情况。这个环节管理缺失。

5、迭代是正常的,但是问题处理于发散而不是收敛发展,可见没有有效的管理调控。这个环节管理缺失。

6、过于乐观的时间表和不可能达到的最后期限,都表现出管理者的无知和无能。而在这样的情况下强行推出产品,那就是无知者无畏了。

7、这是对用户的不负责任,管理者要负最大的责任。

8、这样的情况还能发项目奖金,只能说管理者不是一般的愚蠢。

9、管理工作没有任何的改进,问题仍然处于发散迭代状态。管理工作依然没有到位。

10、拖欠测试部门工资体现出管理者对质量管理工作的忽视以及对人力资源管理方面一无所知。

11、送被收购者两个字:活该。送收购者两个字:瞎眼。

12、可见新管理者与原管理者半斤八两,都没有认识到问题的根本所在。不过也只有这样的管理者才会作出收购这种公司的决策。

13、历史的重演是必然的。

一个正常的企业或是项目,其运作必须应该是循环向上进行的。而保障这种运行的工作就是管理。而管理工作的主要内容就是控制,包括控制循环的节奏——不能太快也不能太慢,控制发展的方向——只能向上不能向下,控制运作的稳定——不能大起大落或时聚时散等。

而这一切,在这个例子中都看不到。

在 这个笑话的例子中,一切都是以开发工作在驱动,这首先就是一个方向性错误,产品是为用户服务的,当然应该是以用户和市场作为驱动,并且结合自身的能力最终 确定工作的重点。这一错误折射出管理者对被管理的内容很不了解,只好任由比较了解的程序员摆布——事实上他们除了技术,并不会了解更多。

一个管理者如果对自己所管理的内容不了解,他就不可能管理得好

这是一件毫无疑问的事,可是国内的软件业似乎总是不相信这一点。中国软件业中流毒最深的谎言之一就是:

管理者只要懂管理就可以,不需要懂技术。

其实这不过是那些无知无能无耻的管理者为了骗钱而编出来的,相信这句话的人必将付出金钱的代价。

其 次是质量管理。基本的质量管理常识告诉我们,每次循环结束前,最重的工作就是总结改进。只有这样才能保证循环运作是向上发展,而不是失去控制地向下发展。 也只有有效的质量管理,才能保证迭代过程是收敛发展,并最终达到目标。但在这个例子中,这个部分显然是缺失的——其中虽然有测试部门,但是他们的作用仅仅 是质量管理中的质量检测环节,管理部分还是缺失的。

然后是人力资源管理。软件开发是一项劳动密集型的工作,虽然这是脑力劳动,但同样意味着人在因素在其中占有决定性的地位。而例子中未改完BUG的程 序员拿到项目奖金,而同样辛苦工作的测试人员却被拖欠薪资,除了表现出管理者对他们的工作内容的不了解,以及对质量管理工作的不重视以外,还表现出管理者 完全不会管人,这是一种谋杀团队的行为——谋杀一个团队远比建设要容易得多。

最后,这个失败的管理者把他的经历编成这个笑话,让大家看到他被程序员们害得多惨,把程序员妖魔化为一群骗子。但只要稍懂管理的人简单分析一下就可以看出来,只不过是这个人的无知和无能造成了他现在的结果,而把责任推给别人的行为更是表现出他的无耻。

作为身居高位的管理者,如果连应该承担的责任都要推卸,他们还能胜任什么事情呢?



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=727299


分享到:
评论

相关推荐

    微信群机器人管理系统源码.zip

    开发环境: VS2010 SQL2008R2 菜单功能 1、支持同时登录多个微信 2、支持机器人聊天(笑话,成语接龙、故事会、智力等等) 3、支持签到 4、可自定义回复 5、可自定义红包语 6、支持定期发送公告(如群规,广告)等

    笑话.rar

    ssm整合开发,小程序毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统...

    [新闻文章]JSP笑话小偷 v1.0_joke.rar

    ssm整合开发,小程序毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统...

    (FZY050)仿嘻嘻哈哈手机wap笑话网站模板.zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、...

    (FZY152)仿中文幽默王手机wap笑话网站模板.zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、...

    微信机器人(项目源码下载)-Python项目开发案例集锦23

    Python微信机器人项目是指使用Python编程语言开发的一个应用,旨在通过技术手段实现对微信的自动化操作和消息处理。 以下是Python微信机器人项目的一些常见功能: 自动回复:通过微信API获取收到的消息,并根据...

    Java网上商城项目源码

    这是我今年年初做练习时做的一个网上商城项目,基本上的功能都有 主要实现用户网上购物。主要提供了用户注册、登录、个人信息修改、 查看商品(按全部、类型、点击率、销售排行)、查看商品详情、添加购物车、 生成...

    PERL语言编程

    从另外一个角度来看,Perl 还可以从另外一个方向运转:在 Windows 上工作的 web 设计者通常会非常开心地发现他们的 Perl 程序可以不加修改地在 Unix 服务器上跑。 &lt;br/&gt;尽管 Perl 在系统程序员和 web 设计师...

    patrim-api:遗产管理软件的api

    宗主教 此API的开发目的是与一起作为研究对象并用于股权控制应用程序中在访问项目内置API列出类别 设计方法论清洁建筑DDD 时分双工常规承诺持续集成 库和工具纱打字稿吉特笑话Postgres 棱镜特拉维斯CI 骗子工作服...

    js-stack:这是使用JavaScript语言开发的项目的基本代码

    js堆栈 这是使用JavaScript语言开发的项目的基本代码。 特征 表示 环境变量 REST API MongoDB的 笑话 码头工人 ... 要运行此应用程序,必须...安装 (或用于http REST管理的其他软件,例如: )以与REST API进行交互 列

    viade_es3c:Viade es3c

    目标是创建一个名为Viade的应用程序,这是一个基于Solid架构和React框架的分散式路线管理系统。Viade可以提供什么该系统将基于分散式架构,其中数据存储与应用程序分开。 用户可以将其路线存储在自己的窗格中。 ...

    LANShield网络防火墙源代码

    内容索引:VC/C++源码,网络相关,防火墙 LANShield是一款本人自己写的网络防火墙程序,LAN Shield 2.0.rar为主程序源码,开发环境为VS2005;MyFireWallLSP.rar为过滤模块;  Server为服务器源码,Java编写,非阻塞...

Global site tag (gtag.js) - Google Analytics