软件研发组织架构斜说

阅读: 4,609 次

一.  综述

开发大型软件系统,架构师无疑起到了关键作用。但仅仅依靠牛逼的架构师,肯定不够的,很可能发生灾难性的后果。对于灾难,很多软件研发企业都有深入骨髓的疼痛。软件技术架构的重要性,不是本文谈论的重点。本文重点谈谈,在大型软件开发过程中,组织架构的方方面面。

二.  失败的案例

  1.案例一

96年开始,某国内知名ERP公司,董事会决定开发更加强大的ERP系统,且能够覆盖企业管理的每一个角落,要能达到国际先进水平,明确要公司总经理会拿出开发计划,以便于落实。

公司总经理会按照董事会的要求,很快拿出了开发计划,结果,董事会坚决不认可。因为,开发计划需要13年!耗费多少人力、财力暂且不管,先放在一边。

董事会无法理解,为什么开发这样一个软件需要13年。总经理会反复解释,都无法与董事会达成一致性意见。

按照软件工程的常规理论,每一个工作环节都需要评审、确认,那么一个大型企业管理软件可能需要30个模块,每个模块的详细需求确认按照1周计算,就是30周,大半年就过去了。此时,代码还没动手呢。

最终,董事会把总经理会告上法庭。官司打了两年,还没等结果出来,公司关门了。

  2.案例二

某知名企业新一代ERP系统的开发,累计时间应该在十年以上。在这个系统的研发上,可谓开足了马力,投入人员巨多,每年的消耗,以亿元为单位计算。同时,还不断著书,发动各种媒体协助宣传,似乎拯救世界的软件就要来了。但最终还是未能如愿以偿,只能下马止损。不得不回归老产品线上。

累计消耗了几十亿,耽误了整整一代开发人员,黄金十年,悲愤交织,谁之过?

三.  成功的案例

  用友ERP-NC,可以说是一个大型软件开发成功的典范之作。请看下面的数据:

  1. 第一版开发时间:10个月。其中架构设计一个月时间。
  2. 交付99个项目:11个月。
  3. 再经历三年,基本完善。
  4. 目前,每年的销售收入,包括因ERP-NC带来的边缘收入,不低于50亿元。
  5. 直接带动全国几万人就业,影响上千万人的工作。

四.  失败的原因

失败了,一定做错了什么。以下列出5项因素。太多的因素无法一一列举。

  1. 管理者妄想症。目标与现实完全脱钩,把建造房屋的感觉运用到软件开发上来。
  2. 管理者机械的运用软件工程理论。因为理论正确,所以管理无错、无过。企业文化造就了无创新,照本宣科。
  3. 核心人员刚愎自用,过于自信。消灭了集体的智慧、力量。一人独大(也可能是2-3人),万事不可讨论,你去做就是了。
  4. 打击技术异己分子。只要与管理者技术意见不一致的,就必须打击,甚至剔除研发团队。
  5. 管理者争功委过。好事,肯定是管理者干的。坏事、错事,肯定是别人干的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注