图文:北京大学电子信息学院院长梅宏(2)

http://www.sina.com.cn 2008年04月23日 17:31  新浪科技
科技时代_图文:北京大学电子信息学院院长梅宏(2)
北京大学电子信息学院院长梅宏

  那么,我们说中间件过去应用软件是直接操作所有的硬件,操作系统出来以后,把所有的硬件都管理了。但是,我们要面临操作系统的异构。但是,后来说不行,随着网络时代我要解决很多的问题,比如说我要远程调用、负载均衡、事务处理、容错、安全保障,那么把这些融到一块,就变成了现在的中间件。所以,这需要我们新的软件,来支撑我网络上的所有的应用系统开发。

  那么,在这个意义上讲,我如果把新的网络中间件,设为新型的系统软件,针对网络环境下的操作系统,把它的操作系统之中构建出一个新的系统软件。同时,在Inter网的时代,构建出了新理论、新方法的综合形态,那么它就成为了网络形态下的关键的技术和基础设施,同时它也引发了软件产业新一论的竞争。

  这几年,围绕着网络计算,很多的概念都在呈现,比如说我们前几年热炒的组织计算、服务计算,这样的研究开始出现了云计算等等,所有的一系列的东西,都想做一件事。就是大家想把Inter网做成我能够给人们提供什么样的东西。但是,不管你提什么东西,总的是变不了的,他都需要支撑。

  那么,第二个方面我讲一下Inter网到来带来的什么东西。实际上,仅仅从用户的角度来看,Internet最重要的是开放的,你随时可以进去,也随时可以退出。它动态的随时在变,你根本找不出某一个瞬间它到底是什么,今天是这样,明天是那样,所以,它是在变化的。

  那么我们统一起来,我们讲分布也好,Internet的分布,是节点高度自制,不可预测,人、设备、软件是多重运动。使用的方式也非常个性化,那么由于这样的东西出现,我们在面向这么一个开放的环境,未来的软件系统,我们可以设想在Internet上它形成了一个封闭的集群,这种软件系统是不一样的。

  它要求我们软件系统是开放的系统,因为它要随时和外部连接。它要是一个动态的系统,同时要在线的演化。过去我们用软件要更新换代,我需要把我的应用停下来,换新的应用,然后再进入系统。但是现在,可以提供你7×24小时不断地提供服务,在服务的同时,你可以完成自己的更新换代。那么,环境的感知,是你对周边而言的感知力度。那么,到了环境的变化之后,你有一个自主适应的力度。所以这是Internet所具备的。

  那么,从这个角度来看,每一个单元和每一个实体,它是一些异步的构建的它分布到网络上,每一个异步的构建是具有独立性、主动性、自适应性。但是我们是通过多种静态连接和动态合作方式来连接的,那么最后是把它们变成的互联互通和协作的联盟。那么,这就是我们自己的运营,就是网构软件,这就是Internetware,这也是我们自己造的词。那么,实际上这就是从信息化到软件化。

  大家知道,我们到目前为止,Internet上的应用,最最好的应用还是www,还是Web,所以回顾历史,Internet几代最早的E-mail的应用,到后来出现的FTP等等的资源共享。那么,到了Web的出现,实际上使得整个的Internet走向了一个集成。

  但是,当我们想到Internet不仅仅是一个信息的提供者,不是一个数据的提供者,不仅仅是一个知识的提供者,它要给我们提供集散能力、软件能力的时候,我们就把它变成的一个软件,它能提供给我们功能、计算。

  我记得在10年前大概有一个ASP叫做应用服务提供商,那个时候应用没有起来。但是,现在的服务提供商的概念,就是SA、AP、SOA等等这样的概念出现了,使得软件变成了服务了,在整个的Internet里面提供服务,就成为了一种现实。

  那么,这样的网络有没有什么特点?我们总结出了5个特点。

  每一个软件的实体具有相对独立性、主动性和自适应性。软件实体之间有多种方式的互联、互通、协作和联盟,这就是协同性。

  那么软件实体具有感知外部运行和使用环境的能力,这就是反应性。那么结构和实体的演化能力,包括元素数目的可变性、结构关系的可调节性和结构形态的动态可配置性,这就是演化性。那么最后一个是多态性,网构软件实体具有目标制导能力和多目标的特征协同能力,从而使系统的效果体现出相容的多目标性。这就是我们过去的软件强调的是单一性,过去的软件是从输入给你映射出了一个输出。而这个输入到输出,就是I到O是固定的。这个正确率是需要保证的,而外部的软件就不是这样的,有没有绝对的正确率?不一定,像我们网上搜索的信息一样,你今天的搜索和明天的搜索是不一样的,但是它大概可以满足你的要求就可以了。

  所以,我这种多态性体现了新的软件形态,它的性质是足够好够可以了。不一定要追求绝对的满足我的要求。

  那么,网构软件对软件技术的挑战,第一个是确定目标、有序控制,因为我们的目标不一样,所以我们需要确定目标。那么,新的软件形态是在软件运行平台上,我们可以对外提供服务,这些服务实现了我本身的站点功能,从无序到有序的过程。而新的服务来了之后,又会产生新的一轮从无序到有序的过程。那么,我再把这个用起来,它是一个动态的目标,可能渐趋稳态,可能永远达不到稳态,但是可能达到80%到90%,但是我们可以接受。

  那么,从目标、协同方式等等本身,这一系列的东西,是我们现在值得研究的,也是我们国际上大家很关注的,怎么样实现这么一类,以大计算平台为目标的软件技术的转型。

  那么,现在的技术体系,到现在为止,模型没有产生变化,就是因为它符合了我们的需求。那么现在的核心是两个部分,就是数据和操作,就构成了我们的对象。那么它的实体是固定的,我们要解决对象A到对象B的调用,就要变成RPC式硬连接的方式。那么,系统结构与目标的确定性,是缺少一个感受的能力。那么,现有的软件是在开放性下面,缺少协同和演化的设置。

  那么,到60年代的结构化的方法,80、90年代的面向对象方法,到了20世纪末的软件Agent方法,那么到了现在,在Agent就实现的开放的应用,倒不一定说Agent是一定要有的,但是到实体性等等是我们网络一定要解决的。

  那么,从简单的实体操作来看,我们的网构软件结构是网络软件实体加网构软件协同,加网构软件描述。这比简简单单的操作复杂得多,它要求你要感知外界的变化等等。

  那么,从中间件来讲,它的发展趋势围绕着这样的东西,刚才我们说的有几个大的趋势。那么要支持Internet的应用。中间件过去是局域网下面的东西,那么要支持SOA的结构。那么,它要面向适应性的开放环境的变化。同时,刚才张教授也谈到了移动,中间件不能够仅仅是主流的计算,那么还有轻量级的计算,就是面向移动的。是整个的无缝平台,那么支持普适计算,那么传统电信的概念在这里面也要有体现,而且要有相关的反射机制。

  那么,我还得对中间件进行调控,所以我们需要在中间加一个东西,提供我能够随时了解中间件的运行状态,对它进行调控,这就是中间件的反射机制。更进一步的东西,我们就需要自治计算。希望我们系统在运行的同时,我能够自己调整系统的变化。或者是怎么样人软件自己来关系,就是支持中间件,我们要形成这么一个回路,它能够有机制自己实行上面的中间件和下面的软件来形成整个一个信息,来形成自我的调节,变成性能最优。

  那么,这些都是我们需要解决的一些问题。

  前面我讲了两个部分,一个部分是从过去的几个主要的驱动力,第二部分主要是说我们在Internet时代,软件的变化。

  第三部分是我们自己提出的面向构建,集中软件开发化的ABC方法。

  实际上当时在98年的时候,在青鸟工程攻关工作中,从构建青鸟工程基础理论体系的角度,针对构件组装中面临的种种问题,提出了ABC“基于体系结构的构件组装”方法,主要关注体系结构设计阶段。后来,我们考虑了Internet的发展,我们把这个东西换到了整个的生命周期,换到了Internet的环境,所以我们进行组装,所以它整个的改了。所以,做了SA的模型,我们希望为软件的开发提供一种简单的方式。它是以结构为核心、蓝图来指导系统的开发过程,每一个阶段都以结构来指导。

  那么,以分布式的结构技术,就是我们中间件的平台,作为组建的方向通过共的方式来支持映射规则。这里面,我们制定了软件核心模型,那么这每一个过程都是软件的体系结构构成起来了。

  那么,这个从头到尾是三个层次,是领域工程和体系结构设计还有运行支撑。这就构成了我们三个小的阶段。一个是面向特征进行需求建模,一个是进行平台独立的体系设计,还有平台特立的体系结构部署、运行和维护。我们是以这样的步骤来支持我们整个的开发。

  那么,目的是需求规约结构化,支持从需求规约到体系结构设计的映射。这个来源就是电信,这个平台之上,开发商可以做不同的服务,这每一个服务就叫需求建模。那么,呼叫等待,这就是我们开发性的增量。那么,像Internet某种意义上就是提供了基本的电信通信手段,但是不一样,电信是连起来的,而Internet走的是包交换。但是,从概念上是一样的,人们不断地在Internet上开发不同的服务和能力,而这种能力最后怎么连起来?所以,这就是我们为什么采取了软件的原因。

  第二个阶段,我们加强了结构的设计,在概念上把结构设计好,形成一个模型,然后再设计实现一些工具。第三部分,我们做了一个中间件的平台。前面的平台在操作系统上是不可能进行的,如果说编程模式的变化,而不带来运行模式的变化,就是说你编程的时候是中间件,而在运行的时候不是,所以我们自己做了一套符合规范的东西,就是为ABC方法提供运行支撑,就是我们的中间件平台。它基本的思想是从构件和业务实现之间,构成了一个环境,这就是一个连接子管理,那么这个称之为互操作框架,形成一个小的软件。那么,我们通过运营体制的研究,我们开发工具,和部署工具还有部署的管理工具形成的一个特点。

  那么,它本身是构件化的,那么既然要强调构件化,是一个系统的结构好了以后,他就便于修改、便于操作等等,那么我们做了一个内核心那么,当你要替换某一个构件的同时,你不需要把它停止,整个的系统照常运行,它仍然对外提供服务,但是在服务的同时,你把新的构件部署上去了。我们这个部署的环境,是由体系框架来支持部署的。同时,整个的管理也有一个结构来进行统一的管理。

  在我们的界面上,对于这个结构图拖、拉、拽就可以实现对于整个结构图的配置和运行。

  那么,在这个基础之上,我们也做了一些专利。学术上的东西我不说了,那么我们ABC的方法,我们在山东中创公司等多个软件企业得到应用,特别是在2008北京奥运会信息系统建模中发挥了重要的作用。那么我们为北京的奥运提供的支撑,也为奥组委提供了谈判的依据。

  那么我们这个PKUAS被集成到国家863计划“十五”中间件的集成套件,在“四方国件”中并行和世界著名开源软件组织开展合作,与JonAS对等合并。那么PKUAS已在20余个应用系统中得到应用,直接经济效益过1000万。在中低端已经具备替代商用应用服务其的能力。

  当然了,传统软件的东西我们还没有解决,但是我们在这个主流的基础研究之上,我们是最终希望建立一个在Internet环境下的高可信软件系统开发的理论、方法和技术体系。谢谢大家!

[上一页] [1] [2]

本文导航:
·图文:北京大学电子信息学院院长梅宏
·图文:北京大学电子信息学院院长梅宏(2)

发表评论 _COUNT_条
Powered By Google
不支持Flash
·《对话城市》直播中国 ·新浪特许频道免责公告 ·诚招合作伙伴 ·企业邮箱畅通无阻
不支持Flash