技术开发 频道

Eclipse创始人谈软件开发的前景


  很遗憾的是每次我们看到一些挑战的时候,比如互联网带来的挑战,我们都会发现挑战与机遇并存,我们在接下来的时候会讲新的技术是什么?我们有哪些新的愿景,以及那些新的想法会帮助我们解决这些挑战难题,讲到群体和社会的联网以及模块化,所谓模块化是一个老的概念,模块化是我刚做软件开发时候比较流行的,那已经30年前的事情,模块化是面向服务架构的核心。就这个具体观点就可以了解,它是我们解决软件演进过程当中复杂问题的关键。

  第三个想法是围绕权力和管理,我们必须要有纪律,因为没有纪律以及不能了解和其他人相互关系的时候,我们做软件开发的时候不是作为个体来做的,我们是一个灵活的组织,如果不能了解这一点,就不能够应对我们一直讲的复杂局面,所以今天试着给大家在这么短的时间内讲一下每一个发展趋势当中我们的见解,我们从Rational角度如何看待它,这些因素是如何聚集在一起,能够让我们塑造一个全新的软件开发平台,这个软件开发平台能够帮助我们提高软件开发的能力,而且也可以使一个复杂的系统不断演进。

  首先要认识的一点就是软件的架构是非常重要的,另外需要认识的就是软件架构同时也是易碎的,讲到这个架构必须是模块化,必须是松散的联合,这里好消息就是计算能力因为摩尔定律不断加强,现在用的带宽也不断加强,这是由于在.COM的时代所建立起来的带宽,我们有一个非常松散的架构,而且这个架构应该是模块化的架构。在我们面临各种沉积层的时候,可以看到以前遗留下来的应用和层面堆积在一起我们不断看到新的应用,新的技术叠加在老的上面。

  这就像我们考古时候发现人类的演进和地质的演进,就像土壤在地质演进过程一样,我们要实现新的演进目标必须叠加在旧的目标层面之上,我们在软件开发上面建立新的规律和新的定律这和考古学是有类比的,我们要能看到老的系统,要能理解老的系统这样就不必把老的系统丢弃,同时我们又可以建立新的系统,在更大程度上看来,如果你看一下人类大脑的发展架构,它是我们知道最复杂的一个信息技术系统,它是有很多软件的结构组成,而且是专门化的,也是专门经过优化来解决某些具体任务的。

  但是演进不是白手起家做一些事情,是不断优化目标,当需要一个新的架构的时候,就建立和创建一个新的架构,然后把这个新的架构和老的架构完美结合在一起。我们将要建立起一个软件开发环境中的规则定律,这个规则和定律能够让我们以上述同样的方式来发展,当你想到建立软件资产的时候,首先要想到架构,想到松散的耦合,想到模块化,想到演进,要想到上述的特点,要了解它的定律和生产周期。这不仅仅是创造新的功能,要在软件开发环境中迅速理解,关键是要理解架构的考古问题,当你进入现实环境中,遇到现实商务问题的时候,在IT资产中这是你真正会面临的问题。

  我们可以看一下曾经谈到的这些方向,加速器是剧烈的全球竞争,迫使我们改变业务模式,改变软件资产,也就是运行这些服务的资产。我们还说到沉积层的阻挠因素,让我们无法前进的因素,我们还要利用新技术的优势,新创的速度和能力,这样才能加快我们对软件开发的了解,同时还要考虑解决这些问题的方法。这里问题是要利用和控制这些加速器,把他们放在一起创建解决方案解决上述问题。

  第一点我们称为社区,我们已经从开放源代码社区和开放运动社区了解了很多东西,关键是要处理当前的复杂问题,关键是开放的运算,我们想一下建立一种松散结合在一起的结构,我们可以考虑让系统实现模块化,业务模型是要变化的,在我们创建一个供应链的时候,选择合作伙伴的时候,就会出现各种各样的变化,变化是非常迅速的,因为全球监管的变化,全球市场在逐渐开放,需要的是一种开放的技术,这种支持的基础技术很重要的,因为如果你技术不开放是锁定的,你的技术演进速度就会变慢,这不是可有可无的,是必须有的条件,还得有演进中松散的架构,这样才能适合一个可以迅速变化的模式。

  专有的系统已经过时了,专有系统是上一代的演进结果,他们是上一代的考古问题,今天的关键是开放的系统,而且在很多方面关键是要创建一种标准,通过利用互联网让这些标准逐渐成型,通过开放源的群体共同开发这些标准,这种社会联网,把它用于软件开发的理念,让我们有可能形成各种社区,也给我们带来非常赋有挑战性的理念,这一点很有意思,是因为全球都有同样的趋势,这是一个新的模式,这种新的模式下,是在全球协作实现软件开发,我们不可能摆脱这种模式,这具有重大挑战,因为对业务模式来讲负责具有挑战性,今天软件厂商要利用这一点才能实现自己的发展,才能够有自己的价值。

  但是在Rational在IBM,我们已经采纳了这样的方向,我们也不会回头,这将成为我们总体战略向前发展最重要的环节,这是不可或缺的一个环节,是非常重要的,我们会演示它是软件开发的核心,软件开发平台的核心,软件开发平台能够把信息组织起来传播标准。这种开放源软件社区的概念关键在于把互联网技术基于明确的交流和成本经济性上面,这样就可以有利于共创知识产权,它的关键在于创新,也通过它能够发挥所有人的潜力,我们大家都可以把自己的创意变成现实,通过群体来共同创新,我们可以共同为世界来创造价值。

  同时他们也告诉我们,通过这种系统我们可以把技术从专有的实验室里拿出来放在一个开放的环境下,可以进行测试,大家也可以理解这些新的技术,这些技术经过测试可能会被接受,也可能会被放弃,这对于具体的企业来讲是具有挑战性的,因为某一个具体的概念,某一个软件可能会被抛弃,这样的想法令人很不愉快,但是如果我们不挑战自己就不可能成功,这就好像一个大学学校的环境中,你会不断接受考试,会被挑战,人们会看你是否真正了解所学习的知识。在这样一个开放的社区中在大家共同参加的环境中,会不断接受挑战,来考验你是否能够创造价值,增加价值,这是和过去实验室环境中不一样的,实验室是一个孤立的环境,要创造一个专有的软件,迫使世界来接受,因为世界没有其他的选择,这是一个新的模式,创建价值测试创新的新模式。

  这对于技术的演进来讲非常重要,对于软件开发,软件设计是非常重要的,这种模式不会离去会成为我们软件开发未来的重要环节,如果有人不愿意接受这模式,这些人会被历史的潮流淹没,因为开放源会不断前进,最终会把他们抛在后面。
0
相关文章