扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 2007年4月6日
关键字: 软件开发
你正准备穿越十字路口,身旁的警察先生说:「要过马路?没问题,但我先警告你,根据统计,顺利通过这条马路的机率是24%,也就是说,你有76%横死街头的可能。」
怎么会有如此可怕的马路?!然而在真实世界里,有个领域正是如此--那就是「软件开发」。根据Standish Group CHAOS 2000的统计,软件开发项目的成功机率为24%,剩下的76%都以失败告终。换句话说,在这个令人咋舌的专业世界里,烈士们一直用大量的鲜血换取少数的成功。
软件开发真的这么惊心动魄、死亡枕藉吗?是的,许多投入这个领域的人都有很多失败故事,以及少数极为珍贵的成功案例。这些存活下来的英雄们都已锻炼成可以随时分泌肾上腺素,与培养出视死如归的涅盘精神。
事实上,软件开发并不像起义那么可怕;不过两者间倒有个微妙的共通点--都在「推翻不良旧体制,建立美好新体制」。革命烈士们都知道自己正在创造历史,但很多投身软件开发领域的勇士们并不了解自己也正走在这条路上;幸好已经有成功部队把康庄大道展示在大家面前了。
瀑布与水车
软件开发之所以常常失败,最大症结在于「体制」,也就是「开发流程的设计与推动」。这个关键往往没有受到重视,等到最后问题爆发出来时,代价就是浪费大量的人力与金钱成本。
按照常态,软件开发项目的流程大致可区分为「需求」、「分析」、「程序撰写」、「整合」、「测试」等阶段,整个开发团队也是按照这个流程组合而成,所有工作循序进行。这种最常见的模式被称为「瀑布式(Waterfall)」流程法,也就是前一个步骤完成后,再把结果导入下一个步骤,依此类推直到产生最后结果。
这种传统方法的特色是职责分明、各行其事,但同时也是缺点所在。因为这种单向流动模式少了各阶层间的沟通与回馈设计,也缺少弹性应变机制,一旦发生失误、需求临时改变或流程出现问题时,就会使整个流程大乱,轻则成员彼此指责,重则重起炉灶。这就是软件开发成功率只有24%的最大关键,结果导致人力资源浪费、成本膨胀及客户关系恶化。
既然传统的软件开发体制漏洞百出,那该如何改进?我建议颠覆惯用的单向式流程,把瀑布的最终结果导回源头,成为一个往复式的圆圈(Cycle),使整个流程具备回馈与检验机制。当然,仅将瀑布改成循环水车,不代表革命已经成功,还需要配合各阶层的革新作法。
我们将这种革新的循环式流程,以及藉此发展出的一整套完整作业模式,称为RUP(Rational Unified Process)。RUP是一份包含四百万字、累积多年实际经验所提炼出来的最大共识(或公约数)、由上千位软件开发人员所共同完成的标准化作业准则,堪称为「最佳典范」(Best Practice)。RUP的目标是希望藉由一套最佳化的软件开发作业流程,提升投资报酬率(ROI)。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者