技术开发 频道

交付智慧的软件 缔造智慧的地球

【IT168 业界资讯】

    本文根据Daniel Sabbah在2009 Rational软件高峰论坛上的演讲整理,Daniel博士在演讲中谈到Rational软件在2009、2010年的发展战略,以及Rational新战略将为客户带来什么。

    Daniel Sabbah,1974年加入IBM软件开发团队,35年来在WebSphere、Lotus等各个不同岗位上一直伴着IBM软件集团的成长,现任IBM软件集团Rational总经理。Daniel在IBM软件集团的资历颇深,目前整个软件集团五大品牌软件的总经理中就有三位曾经是Daniel的徒弟。Daniel是Rational最大的精神领袖,在他的带领下,Rational以每年翻番的速度增长着。

    作为IBM大家庭当中的一员,作为企业和业务的组成部分,作为全球社会的组成部分,Rational关注很多不同的问题,以解决今天这一富有挑战性的世界。大家知道,IBM已经有98年的历史。在将近100年当中,我们一直关注创新,关注信息技术和计算技术的方方面面。过去几年,IBM不仅关注创新,也关注如何把创新变成现实,以帮助我们解决今天所面临的各种挑战。

信息系统诠释智慧的地球

    因为全球化演进,我们的世界也在不断的变化、不断的发展,因此,较之以往,现在的我们应该更多地关注信息技术,让信息技术帮助我们迎接所面临的挑战。我们要利用信息技术,利用各种设备,利用各种人才,把技术和人才结合在一起。另外,还要把每天产生的大量信息利用起来,把所有的一切转变成一种深入的洞察力,让我们能够更高效地调动和利用全球资源。在不断发展的全球大家庭中——现在全球有超过60亿人口——所有这些人都能够非常高效地使用不断减少的资源,让我们更加智慧地利用全球有限的资源。因此,我们必须要有更透彻的感知,利用先进的因特网让数十亿人不断地在这个框架当中进行实时的沟通和交流,在这个网络中进行通讯。

    另外,还有很多的技术设备,让我们更好地了解信息和信息背后的含义。要想利用好这些信息,产生更多的洞察力,就要变得更加的智慧。实际中,我们在利用这些数据和信息的时候,由于信息来自于相互依存的世界,我们需要大量地使用智能化软件来帮助进行分析。只有通过智慧的软件,我们才能够完成自动化的分析,这一点是非常必要的。这就是IBM一直推行的,来为我们解决各种挑战的“智慧的地球”。

    作为企业,IBM在全球社会中一直致力于朝着这个目标努力,Rational也在这个大的背景下发挥了非常重要的作用。这种作用帮助所有人把精力集中在创新上。我们创造出一些必要的软件来运行这种相互连接的系统,也就是智慧的系统。因此,我们看到了一个新时代的到来,这个新时代是最新一轮的创新革命。

    二三十年前,我们花很多的人力、物力来建立能源系统、材料研究,目的是建造超音速飞机。今天,与之最大的不同,就是现在飞机的高速稳定性都要靠软件来保证。以前是软件比较少,机械的东西比较多;现在相反,软件发挥的作用和所占的比例更重。更多的软件内嵌到设备当中,成为智能的部分;软件也不是一个独立的系统,而是成为一个系统。这种复杂性让我们有很多机会发明更多智慧的产品,发明更多高效的产品,让这些产品成为智慧的地球的一部分。

    软件本身有很多益处,比如可以帮助我们建立智慧的地球,能够带来新的机遇,各行各业都能从中受益。作为软件工程师,我们也有机会进行各种各样的创新,给全球各行各业带来创新。这也意味着我们成为整个社会演进的中心,关注的行业。这种相互依存的系统和相互连接的系统,都要通过一些智慧产品来进行整合和连接。这些理念大家已经比较熟悉,不管你的消费者是谁,不管你在世界的哪个角落,智能的产品、智能的系统能够让企业和消费者联系在一起。它也能够让整个信息系统在全球联系起来。

    例如,现在要把交通系统变成智能化的交通系统,要融入政府的职能,要把基础设施进行整合,另外还要有车辆、能源,我们必须要有更加智慧的能源交通系统。所以,在我们谈到智能化的交通系统的时候,我们实际上是在讨论许多的系统之间的互联互通,而这些系统本身是由更加智能的软件创造出来的。我们来看今天的汽车,汽车不再是一个单独的个体,只是把你从A点带到B点。现在,汽车已经是整合的一种工具,这种工具可以给你提供通讯、提供整合,让你可以整合到一个智能的交通系统中去。而且,随着时代的前进,它将会给我们提供更多的信息,提供更多的互联互通。这样,我们就可以防止交通阻塞,会对减少汽车二氧化碳排放有好处,也会影响到社会的生产力,支持更多的人口去使用更少数量或者更有效数量的资源。所有这一切都来自整合的智能化,所有这一切都来自更加智慧、更加有效的软件交付。

    同样,对于自动化的供应链来说也是如此。当我们建造复杂的、先进的飞机时,我们有全世界提供的各种各样重要的零件。这些零件是以实时的信息技术方式提供的,它使得我们管理供应链的整个概念更加有效、及时,可以更加智慧地使用资源。

    对于医疗也是如此,有很多医疗方面新型的服务。在IBM,我们一直非常关注越来越多的智能的解决方案,以便帮助我们不断前进。我们非常认真地对待这些问题,我们不仅仅只是提出这个概念,只是作为一个市场营销的概念,而是非常地关注解决方案。比如在智能的医疗系统,更有效率地使用等。

    再比如说,在食物链的分布等方面。大家知道,我们面临着很多的挑战——水资源、公共安全,而且每一个这样的挑战都要求共同的合作在这样一个复杂的系统当中,有很多信息是从智能的产品中产生出来的,而这些智能的产品是互联互通的。

重新审视软件开发模型

    为了这样一种创新和洞察力,就需要我们变得更为有效率,而且更为有效力来生产那些软件,这些软件可以使智慧的地球成为可能。在这一方面,Rational关注的焦点放在提供这样的工具、平台、方法上。这些平台、工具、方法对于继续演进到新一代的软件解决方案时代非常重要。它可以帮助我们解决所面对的各种挑战。它可能是个人的挑战,可能是由于缺乏标准或者是在非常复杂的相互依赖的系统当中;它可能是团队的挑战,在地理上相隔很远的开发和整合还做得不是特别好,因此需要有一定的工具来降低整合的复杂性,以便能够做得更好。

    从组织层面的挑战,我们并不是有无限的时间,也没有无限的资源,我们必须要更有目标、更有效率来生产符合特定目标的软件。我们不仅仅需要用这些软件的衡量标准,而且需要有软件的经济标准来衡量什么是正确的软件,来判断什么样的结构才能够产生相应的商业结果。所以,我们不应该对传统的衡量标准墨守陈规,我们应该变得更加灵活,随需应变。

    最后,从业务和社会的角度。在此层面上的架构、一致性可以给我们这样一种能力,就是可以不断地提供整合的解决方案,准确、快速、高质量地提供解决方案,而且可以降低解决方案互联互通的复杂性。如果不能够克服这些挑战,不能够有新一代的思维方式,在设计软件和软件的衡量标准中我们就没有办法有效地建立起智慧的产品和智慧的地球。

    因此,在过去的四年中,我们一直在重新思考一个完整的成熟度模型,我们也在重新思考对于软件工程的理解,以及软件工程相关的衡量标准,以便能够面对这样的挑战。今天,我们找到了一些新的关于成熟度模型的思考方式,也找到了新的组织信息的方式。同时,我们可以利用同样的网站、同样的互联网和同样的标准来帮助自己不断地改善和解决这些挑战(在全球范围内)。我们的团队精诚协作,他们了解彼此的工作,所以可以将关于软件生产的信息更好地诠释,使得软件生产更加有效,并且提供更好的解决方案。

    结果告诉我们,如果你开始关注这样一种新的模型,如果你开始以一种不同方式分析软件和软件开发的发展,你就可以迅速地改善生产能力,来交付和创新。
 

关注业务目标和软件交付

    不仅在个人层面,在团队层面、组织层面、业务层面,乃至社会层面都是如此。更加快速、更高质量地生产软件,更好的理解交付时间和上市时间,怎么实现这一点呢?通过让我们更加集中到关注焦点的方式来实现这一点。我们需要了解目标是什么,要理解达到目标所需要采取的措施。我们需要有更高层次的整合和诠释,同时,洞察力也是我们需要和必要的。首先,我们要分析业务目标,然后将这些业务目标从上而下地变成运营目标,然后对他们进行排序,同时也要跟消费者进行交流。

    同时,我们要创新,发现新的价值,把关注点放在业务目标上,改善质量。比如,衡量100万行代码当中有多少缺陷,我可以写一个程序,这个程序里面可能没有任何的缺陷,但是唯一的问题就是它不能够实现所想达到的目的。这样一个“完美的质量”的概念,是通过标准的方法,比如CMMI来衡量的。这种衡量标准在今天的世界不再那么重要。这种质量的概念,如果没有一个明确的、对于消费群体的了解,通过消费群体客观地和主观地衡量质量,那样质量就没有任何意义。所以,我们今天所使用的质量的衡量标准是不够的,它们没有将背景考虑进来。我们必须改变思考生产软件的方式,必须要有工具、方法及程序来帮助我们重新思考、重新理解软件生产的方式,否则就会失败。作为企业、作为社会,我们都禁不起失败。

    因此,我们将一些新的方法整合到流程当中。在原则上,我们都将此称为敏捷的方法。在实践敏捷的方法中,如果没有真正地理解客户对于质量的看法,这样的敏捷方法也不会比别的方法更好。所以,我们的结论是找到一些新的思维方式和新的应用方式,将正确的原则,以正确的方式,应用到渐进的模型当中,这样一个渐进的模型真正关注的是客户所关注的质量,以便能够生产出在正确的时刻最需要的产品。我们需要把客户的反馈融入到产品的开发当中,在过去三年的开发和生产新产品过程中都是如此。通常所说的敏捷是一个小的团队的敏捷,它对于系统是没有效力的,如果对敏捷带有一种天真的假设,以为客户会非常简单地反映他们对质量的要求是不对的。所以,我们所说的敏捷是扩展的、敏捷性的结合,是以业务和经济利益为基础的一种模式,重新思考方法论、流程和工具,以便应对未来所面临的挑战。

    现在的挑战跟三十年前的挑战是完全不同的,因此,Rational能够大规模地重新审视软件工程,并且把敏捷开发融入流程、融入工作当中。在这种新的过程中,革命性地利用Jazz平台,以一种渐进的方式来工作,以一种跌宕的方式进行程序开发。我们先找到一个小的解决方案,然后慢慢地朝向一个复杂的系统开进,不断地吸收设计当中提供的反馈,以一种动态化的方式来完成流程。这个流程像业务流程一样,不断改进,在软件交付中也采用了同样的横向整合方式来高效地交付软件。

    是的,软件交付,因为没有人关心你在开发过程中是怎样的,人们关心的是你能否交付出一个好的产品供人使用。这一环节以前是没人关注的,因此现在开始把反馈信息和业务流程共同称作软件交付,这也是非常重要的。这样,我们就有了一个平台的支持,另外还要有一个工具来帮助我们改进。这种工具能够在网络上应用,不管采用哪种模式,你都要有这样的流程,它必须是开放的、可扩展的、关注端对端的管理,提供信息让我们来进行智慧的决策和衡量。Rational系统,就是使用软件工具来帮助我们建立这样的平台和工具,以端对端的运用程序在生命周期中进行开发。

    我们知道,网络是非常开放的平台,我们也看到很多采用网络的好处,有一些是横向业务整合所带来的,能够让我们在整个应用程序的生命周期都受益。不管是架构师还是开发人员,他们都能够看到这种横向信息流动,这是一种动态的信息流,也是信息的一个自动抽取。这一点对于我们作出智慧的决策是非常重要的。这可以让我们在正确的时间关注正确的解决方案,从而才能够加快软件开发的速度,加快在正确的时间交付正确的软件,最终帮助我们解决所有这些挑战,共同创造一个智慧的地球。

0
相关文章