[转贴]项目管理没有神话

原文地址
http://blog.youkuaiyun.com/walzer/archive/2007/12/12/1930699.aspx


上个周末我在家里无聊,就陪父亲去逛园博园的教育园区,实际上是陪他去巡视工地。那是他们公司的一个建筑工程项目,元旦才对公众开放,现在正在处于项目收尾阶段。他们公司作为厦门国有十大集团公司之一,我对他们的管理制度和管理方法一向十分崇拜。但在巡视工地时遇到案例,有些事情和软件项目管理上都是异曲同工的,看来项目管理真的没有神话。

一、上级意志介入,需求变更没有经过审核

建筑项目:我们走到了教育园门口,一排三层楼高的房子在拆屋顶的瓦当,全部重新铺,父亲说这是市领导视察后的意见,觉得教育园都是用的黑色瓦片,而外面这排用于学生夏令营的楼却用了红色瓦片,不协调,全部拆了重做,这个修改花费估计在50-60万左右,政府买单。他们应该庆幸市政府领导既是上级,同时也是他们的客户,客户提出变更后得为额外开销买单。

软件项目:软件开发中,客户提出需求变更也是很正常的。但最大问题是我们的客户是代表最终消费者的事业部,按道理需求应该是在市场调查之后定下来的,而实际上很多需求是某些决策者拍脑袋定下来的。我对这种缺乏实际调查的做法十分反感。拍脑袋出来的某些需求增加了项目周期,提高了开发成本和风险,但最终消费者不见得为这些需求和变更买单。

评论:我曾经考虑用技术委员会来仲裁需求变更,审核和限制事业部领导拍脑袋定下的高风险需求和变更活动。但父亲说我这种想法这是不切实际的,最后情况会演变为技术委员会全部附和领导意见。并且存在的致命弱点是,充其量只不过是改领导一个人拍脑袋为你们一群人拍脑袋。所以限制领导意志介入的最好办法是,由更上一级管理者上做出限制,把决策带来的收益或损失与决策者的利益强制挂钩,这才能真正起到约束作用。而作为下级执行者,应该按照领导意志完全照办,而不是自己再拍一次脑袋。另外,在中国式的管理中,领导具有绝对权威,这和项目管理书上看到的理论是不一样的,在实践中照搬理论没法处处行得通。

二、遗漏的设计细节,在工作中临时确定需求细节,没有经过需求审核

建筑项目:在路边的草地上,他们买了一个喷雾机,用来把水雾化后喷出,保持周围植物生长所需的湿度。喷雾机是个一人高的绿色铁皮箱子,放在植物和石头堆中很扎眼。于是父亲叫来工程师,说把这个喷雾机外壳喷上仿石材的材料(这材料有个名词,我搞不懂),然后放到石头堆里就不扎眼了。这属于项目管理者自己临时确定的需求细节。

在另外一块草地上,下水道井盖的高度超过了草地的高度,本来也会比较扎眼的,但工程师说他自己做出决策,搞了些花盆摆到井盖上,把这个问题解决掉了。这属于工程师临时确定的需求细节

软件项目:在软件开发中,如果使用成熟度模型,那么一定是先有了全部细节的设计,才能开始编码;编码时必须严格按照设计来做。而实际情况是,设计时还没有具体接触到问题,所以遗漏一些细节是在所难免的。这时候如果在编码过程中发现了设计疏漏,我们一般懒得再去更改设计文档,而是直接几行代码把问题解决了,甚至是擅自决定了小的需求细节。而这块地方是没有经过审核的。

评论:这种做法是否合理?是否所有细节都必须被纳入设计文档?从软件项目管理以前的案例,和这次建筑项目管理上的案例来看,我认为这是合理的。架构设计和需求设计只需把握住关键部分,至于一些边边角角的细节问题,完全可以让团队成员自由发挥。

三、设计错误,返工

建筑项目:在教育园中心的一个大殿外,内庭地面的高度居然低于排水沟的高度。工人不得不把地面的所有砖全部挖起来,重新填土垫高地面,最后再重新铺砖。此次设计错误导致的额外成本开销,由建筑设计院负主要责任,审核单位负次要责任,施工单位无责任。

软件项目:相比于建筑设计,软件设计中具有更多的未知性和不确定性,设计错误导致返工的例子实在不胜枚举。不过还好我们有快速迭代开发模型可以解决这个问题。如果建筑项目搞类似快速迭代开发和代码重构的做法,那真回赔本赔到死。

评论:看来通过审核来避免设计错误也不是什么神话。建筑项目是非常严谨的瀑布模型,设计->审核->定计划->施工->验收,即使在他们已经很严谨和流程成熟的瀑布模型中,仍然难免出现设计错误导致返工的现象,那软件项目就更不用说了,到处充斥着设计错误,随时需要代码重构。所以我觉得无论项目再赶、周期再短,软件开发走瀑布模型试图一次性完工绝对是不可能的,只有快速迭代开发才是正确出路。


综上,我很遗憾地得出这个结论:项目管理真的没有神话。再严谨的流程之下,也会充斥着临时变更、需求疏漏和设计错误。所以除了在审核阶段应多下工夫减少疏漏和错误之外,同时还应着手提高团队的变更响应速度,在发现疏漏和错误之后,能在尽量短的时间内、以尽量低的成本修复和完善。所以, 审核把关和变更响应,两手抓,两手都要硬。
【人月神话】重新探索人月神话:软件工程的现实与挑战 重新探索人月神话 1. 人月神话的来历和观点 2. 读人月神话的意义 3. 推荐好书《人月神话》 阅读详情

相关推荐

c语言版数据结构课程设计 学生成绩管理系统

此学生成绩管理系统完成15项功能,是我经过很多次的修改得到的。花费时间不短,功能齐全,主要完成了:输入,输出,插入,修改,删除,查询,读取文件,写入文件,复制文件,建立索引,显示各种情况下的信息,追加学生信息等等功能。一共15项。   代码如下: // shujujiegou.cpp : 定义控制台应用程序的入口点。///**本程序采用数组链表形式,原因:数组查询速度快,数组也能实现动态存储

Java 1万+

一个人同时能够带几个项目

在很多公司中,特别是小型的公司中,一个Leader可能会同时带多个项目,我现在也是一样,最少的时候有两个项目,最多的时候,加上正在做的、准备中的、和客户报价的,一共有5个项目。由此,我想到一个很重要的问题,那就是一个人到底同时能够带几个项目。这个问题并不是很容易回答的,我想。因为有很多因素会影响到这个问题的答案。主要我想有以下几个:1、小组成员的能力,主要是Sub Leader的能力,这当

凌云工作室 5156

Linux与Windows双系统,安装完linux后无法通过grub进入Windows的解决方法

先装Windows 10,Windows可正常启动,再装Kali,Kali提示装grub后照装。然而装完后重启发现无Windows选项。

sakurashockwave的博客 6454

项目管理没有神话

上个周末我在家里无聊,就陪父亲去逛园博园的教育园区,实际上是陪他去巡视工地。那是他们公司的一个建筑工程项目,元旦才对公众开放,现在正在处于项目收尾阶段。他们公司作为厦门国有十大集团公司之一,我对他们的管理制度和管理方法一向十分崇拜。但在巡视工地时遇到案例,有些事情和软件项目管理上都是异曲同工的,看来项目管理真的没有神话。一、上级意志介入,需求变更没有经过审核建筑项目:我们走到了教育园门口,

不是一个人在战斗! 2582

C++cgal库配置+VS2017

Cgal几何图形库在VS2017上的下载、安装与配置。想要一口气下载完所有安装配件的,可以去文章末尾的链接。httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。

dsn3S的博客 1488

用Python玩转农业大数据:从Landsat遥感影像到作物产量预测实战教程

本文详细介绍了如何利用Python处理Landsat遥感影像数据,并结合土壤信息构建作物产量预测模型。从环境搭建、数据预处理到模型训练与可视化,提供了一套完整的农业大数据分析实战方案,帮助读者掌握遥感影像处理和机器学习在精准农业中的应用。

weixin_30832143的博客 397

杀不死的人狼——我读《人月神话》(一)

2007年03月12日 03:08:00 =====前言=====在这与这段文字之前,我已经阅读过种种关于《人月神话》的文字。评论者既有刘天北这样的美食家,试图在书页中夹点胡椒面以慢慢品味,为了表现食客特有的风格,他的书页都比别人数得仔细。也有marktsen这样的速食者,试图几句话就打发了自己或者读者那漉漉的饥肠。阅读这些文字给我带来的收获是:面对《人月神话》,除了表示五体投地的诚服,你

秦梦瑶的专栏 527

SMART200如何实现多次调用子程序带定时器功能

1、西门子200PLC的子程序由于很多限制条件,如果希望建立一个可以多次调用的子程序,那么这个子程序里是不能含有定时器指令的,所以我们只能退而求其次了。建议将沿指令(上升沿、下降沿)放在多次调用子程序的外面。 2、可以提供不同的时基,提供不同时间的定时 3、实现秒定时 5、子程序内部: STL代码: 1、时基信号由外部提供、 可以提供不同的时基信号 2、实现循环定时开关 LD #Start:L0....

RXXW_Dor的博客 1万+

软工圣经:《人月神话》

偶然的机会,看到了《人月神话》这本书,它主要探讨了软件工程中的一些核心概念,如项目管理、软件复杂性、团队合作和进度计划等。这本书提出了许多经典的软件开发原则,包括布鲁克斯的"布鲁克斯法则",其中提到"向一个已经延期的项目添加人手只会使项目进一步延期"。

编码世界 6万+

rk3568 修改开机动画

bootanimation.zip是一个Android设备启动时播放的动画文件,它包含了一系列的图片和描述文件,用于描述动画的播放顺序和持续时间。

weixin_35723192的博客 2727

Linux C/C++ or 嵌入式面试之《C/C++笔面试系列》(10) C++ 前置后置增减运算符重载形式与比较

C语言的++、–运算符在此不讨论。 文章目录1、前置后置增减运算符重载的形式2、前置和后置运算符的性能比较 1、前置后置增减运算符重载的形式 自增运算符“++”和自减运算符“–”分别包含两个版本。即运算符前置形式(如 ++x)和运算符后置形式(如 x++),这两者进行的操作是不一样的。因此,当我们在对这两个运算符进行重载时,就必须区分前置和后置形式。C++根据参数的个数来区分前置和后置形式。如果按照通常的方法来重载 ++ 运算符(即作为成员函数重载时不带参数,或者作为非成员函数重载时带有一个参数),那么重载

二进制君 5831

【图灵奖得主Frederick P.Brooks, Jr.带你走进软件工程的世界——《人月神话(纪念典藏版)》】

在软件领域,很少能有像《人月神话》一样具有深远影响力和长销不衰的著作。布鲁克斯博士为人们管理复杂项目提供了颇具洞察力的见解,从宏观角度有层次地分析了软件工程的方方面面,不仅逻辑严谨,而且颇具文化底蕴。《人月神话(纪念典藏版)》内容主要来自布鲁克斯博士在IBM公司研发并管理System/360计算机家族和OS/360软件支持包期间的项目管理经验,该项目堪称软件开发项目管理的典范。

清图出版 354

【Unity Shader】Special Effects(十二)Glow 外发光(UI)

Properties_GlowColor ("外发光颜色", Color) = (0, 0, 0, 1)_GlowIntensity("外发光强度", Range(0, 1)) = 1参数详解:_GlowColor:外发光颜色,指定外发光的显示颜色。_GlowIntensity:外发光强度,指定外发光的显示强度,0为不可见,1为最强强度。

神码编程 931

《人月神话》读书笔记

《人月神话》一书是作者Frederick P. Brooks, Jr.博士在IBM开发OS/360的经验之作,为无数从事软件工程相关工作的人提供了理论和实践基础。 该书的作者认为相比于其他行业的大型工程,管理大型的计算机编程项目与之既有较大的相似性,也有独特性。该领域的知识在于累积。需要考虑到控制程序中设计和执行上的缺陷、内存和成本与原计划的差别等。 由于人员的分工,大型编程项目遇到的管理问题...

Rosemary_Yan的博客 833

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

人月神话阅读笔记01

《人月神话》提出了2条著名的法则: 1、人月神话:向一个已经延后的 《人月神话》项目中投入更多的人力资源只会让它更延后。 2、没有银弹:没有一种策略,技术或者技巧可以极大地提高程序员的生产力,就是说了更高效率的完成工作。这是我第二次看这本书总结的。在暑假的时候我大致的看了一遍这本书,由于暑假还有很多事情要做,所以时间比较紧张,没有仔细的阅读这本书。所以在这个学期我打算把这本书再仔细的看...

weixin_30701521的博客 111

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

《人月神话》读书心得

《人月神话》读书心得 序         最近在读一本软件工程领域的一部经典著作:《人月神话》。初看书名,肯定想不到这是一本关于软件工程的书籍,或许是一本神话小说,但事实就是如此。这本书细致入微地从多个方面,多个角度切入,深入探讨了软件项目开发的各个过程和可能存在的问题。用通俗易懂的语言和生动形象的例子为我们展现出了真是的软件工程过程。     有人说:《人月神话》这本书已经畅销

<code> I am a coder </code> 2544

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

(文末赠书)我为什么推荐应该人手一本《人月神话》

他从中学到了软件项目的复杂性,了解了为什么仅仅增加更多的人手并不能解决问题,甚至可能导致更多的问题。这个故事强调了《人月神话》的重要性,即理解项目管理中的挑战,特别是当涉及到人的因素和团队动态时。老王按照书中的建议调整了团队结构,更加注重沟通和计划,最终成功完成了他的项目。

TrueDei 1256

书籍-Brooks《人月神话》

《人月神话》是一本关于软件项目管理的经典著作,通过一系列深刻的散文,揭示了软件开发中的本质困难和常见误区。全书分为十六章,围绕软件项目管理的各个层面展开讨论:从编程系统产品的概念区分,到人月神话的提出;从外科手术队伍的组织模式,到概念完整性的重要性;从贵族专制与民主政治的权衡,到进度计划的经验法则;从削足适履的困境,到提纲挈领的设计文档;从未雨绸缪的变更管理,到干将莫邪的工具选择;从整体部分的集成策略,到祸起萧墙的bug修复;从另外一面看文档价值,到没有银弹的本质困难。本书不仅提供了具体的管理建议,更重要的

d3y1`5 81_09 1301

《人月神话》深度学习心得笔记

《人月神话》最珍贵的地方,从来不是给你一套能直接套用的项目管理公式,而是帮你跳出“技术至上”的思维误区,让你看清软件开发这件事,本质上是在和人的复杂度、团队沟通的复杂度、抽象概念的复杂度打交道。很多时候项目出了问题,根本不是技术不够先进,而是我们违背了软件开发最底层的客观规律。

wdracky的专栏 355

《人月神话》

《人月神话》读书摘要:布鲁克斯揭示了软件工程的经典误区——"人月神话"(人力与时间不能线性互换),并提出布鲁克斯定律(增加人力反而拖慢进度)。核心观点包括:外科手术式团队结构、概念完整性设计、警惕第二系统效应和焦油坑困境。实践建议强调原型验证、任务拆分、文档管理和人才价值。该书颠覆了传统项目管理思维,为敏捷开发等现代方法奠定基础,其"没有银弹"的论断至今仍深刻影响着软件工程实践。

Yang的博客 1740

【经典传颂】人月神话The Mythical Man-Month

书籍是一种凝固的时间,穿过明月清辉与万里河山来看你。 这本书写成十余载后我才出生,半个世纪后我才阅读。可怕之处在于,书中的观点仍然广泛受到认同。软件工程领域与其他工程行业相比大多程序员所认为的还要相似。有些方面右又比我们人所认为的差异还要大。这个领域的知识重在积累,终身学习是很多程序员的觉悟。 0、引言 人月神话是危险性和欺骗性的神话,因为他暗示了人员数量和时间可以互相替换的。进一步说,及时人力(Man)和时间(Month)不是线性关系,使用人月作为衡量标准实际上就是Mythical. 一、程序员不为人.

kouryoushine的博客 1255

嵌入式项目管理学习——001重点明确和心态转换

相信做嵌入式的码哥们在参与一定数量的产品设计和生产之后,都会发现一个问题,如果没有一个负责的产品经理,就会陷入到产品延期、沟通缺失、目标不清晰、需求不明确等等的问题,我目前也是达到了这样一个状态,为了解决这一问题,就开始对项目管理进行了一定的学习。注:以下内容是在研读完《人月神话》和《IT项目经理成长手记》之后的一些心得。

ASWaterbenben的博客 1241
上一篇: 今天才知道java中的interface是支持多继承的
下一篇: java多线程复习
hcom
博客等级 码龄22年 14粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值