`

一个真实的项目经历,很多东西大家可以借鉴下

阅读更多

【背景介绍】
Z公司接了一个国外客户Y的交易系统开发实施项目,双方没有签署任何的协议,Z公司希望通过这个项目的合作,将此系统作为产品占领该国市场。
项目的组成人员包括1个PM,10个左右开发人员,4个左右测试人员,1个翻译,外加工程、市场、销售、客户经理等,总共约20人参与此项目,项目管理和交付由PM负责。PM有多年行业经验,但是无项目管理经验。Z公司对客户承诺:核心团队将在客户现场开发。
由于双方无协议,所以项目的进度安排完全由Z公司决定。传言此项目合同将达到200万$,项目经理估算可以在6个月内上线成功。项目进展过程如下:
(1) 项目从2008年1月份启动,按计划将在6月份上线成功;
(2) 但是6个月后,发现系统不能满足对方的交易要求,交付时间将无限期推迟,同时合同额将会少于200万RMB(是不是人民币升值太快了?。。。);
(3) 10个月后,由于一些政策的需要,客户不得不使用这个交易系统;
(4)15个月时,Y公司根据集团公司的要求,召开招标会,Z公司的项目领导坚信必定中标,可是经过2轮招标,本地公司中标;双方继续沟通中。
(5)17个月后,终于宣布停止开发。Z公司依然派人在现场做维护,希望客户能够租用此系统。(第一次听到,软件系统可以租用......)
历时17个月,始终保持近20人的团队,而且平均10人长期客户现场开发,成本高达700万RMB,白花花的银子就这样没了......

【败因分析】
根据项目的实施过程,导致项目失败的原因相当多,主要有:
1. 工作量估算方法错误。如果说工作量估算错误,是整个项目组的责任,那么估算方法错误,是PM的责任了。PM是这样估算的:根据人员配置情况,我们需要9个 月完成,但是我们可以通过晚上加班和节假日加班,我们可以把交付时间缩短30%,这样就可以6个月完成了。一般的项目经理都会在工作量估算结果的基础上, 再增加20%的冗余度,他却压缩了30%,佩服,高手。
2. 项目计划混乱。一开始的时候,有个初步的项目计划,但是没有落实到具体的WBS上,后来,项目计划都没了,项目已经没有终点了。
3. 不懂项目管理流程,没有系统开发实施经验。不去了解客户的需求,闷头编码,一个简单功能,要修改N次,不仅降低客户满意度,同时导致生产率及其低下,估计有效代码的生产率不超过10行/人天。直到17个月后的今天,还没有完整的客户需求。
4. 模块包干,缺乏沟通。整个开发过程,只有编码,把整个系统分成若干模块,每人负责一个或若干个模块,从了解业务到编码完成,都是一个人负责到底。由于缺乏必要的沟通,各个模块的融合性存在相当大的缺陷。
5. 项目组缺少必须的沟通能力。这包括2方面:语言能力和需求沟通能力。由于是国外客户,长期呆在客户现场的开发人员没有1人可以和客户用英语进行沟通(甚至 英文邮件都写不来),包括项目经理,双方的沟通必须通过翻译来实现。这样一来,开发人员获得客户信息肯定会打折。可能由于以前都缺少需求收集的经验,开发 人员不会主动去收集需求,最后通过N次沟通,得到的需求仍然是不完整的。每次得到1个要点,然后立即修改,下一次演示时,客户说还有1个要点,开发人员又 去修改,如此反复。甚至连项目经理都说“客户没有需求”。晕死了,没有需求,对方愿意花几百万做啥?不是客户没有需求,而是项目组不会收集需求、挖掘需 求。
6. 忽视测试组的作用。整个过程中,一直不重视测试组的作用,需求也不会发给测试组,更多的只是由开发人员口头转达;很多时候,开发组不经过测试,就将升级包直接扔给测试组测试,测试组对模块功能有异议,开发组一般是不会做出调整的。
7. 版本发布升级管理太烂,软件质量差。一方面,开发组提供的升级包或者新版本,很多时候是没有经过测试的,很多次,在升级后,系统的核心模块就直接不能使 用。另一方面,升级太频繁,10个月后,几乎每天有升级包;有一阵子,每天的升级包超过3个。提供给客户的升级包,约80%不能用,也就是说发送5个升级 包,才有可能1个升级包是正确可用的。Z公司一向对客户宣称系统的性能超级优越,在全球同行业中可以排第一,但是项目组测试人员却抱怨系统运行太慢,点个 按钮半天没反应。系统运行结果经常出问题,项目组采用的弥补措施是直接修改数据库记录。
8. 客户关系逐渐僵化。由于缺少需求收集的过程,开发人员完成的功能肯定不能一次性满足客户的要求,导致需求变更的次数很多。最后开发人员开始拒绝客户的需求变更,理由也相当充分,比如“我们的系统设计(或者架构)不支持这个功能”、“国内没有这个业务”等等。
9. 人员管理混乱,独揽大权,一意孤行,合适的人不在合适的岗位。项目经理喜欢直接把任务指派给每个人,包括测试人员,他大事小事百事都管,小到bug工具的 维护,大到客户关系的维护、部门节假日放假安排,都要插一手。项目组中也有英语尚好,能够与客户沟通的人,但是这几个人基本上都留在国内。工作时间安排超 长,周1到周6,现场工作时间从早上9:00到晚上22:30,相当疲劳,效率极低。管理混乱,不仅在此项目中体现,而且整个部门管理混乱。部门经理是空 降兵,一直在海外知名外企做高层管理,部门成立将近1年,从来没有看过1次部门全体人员会议,一共才2个项目,他却啥事都不管,推说“这是小事,自己要忙 更重要的事”。
10. 团队成员缺少大局概念。项目的不断拖延,大家都已经无所谓了,今天做到哪里是哪里,做不完了,也可以无限期的拖。甚至有人说:“项目做长了更好,出差补贴拿得多,我暂时还不想回去呢。”
11. 没有交付的概念。他们对客户做出了很多次的交付承诺,这些承诺基本上是空头支票---不可能真正交付的。到了承诺的时间点,他们要么把交付的时间点延后, 要么就是给客户演示一下,看一下界面,就算交付了。给客户的文档中,没有培训手册或者操作手册,反而把接口设计说明文档给客户。
12. 管理层缺少成本管理意识。项目做了8个月的时候,根据项目进展情况和客户的态度,就有成员内部在交流,怀疑这个项目的可能性,甚至建议直接停止这个项目。但是部门经理、项目经理、销售一直在吹捧这个项目。当时的成本已经远远超过200万了。
13. 你能否容忍2套系统同时使用?系统目前上线,但是需要老系统配合使用,业务人员每天在2套系统之间倒数据,我想这是任何一个业务人员都无法忍受的工作。据 说招标的时候,就是因为业务人员的强烈反对,客户才决定不用我们的系统。为什么不把必须的功能做到新系统中呢?
14. 想要破坏商业潜规则?项目负责人对这个项目信心爆满的一个主要原因是:客户的一个副总收礼了,如果项目不给我们做,我们可以搞他。我真的觉得他们好幼稚,你有能力破坏商业潜规则吗?更何况是在异国他乡......

【反思】
整 个项目,都是一个彻底失败的项目。商务上,客户关系丢失;成本上,17个月超过300个人月的投入,高达几百万RMB的投入,全部付之东流;项目管理上, 一团糟糕,团队如同散沙,先后至少有10人离开;团队成员仍然无法完成需求收集,无法团体完成系统设计,唯一的提高就是Delphi编码能力和 Oracle应用能力。
此项目最大的败因就是:项目经理缺乏项目管理经验。一味的以为“有行业经验就够了,其他都不需要”,错误的以为“全球的交易业务都是类似的”,从而导致项目计划盲目乐观,不去分析客户的需求,闷头就编码。



http://wangleifire.iteye.com/blog/443595

分享到:
评论
1 楼 yuxiaojicai 2009-09-07  
引以为戒,这样的反面教材更能引人深思。

相关推荐

    优秀创新创业心得体会范例.docx

    - **经验分享**:无论是成功还是失败的经历都应该被认真记录和反思,以便未来可以借鉴。 ### 三、大学生创业面临的挑战与机遇 #### 3.1 面临的挑战 - **心理准备**:认识到创业是一条充满挑战的道路,需要有足够的...

    uboott移植实验手册及技术文档

    一、建立自己的平台类型 (1)解压文件 #tar jxvf u-boot-1.3.1.tar.bz2 (2)进入 U-Boot源码目录 #cd u-boot-1.3.1 (3)创建自己的开发板: #cd board #cp smdk2410 fs2410 –a #cd fs2410 #mv smdk2410...

    2023计算机专业实习工作总结.pdf

    从文档内容来看,作者作为一名计算机专业的学生,在经历了校内外培训、实习、项目开发等多方面实践后,对其专业技能的提升、职业素养的提高、以及思想认识上的转变都有着深刻的体会和总结。 首先,作者提到了参与...

    通信工程应届生求职简历.docx

    通信工程应届生求职简历.docx

    c++课程设计-产品入库管理操作系统+源代码

    c++课程设计-产品入库管理操作系统 此 C++ 课程设计的产品入库管理操作系统,可实现产品信息录入、修改、查询与统计等功能,助力高效精准管理产品入库。

    IMG_20250416_154837.jpg

    IMG_20250416_154837.jpg

    处理器知识-RISC-V-简单启动流程-教学演示用途-1744731373.zip

    处理器知识_RISC-V_简单启动流程_教学演示用途_1744731373.zip

    机械臂轨迹规划:MATLAB_Robotics工具箱的D-H参数建模.pdf

    文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!

    CNC-嵌入式-高性能-低成本控制器-GRBL

    CNC_嵌入式_高性能_低成本控制器_GRBL

    基于STM32微控制器设计的智能婴儿床

    智能婴儿床系统是基于STM32微控制器设计的一款全方位监测和互动系统,旨在提供全面的婴儿关怀解决方案。系统涵盖了体温、环境温度、湿度、光照、哭闹检测、音乐播放、烟雾浓度检测、自动摇篮模拟、WiFi通信以及云服务器连接等功能。

    【机器视觉技术】机器视觉通用软件的核心原理、功能特点及广泛应用:推动多行业智能化变革的关键技术

    内容概要:本文详细介绍了机器视觉通用软件的工作原理、功能特点及其广泛应用。机器视觉通用软件通过图像采集、预处理、特征提取与分析、决策与输出四个核心步骤,模拟人类视觉系统,使机器具备“看懂”图像并作出决策的能力。其功能涵盖图像识别、测量、检测、定位和分类等多个方面,能够满足不同行业的需求。文章还回顾了机器视觉技术从20世纪50年代至今的发展历程,展望了未来在技术突破、应用拓展以及与其他技术融合方面的潜力。; 适合人群:对机器视觉技术感兴趣的工程师、

    22020-9KZB_改封装-.pdf

    22020-9KZB_改封装-.pdf

    全球6G技术大会2024年5G6G天地一体化技术探索与实践白皮书87页.pdf

    全球6G技术大会2024年5G6G天地一体化技术探索与实践白皮书87页.pdf

    【计算机教育】计算机二级考试复习与做题心得:备考建议、科目选择及常见误区解析

    内容概要:本文围绕计算机二级考试的复习与做题心得展开,首先介绍了计算机二级考试的性质及其对不同人群的价值,接着详细对比了各科目的内容、适用人群和难度,推荐了适合不同基础考生的选择。文章还给出了以Python为例的复习计划,分为基础学习、真题练习和模拟练习三个阶段,并针对选择题、填空题、改错题和编程题提供了具体的做题技巧。最后,指出了备考中的常见误区,强调了实际操作的重要性,并鼓励考生不要因背景限制而畏惧考试,指出通过考试不仅能在简历上加分,还能提升个人能力。 适合人群:正在准备或考虑参加计算机二级考试的学生,特别是应届毕业生、希望获得学分或奖学金的同学,以及想进入国企、事业单位或公务员系统的求职者。 使用场景及目标:①帮助考生了解计算机二级考试的内容和价值;②为考生提供科目选择的指导;③制定合理的复习计划并掌握有效的做题技巧;④避免备考中的常见错误,提高通过率。 阅读建议:本文内容详实,语言轻松易懂,适合在备考初期阅读,以制定整体复习规划。考生可以根据自身情况,重点参考科目选择和复习计划部分,并结合做题技巧进行针对性练习。

    全球6G技术大会2024年6G未来电视视频应用场景需求与技术解析白皮书33页.pdf

    全球6G技术大会2024年6G未来电视视频应用场景需求与技术解析白皮书33页.pdf

    基于MATLABEdgeServer的智能电网实时谐波分析系统.pdf

    文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!

    【C语言编程】PTA反转加法构造回文数算法实现:千位数级别高效字符串处理与回文检测

    内容概要:本文介绍了通过C语言实现反转加法构造回文数的方法,能够处理1000位的大整数。文中详细展示了如何定义字符数组存储大整数,通过自定义函数而非调用现成函数来提高效率,实现对输入数字的反转、判别是否为回文以及最优字符大整数加法等操作。核心代码包括字符串指针反序判回文、字符串指针反转赋值、高效字符串指针反转赋值判回文等函数,利用goto语句实现循环,确保当数字不是回文时,将原数与其反转后的数相加,得到的新数继续判断,直到构造出回文数或达到设定的最大迭代次数(如10次)。 适合人群:有一定C语言编程基础的学习者,尤其是对大整数运算、字符串操作感兴趣的读者。 使用场景及目标:①理解C语言中字符数组表示大整数、字符串指针操作等底层机制;②掌握通过反转加法构造回文数的算法思想,熟悉goto语句控制流程的应用。 其他说明:此代码示例强调了自定义函数在处理特定任务时的高效性,读者可以在此基础上进一步优化算法,探索更多关于大整数运算的知识。

    深度学习:MATLAB_实现Transformer网络用于文本情感分析.pdf

    文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!

    基于MATLABModelica的液压系统数字孪生故障预测系统.pdf

    文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!

    STM32F103C8T6-基于FreeRTOS系统实现步进电机控制

    STM32F103C8T6-基于FreeRTOS系统实现步进电机控制

Global site tag (gtag.js) - Google Analytics