[原创]用TOC的观点看“项目实施阶段”存在的问题
从TOC的观点看“项目实施阶段”存在的问题
一、泥足深陷
M项目自实施以来已经过去了1个半月,目前该项目还在“试用-修改-再试用-再修改”的泥沼中苦苦挣扎,4名开发人员已经人困马乏,疲于应付,但系统的问题清单仍然越来越长,似乎没有尽头......
这个项目是为生产部门开发的生产线的管理系统。去年,由于生产工艺和流程变化,已经使用了几年的管理系统无法继续使用了,因此生产部门购买了一套外国公司的生产管理软件,花费不菲,试运行的时候却发现系统响应速度非常慢,几乎造成5条生产线全部停工,无奈之下只好提前结束合同,当然,首付款也打了水漂。目前,生产线完全依靠人工管理,生产效率低下,生产部门迫切希望于信息部门能够尽快开发出新系统,以缓解生产制造的混乱局面。
系统的上线时间,生产部门的要求近乎苛刻,信息部在接到任务后,只好将项目计划紧缩、再紧缩。开发部的工程师非常努力,只用了3个月就完成了需求调研和代码开发,并于1个半月前开始试运行。但是问题很快出现了,本来预计只要2周的系统实施阶段一拖再拖,问题不断,眼看三个2周都过去了,距正式上线仍遥遥无期,对此各方面都非常着急,却搞不清楚为何如此。
二、原因何在?
实施受阻,原因何在?
信息部为了按时交付系统,不得不一再的压缩开发和测试的时间,软件质量因此大打折扣。在开发过程中,系统集成测试基本属于奢望,开发人员甚至没有时间对自己的代码做充分的单元测试,就匆忙发布了,这种做法大大降低了软件的质量,也正是不断降低的质量标准导致了试运行时铺天盖地的错误和缺陷。更麻烦的是,由于不断的对软件功能进行修改,只好不断的对修改的代码进行测试,不断的对修改过的功能进行用户培训,造成实施时间一延再延。
“实施阶段”指的是指软件拿到用户的实际工作场所进行部属和使用的阶段。一般来说,系统实施要经过“软件交付——〉发布——〉用户培训——〉用户试用——〉发现问题——〉软件修改——〉软件测试——〉重新发布”这样一个螺旋式前进的过程,这个过程将不断的重复,直到系统没有问题或者存在的问题用户可以接受为止。不要怀疑这个过程的复杂和繁琐,因为这才是事实,像那种理想化的、一帆风顺的实施过程通常只会在教科书上出现,我们必须充分认识到系统实施阶段存在的风险。
在这样一个循序渐进的过程中,每个环节都可能引发混乱,造成延误,并在各步骤间传递和放大这些延误,导致实施阶段的延期。比如:开发过程的延误,造成交付的推迟;用户培训的拖后,造成试用的推迟;问题发现的缓慢,造成软件修改的推迟;软件修改的频繁,造成测试的推迟;软件测试的延误,造成再次发布的推迟。
三、冲出泥沼
让我们用TOC的观点和方法来分析这混乱的状况,并找出解决方法。
l 冲突。
[TOC观点]:发现冲突是解决问题的第一步。TOC认为,如果一个问题未能以两个必备条件之间的冲突来表达,那么这个问题就没有清晰的定义。
从成本世界出发,各步骤所用的时间越短越好,所进行的循环次数越少越好;
从有效产出世界出发,各步骤所做的准备工作越充分越好,所进行的循环次数越多,则有效产出的质量和效果越好。
l 错误的假设。
[TOC观点]:TOC认为,冲突实际上是不存在的,当我们遇到一个冲突,那其实是一个清晰的信号,显示有人做了一个错误的假设,而这个错误的假设是可以纠正的,一旦纠正了,冲突就不存在了。
在实施阶段存在的错误假设是,越早将软件交到用户手上,实施阶段就可以越早结束。这个假设忽视了由于没有经过充分测试的软件缺陷所造成的混乱和延误。
l 制约因素。
[TOC观点]:对企业来说,改造最弱的环节才会提升整体的能力,任何时候最弱的一环都只有一个,这就是制约因素。
对于整个实施阶段来说,制约因素是软件在交付时应该达到的质量标准。如果标准过高,可能会造成交付日期的延误;如果标准过低,则会造成修改缺陷和重新发布过程的多次重复,造成整个实施阶段的延误。
l 解决方法。
[TOC观点]:任何问题都可以用聚焦五步骤来解决:找出、挖尽、迁就、松绑、回头。
我们就用聚焦五步骤来解决实施阶段所面临的麻烦:
第一步,找出。从实际情况来看,软件的质量标准是我们最应该关注的,是整个实施过程的制约因素。不断出现的错误、频繁的修改、无休止的测试和培训,都是由此产生的。
第二步,挖尽。挖尽质量标准的潜力,也就是找出一个最符合项目具体情况的标准,既不会因质量要求过高影响软件按时交付,也不会因质量标准过低导致上线后问题频发。
第三步,迁就。质量标准制定出来以后,其它各方面都要配合这个标准,这样才能使制约因素不再是瓶颈。比如,软件需要进行充分的测试以保证满足质量标准的要求,软件交付必须在测试通过之后,并且在重新发布之前也要进行测试。
第四步,松绑。做到前面三步之后,软件只有达到一定的质量标准后才会发布,对软件的修改也必须经过测试后才能发布新版本,因此不会再出现BUG满天飞的情况,用户培训也可以有条不紊的进行,系统试运行不再是怨声载道,瓶颈也不再是瓶颈了。
第五步,回头。原有的瓶颈消失了,必然会有新的步骤成为最弱的一环,接下来就是我们去发现并解决它的时候了。
TOC背景
TOC(Theory Of Constraints)是高德拉特(Eliyahu M.Tolerate)创立的“制约法”,是一套独特的管理方法论,将之应用到软件项目管理中也一样适用。TOC致力于找出管理链条中的薄弱环节,然后通过各种手段加强它,当它不再是最弱的一环时,再去寻找新的薄弱环节,如此往复,整个管理链条都得以加强了。(欢迎与作者交流:shangrr@hotmail.com)
推荐到鲜果: 查阅更多相关主题的帖子: IT项目管理 TOC 关键链



评论
发布者 黑铁师
2007-9-19 14:20:17
对文章的观点有些不敢苟同。
TOC的观点是要发现约束并解决冲突。文中把软件在交付时应该达到的质量标准当做制约因素,我想不是。任何流程,任何企业都希望得到高质量运作的系统,这是目标。而实现这个目标的方式,恐怕是项目组成员和企业的看法不同,这才是冲突。企业想在短时间达到项目目标,项目组成员则希望有足够的时间去测试,这才是冲突。
从这个冲突挖下去,也许可以看到的更深层原因是:是否投入了足够的资源? 项目组成员的项目管理和控制流程合理吗?项目组成员的技术和经验水平足够吗?从这些原因找到的才是项目的约束,参是项目开始之前就需要更好的评估的因素,从而在真正开始项目后对应的采取措施,保证项目按时交付。
另外,TOC提出了用关键链的方法进行项目管理,楼主也许可以考虑借鉴关键链的办法做好项目的跟踪和控制。
发布者 zhangshuting
2007-9-19 15:44:40
要想克服这个制约因素,各方就必须在软件质量这个层面上取得一致并付诸行动。
感谢zhangshuting的回复,笔者对TOC的理解尚浅,还在摸索中,希望与各方人士多多交流。
发布者 sarria
2007-9-19 15:55:29
发布者 景云阁
2007-9-20 15:11:42
发布者 古老虾
2007-9-21 13:32:52
发布者 匿名用户
2007-9-24 13:58:46
发布者 独山之子
2007-9-26 12:10:11
我认为对于对于项目实施的TOC应该分两个方面来分析:1、咨询方(软件提供方);2、企业方.
作为咨询方制约大概就是开发的周期和开发的质量,而作为企业方,制约的关键是直接用户的测试问题(非企业方项目组的测试),如何有效的组织直接用户根据业务的开展对程序进行测试.对于这三点制约,最大的制约因素我认为还是企业方直接用户的测试问题,直接用户对软件的架构方面比较薄弱,如何让他们从结合软件架构和业务进行测试,这样可以大大缩短软件的测试时间以及效果.
发布者 liubangyi
2007-10-3 21:38:00
发布者 去玩儿
2007-12-28 19:05:13
发布者 AmyLee
2008-1-2 21:59:53
一、这是一位犹太人所发明的一套管理理论,他被视为当今健在的、最伟大的管理学家,但他只承认自己是一名物理学家;
二、他的核心观点是,任何改进如果不涉及到最薄弱的环节,都是无效的;
三、他还是当今最大胆的行动家,他号称能在4年之内将自己客户的利润做到现在销售额。
专题:介绍TOC的相关基础知识,讨论在实际应用中的案例,探讨实务操作程序与管理,分享实战经验与资源。
理念:倡导完全免费共享,自由分享。你一个苹果,我一个苹果,交换后,我们还是一个苹果;你一个观点,我一个观点,交换后,我们就有了两个观点(双赢)。
欢迎你的真诚加盟“TOC约束理论”圈子,携手共进!
http://group.vsharing.com/BizClub.aspx?id=605
发布者 York y
2008-6-16 15:53:15
发布者 sarria
2008-6-19 13:37:40