计算机软件技术研究现状与发展
计算机软件技术研究现状与发展
00
计算机软件作为一门学科,从其诞生到现在不过短短的半世纪,已取
xml技术的主要应用得了令人瞩目的发展,同时也随着技术的进步而在酝酿着不断的创新。本文在
简单介绍软件技术的研究内容基础之上,按照可运行软件的功能分类,从系统
软件、支撑软件、和应用软件三个方面对其现状和发展趋势予以综述。
一、软件技术研究开发现状
(一)、软件及其分类
软件技术是指支持软件系统的开发、运行和维护的技术。其核心内容是:高效的运行模型及其支撑机制,有效的开发方法学及其支撑机制。
作为可运行的系统,软件已经形成共识的分层模型,即:软件可以分
为系统软件(操作系统、数据库等)、支撑软件(高级语言编译器、程序库、CASE工具等)和应用软件。
(二)、世界各国的重大软件计划
各国政府相继启动国家级的重大软件技术计划,基础软件和软件开发
方法研究都成为这些国家级计划中优先推荐或重点发展的内容。
中国信息产业部在2001年5月发布了《信息产业“十五”计划纲要》,其中软件业的发展被纳入重点。
(三)、系统软件研究开发现状
作为计算机系统中最靠近硬件层次的软件,系统软件包括操作系统,
数据库管理系统,以及诸如应用服务器等的中间件,下面将分别对各类系统软
件的研究发展现状予以阐述。
1、操作系统研究开发现状
操作系统是管理硬件资源(处理器、存储器、显示器、打印机等)、
控制应用软件运行、改善人机界面并为应用软件提供支持的软件。操作系统向
高层应用软件提供编程接口,为用户方便地开发应用系统提供了基础。
随着计算机网络等技术的发展,近年来操作系统在网络化、并行化、
智能化等方面将会取得更加显著的发展。
2、商业嵌入式操作系统研究开发现状
嵌入技术是信息技术发展过程中形成的一种新技术。所谓嵌入就是将
计算机的硬件和软件嵌入其他机电设备中去,构成了一种新的系统,即嵌入式
系统。可以说嵌入式技术和设备在我国国防、国民经济建设中有着广泛地应用,有着巨大的市场。目前嵌入式操作系统的品种较多,仅用于信息家电的嵌入式
操作系统就有40种左右。近年来市场急速扩张,吸引着越来越多的厂商进入。
3、数据库研究开发现状
(1)、网络化的大型通用数据库管理系统
支持Internet数据库应用已经成为数据库系统的重要方面。数据库研究学术界以及各主流数据库公司都将其作为自己重要的发展方向。例如,
Oracle公司从8版起全面支持互联网应用,微软公司更是将SQL Server作为
其整个.NET计划中的一个重要的成分。
(2)、数据库安全系统及技术
由于数据库系统在现代计算机系统中的地位越来越趋于核心的地位,
数据库系统的安全问题自然受到越来越多的关注
在目前各国所引用或制定的一系列安全标准中,最重要的两个是由美
国国防部制定的:《可信计算机系统的评估标准》(简称TCSEC)和《可信计
算机系统的评估标准关于可信数据库系统的解释》(简称TDI)。
(3)、XML及Web数据管理技术
Web上的数据(包括大量的XML数据)与传统的数据库中的数据不同,具有如下的一些特征:面向显示,半结构化和无结构,不同形式的数据源,动
态变化,以及数据海量等。
(4)、嵌入式移动数据库技术
随着移动通信技术的迅速发展和投入使用,加上移动计算机的大量普及,国内外许多研究机构都展开了对移动数据库的研究,并取得了许多有价值
的成果。移动数据库技术涉及数据库技术,分布式计算技术,以及移动通讯技
术等多个学科领域,具有较高的学术起点。
4、中间件研究与开发现状
随着网络应用的逐步增多,为了解决平台异构性和互操作问题,中间
件作为一种新的软件类型(或层次)开始出现。从其提出的初始动因来看,中
间件是指网络环境下处于操作系统等系统软件和应用软件之间的一种起连接作
用的分布式软件,主要解决异构网络环境下分布式应用软件的互连与互操作问题,它可屏蔽实现细节,提高应用系统的易移植性。
(1)、中间件及其分类
由于所属领域的不同,面临的问题差异很大,因此,不同开发组织分离、开发出的中间件也不尽相同。一般,传统的中间件分为以下几个主要种类:
远程过程调用中间件
面向消息的中间件
对象中间件
事务中间件
数据访问中间件
(2)、消息中间件技术
消息中间件基于队列与消息传递技术,支持应用的松散耦合集成,是
最早的中间件分类之一。几年来,尽管新的中间件门类不断出现,支持应用集
成的中间件有好几种,如事务管理中间件、Web应用服务器、门户服务器、EAI
服务器等等,消息中间件作为基本的应用集成平台的首选地位一直没有改变。
(3)、基于CORBA的对象中间件
目前对象中间件领域发展迅速,主导的标准规范除了Sun公司的J2EE, Microsoft的DCOM/COM+ 以至.Net之外,最为重要的标准便是OMG的CORBA。
(4)、基于J2EE的应用服务器
应用服务器是运行在网络环境下的基础软件,因此,其功能与网络环
境的特点密切相关。网络环境具有分布性、异构性、开放性、演化性等特点。
(5)、微软的.Net
COM(Component Object Model)是构件对象模型的缩写,是Microsoft
公司开发的对象中间件,它主要由两部分组成:一个是COM规范,描述了COM
构件的二进制标准。另一个是COM的运行支持库,嵌入在windows操作系统中,负责COM构件的注册、查、创建等功能。
(6)、 Web Service
随着构件技术的成熟以及Internet的飞速发展,Web技术和XML逐渐
成为实现企业解决方案的重要手段。几乎在所有的Web应用中,HTTP都作为Web客户和Web服务器的连接桥梁,而构件诸如COM+、EJB等都作为实现业务
流程和状态持久化的后端系统。尽管计算驱动的后端系统这几年改变很多,但
是前端却几乎没有什么变化,依然是HTML驱动的传输和显示格式。
(7)、行业应用中间件
中间件技术向具体行业领域的延伸引出中间件发展的另一个方向,即
所谓的行业应用中间件。一些具体的应用领域如电信、金融、保险等行业由于
专业性强、对某些需求高,如果应用系统从底层开发,则开发周期长,开发困难大,因此迫切需要专
门适合该领域的中间件产品。
(四)、支撑软件研究开发现状
自从上世纪六十年代出现“软件危机”和“软件工程”以来,围绕如何开发高效的高质量软件的技术、方法和体系研究始终是软件技术的另一个重要研究内容。软件生产平台研制和质量认证体系研究是提高软件生产工业化水平的两个关键问题。
1、CASE工具研究开发现状
CASE工具是软件开发技术、方法、过程等的辅助性支持手段。随着软件开发复杂性的增加和人们对软件开发方法研究的深入,CASE工具已成为软件开发中必不可少的基础设施。常见的CASE工具主要有需求管理工具、项目/计划/过程管理工具、建模/编译/部署工具、配置/版本管理工具和测试/度量工具几类。
2、软件构件技术及其支撑工具研究开发现状
软件开发方法的研究一直是软件开发技术研究的核心和基础,为人们的软件开发提供了全面的指南和支持。主流的方法从最早的结构化开发方法,发展到二十世纪九十年代成熟起来的面向对象开发方法,九十年代中期后,基于构件的软件开发方法在支持软件复用方面提供了更好的支持,并逐步与现
时的工业化技术(如CORBA、COM+、EJB、Web Service等)相结合,成为了倍受关注和快速发展的新型软件开发方法。
软件构件技术是基于构件的软件开发方法的核心技术之一,涉及构件模型(Component model)、软件体系结构(SA)、分布式构件(对象)、构件管理、构件组装、开发过程等技术。
3、面向代理(Agent-Oriented)技术的研究开发