技术开发 频道

软件经济学 智慧的管理软件交付

【IT168 专稿】    2009年8月18日,一年一度的软件开发盛会——2009 IBM Rational软件高峰论坛(2009 Rational Software Conference,RSC)在北京盛大召开。细心的人们会发现,与往届Rational软件开发高峰论坛(Rational Software Development Conference,RSDC)不同,本届Rational大会的缩写从RSDC变身RSC,去掉了Development的D。没错,这正是本次Rational大会所要传达的思想:从以工程技术主导的软件开发到以经济因素主导的软件交付。在本次大会上,IBM率先提出“软件经济学”理论,强调企业应该从经济角度衡量投入与产出,以此指导软件开发中各项工作与资源的配比,以获得非常好的的投资回报率(ROI)。

2009 IBM Rational软件高峰论坛 主题:开发“真”精彩

    IBM Rational软件高峰论坛的前身是一年一度的IBM开发者大会(IBM developerWorks Live! China)。从2000年开始,每年11月间,这一国内开发人员的盛会都会在北京和上海之间轮流举行,会议主题都是当年最热的技术或趋势。从2006年开始,IBM开发者大会以“RSDC”的名字出现在北京大学百年纪念大讲堂,此后每年RSDC大会都会如期而至,内容涵盖从需求分析、设计架构、质量保证,以及变更与发布管理的全方位软件开发过程,大会主题则从整合到协作,直至今年RSC的软件经济学理念。

    软件经济学提升软件价值

    RSC 2009大会上,IBM发布了名为《提升软件经济》(Improve Software Economics)的白皮书,该白皮书的作者正是IBM公司Rational软件服务副总裁Walker Royce。他所提出的“软件经济学”理论,是一个不同于以往“软件工程学”的新理论。该理论试图从经济角度,将软件投资与业务战略相结合,让软件投资符合业务的优先级,以提升项目的成功率。

    一直以来,软件项目的日常决策都会受到价值评判、成本权衡、人力因素、宏观经济趋势、技术趋势、市场形势和时机等传统经济因素的制约。和任何一项经济活动相同,软件开发的目的是交付产品,创造价值。因此,软件生产不仅是一项高技术含量的工作,更是一项需要考虑成本因素的复杂系统工程。而现存的软件工程知识体系过多地关注软件技术细节,对技术标准和价值创造之间的关系并未给予重视和明确说明。随着软件交付在企业中的地位日趋重要,传统的“软件工程”原则无法再为企业带来更多竞争优势。

     如果说“软件工程学”关注的是流程,那么“软件经济学”则更加关注结果。越来越多的团队开始使用“软件交付”(software delivery)来代替“软件开发”(software development)。从开发到交付的微妙差异,象征着管理理念的重大变革——从关注项目过程到关注项目目标——完成交付结果的开发活动。换而言之,以“软件开发”为导向注重的是在开发过程中涉及的多种活动,而以“软件交付”为导向则侧重于开发过程的最终结果。是的,软件交付,没有人关心你在开发过程中是怎样的,人们关心的是你能否交付出一个好的产品供人使用。基于结果的软件管理,最终目标是使用有限的资源达到更好的结果,经济因素已然抢占技术的主导地位。

表1:传统工程导向软件开发与经济主导的软件交付的区别(摘自白皮书《Improving Software Economics》)

软件开发:工程技术主导型软件交付:经济因素主导型
区分出不同开发阶段持续改进的系统
区分开发团队到维护团队适用于开发和维护工作的常用流程、平台和团队
一系列分明的、按顺序进行的工作:从要求、设计到代码,再到测试、运营一系列价值不断提升的可用功能
针对各阶段和角色的流程和工具包含集成工具和流程的协作平台
并列团队遍布全球各地的基于Web的协作
尽早完善计划和要求随着不确定性的消除而不断提高的准确度
通过测量生产情况和活动完成情况实现治理通过测量增量成果和流程/质量趋势实现治理
工程规范:准确制定全部要求/计划,随后追踪静态计划的进度和范围经济规范:减少不确定性,管理变量,衡量趋势,通过持续不断的目标协商实施调整和控制

    为了成功地实现交付,“软件经济学”关注软件开发中价值的判定、成本的权衡、人性的因素、宏观经济趋势、技术趋势以及市场状况和时机。它力图更好地挖掘经济目标、系统规定参数、内外部条件和软件开发技术之间的关系,来提升项目、企业、行业乃至国家的业务价值。而软件工程学不再适应软件开发的原因也在于此——源自传统行业的工程管理理念无法解决软件开发这一服务产业业务灵活多变的特点。

    智慧地管理软件交付

    IBM软件集团Rational总经理Daniel Sabbah博士在大会主题演讲中谈到:“从企业层面的挑战来看,我们没有无限的时间,也没有无限的资源,因此我们必须要更有目标、更有效率地来开发符合特定目标的软件。我们不仅需要用软件的衡量标准,而且需要用经济标准来衡量什么是正确的软件,来判断什么样的结构才能够产生相应的商业结果。所以,我们不应该对传统的衡量标准墨守陈规,我们需要重新审视软件开发模型,变得更加灵活和随需应变。”

IBM软件集团Rational总经理Daniel Sabbah博士

    更好的软件开发模型是什么?如何在软件交付当中有所作为呢?我们不妨先想一想在软件交付中会面临哪些挑战?你的团队是不是分散的?在开发过程中,沟通和协作如何解决?有没有一个推动变革的企业文化?有没有敏捷的反应能力?更重要的是,是手工配置资源还是能够自动优化资源配置?要解决这些存在的问题,要智慧地管理软件交付,首先,我们需要明确业务和运营目标。如何才能更加快速、更高质量地生产软件,如何才能更好地理解交付时间和上市时间?答案是将所有的注意力集中到一点——目标是什么,达到目标需要采取哪些措施。我们需要分析业务目标,将这些业务目标从上而下地变成运营目标,然后对它们进行排序;同时还要跟消费者进行交流,通过创新发现新的价值。

    其次,需要随时能够了解目前开发处于哪一阶段,是在软件开发生命周期的哪一个点;还需要了解自己的优势、劣势,整体能力、组织机构,以及和其他竞争者的差距等。根据这些信息来制定一个可执行的计划。最后,在执行过程中,还需要一个可度量的系统,能够让利益相关方明白和了解是否有能力最终完成目标。

    围绕着这些需求,IBM借RSC大会推出了多款帮助企业衡量软件开发价值,帮助企业做出适当决策的全新产品和解决方案,它们包括:

    · 全新的投资与项目管理解决方案Rational Insight。它可帮助企业领导人衡量和管理整个企业内团队的绩效和项目结果。Rational Insight采用IBM Cognos软件构建而成,可提供多项标准和仪表盘,帮助企业快速发现和聚焦造成软件或系统项目延迟或中止的组织性问题,确保适当的人员顺利展开协作,继而采取实时措施不断改善结果。

    · 全新的Measured Capability Improvement Framework (MCIF)则为开发团队的负责人提供了一个测量团队工作效率、业务价值的可行框架。这一框架能够帮助他们衡量结果和管理项目,做出必要变更并制定完善目标,从而持续改进软件交付能力。

    · 为帮助企业更高效地实现理想的业务成果,IBM还将推出一项试验计划——IBM Rational Focal Point for Project Management。这项全新的解决方案旨在减少妨碍软件项目的延迟和错误。Rational Focal Point for Project Management可支持跨地区和组织的沟通、工作流和协作,从而改善业务成果和管理不断变化的优先级。

    在所有产品的背后,都利用到Jazz平台。如IBM软件集团Rational软件开发副总裁Jamie M. Thomas在发言中所说:“所有这些工具能够一起帮助我们完成这样的变革。协作、自动化、决策分析,都是实现交付能力改善的重要步骤。我们希望能够利用团队的优势为项目提供知识的支持;我们也希望原来由手工完成的工作实现自动化,以降低风险,实现质量和规定的要求;我们还需要根据相关信息生成的决策分析报告,随时能够了解这种变革的进程如何,以不断地分析和改进系统。”

IBM软件集团Rational软件开发副总裁Jamie M. Thomas
0
相关文章