基于构件的软件工程技术分析

时间:2022-07-27 04:42:58

基于构件的软件工程技术分析

【内容摘要】随着计算机软件工程与产业的不断发展,相关企业在提升软件产品质量和生产效率的同时,常采用基于构件的软件工程技术。以构件为基础的软件工程技术注重对可复用软件构件的使用,其根本目的是应用极为便捷的构件组装应用程序,以此实现在软件复用条件下的产品质量与生产效率的双向提升。

【关键词】构件;软件工程技术;信息化;软件开发

近年来,我国的信息化产业发展战略深入实施,信息化建设在社会经济中的地位与作用越来越明显。而信息化建设的中心体系———软件,对提高信息化建设的质量与水平具有十分重要的功能。信息化技术的快速发展与广泛应用,对软件研发提出了更高的标准与要求。以往采用的软件研发方式已难以适应信息化时代的快速发展步伐,这就使得探究软件开发的技术与模式成为计算机行业的重要课题之一。因此,针对基于构件的软件工程技术研究,对提高软件研发成效、促进软件产业发展等具有不可替代的意义。

一、构件软件技术的基本概述

(一)构件的基本内涵。1.构件定义。简而言之,构件即结构元件,主要是指某一系统或物体中客观存在且又可以根据实际需要进行更换的一些部分,其必须与接口标准相符合,并可以通过具体接口发挥有效功能,以此实现某种特定的作用。从计算机科技视角去分析,构件主要是指可以便捷地插入到计算机网络软件、工具、语言以及操作系统中的定义优良的代码与数据接口。[1]构件是构成软件系统即插即用功能的重要组成部分,属于能够独立分发、装配、制造与销售的二进制软件单元。与此同时,构件的主要构成部分包括部署、实现和接口。其中,“接口”的主要功能是告诉用户此构件,“部署”作为构件存在的重要形式,常常表现为二进制或者可执行文件代码;“实现”是可以确保构件运行的代码。2.构件分类。构件主要包括粗粒度构件与细粒度构件两个层次。粗粒度构件主要是指以操作系统平台为基础的构件,以实现构件即插即用的技术目标。譬如,以Windows平台为研发基础的各类应用软件,WindowsMediaPlayer,Mi-crosoftOffice,FlashGet,RealonePlayer,瑞星杀毒软件,金山词霸等,这一系列应用程序都能够直接安装并使用,且当这些应用程序不再需要时,还可以通过控制面板或者自带卸载程序将其卸载。显而易见,这正是目前我国所探析的“即插即用”软件,但这些构件的跨平台水平有限,无法从Windows平台直接移植到Solaris平台、Unix平台或者其他平台;同时这些构件的复用程度也偏低,不能纳入到我们的追求目标范畴中。细粒度构件主要是指能够用来组装诸多应用程序的相关构件,其包括专用构件与通用构件,基于构件的软件开发所讨论的对象就是这类构件。构件的另外一种分类方法则是依据软件复用进行的分类,即分为广义构件与狭义构件。其中,广义构件指的是用于复用的一系列软件实体,具体包括代码实现、详细设计、分析文档等;狭义构件则是对二进制代码构件的特指,主要用于应用程序的组装。(二)构件软件工程技术的基本内涵。1.构件软件工程技术的含义。与其他软件相比,构件软件的性能与功能更为突出,并且在软件系统中的构件软件属于二进制。同时,因构件软件的端口是根据操作规范制作的,所以其能够直接与第三方实施组装,加之构件的软件结构一般是通过操作简便的应用程序在其他软件中构成的一种独立的应用程序,进而实现软件的重组功能与重用功能,大大压缩了成本,提升了整体效益。[2]2.构件软件工程技术的优势。构件软件工程的最大特色之一就是其运行方式,即不但能够直接把构件软件插入到系统中,而且可以立即使用。构件软件在实际运行过程中,能够通过市场把构件软件端口进行分发,且因构件软件的端口组件与程序属于分开设计模式,这就使得构件软件在没有其他干扰的情况下,能够与第三方组装端口进行规范化的结合。

二、基于构件的软件工程技术开发过程

基于构件的软件工程技术开发过程极为复杂,具体可以把其开发分解成各不相同的子模块。对软件设计而言,对构件的准备与制作,以及对子模块的设计与实现,都相当重要。为最大程度提升软件开发的质量与成效,降低成本并压缩时间,非常有必要对一系列搜索组件进行改进与完善,通常在线搜索组件都能进行反复试验,在质量与价格上也都相对优越。只不过其中存在多种特定应用并不适用于实际软件,因而必须做好在某些方面进行自主研发的心理准备。同时,在构件的软件工程技术的开发过程中,集成与测试也属于重要的构成部分之一。单一化的零部件采购与生产完成后,可以将两个子模块的实际组装与测试依据设计方案进行组装,待完成之后对其实现具体的兼容功能并要进行测试。把组件中的子模块的功能与兼容性实时进行全方位的测试,以此实现软件集成的功能与兼容性应用。值得注意的是,在此过程中发现的一系列问题必须及时告知相应的开发商,修复好bug之后再对组件进行下载。另外,使用的维护人员与用户也应高度关注软件错误,并做到定期编写软件问题与修改报告,以促使软件具备优良的应用价值。目前,我们所看到的多种多样的软件插件技术已遍布于国内外,比如,PS图像处理软件中的图像处理软件、Disxuz社区软件、Chrome浏览器、FineReport报表开发软件以及Java开发平台Eclipse等。[3]尽管软件应用的是插件技术,但不同产品的具体实现方法却是互不相同、多种多样的。伴随着用户需求与标准的不断提升,边缘化因素影响下的持续创新,以及软件工程技术的不断发展,以构件为基的软件工程开发必将会受到越来越高的关注。

三、基于构件的软件工程技术的实际应用

(一)基于构件的软件系统设计。基于构件的软件系统在设计过程中,通常采用的是计算机体系中的三层结构:第一层客户服务层,其负责与用户交互、与应用服务器交互,并负责校验用户操作;第二层是应用层,其负责与数据层、客户服务层进行交互;第三层是数据层,主要是依据指令对数据库进行操作,负责为Web服务器、应用服务器提供相关数据信息。[4]这种软件系统设计更为科学与高效,对提升构件软件工程技术的整体水平具有至关重要的功能与作用。(二)基于构件的软件系统结构。对应用软件开发来讲,最大的困难就是系统可变性与分析导致的维护量较大的问题,而基于构件的软件工程技术恰好可以有效解决该问题。基于构件的软件系统结构由构件分层体系结构与软件体系结构两大部分组成,其中,软件体系结构主要是根据构件间的相互联系与约束对系统进行定义,且能够对软件系统结构的组成实施客观描述。因此,基于构件的软件系统能够高质高量地维护系统的可变性以及相关分析,这对推动软件工程技术的发展与进步具有深远意义。(三)基于构件的软件开发模型。坚持软件复用思想,是软件系统开发的基本原则。在对领域进行认真分析的基础上,构件起领域模型,并从其中提出所需要的构件。简而言之,即把领域模型中不变化的部分作为通用构件,把领域模型中能够变化的部分作为数据库或知识库等。生成通用构件之后,再把其装入到领域构件库中,进而为调取、修改与完善做准备。[5]同时,通过对一系列通用构件的复用,即可构成领域专用构件,从而为软件系统开发提供有力的支持与保障。总而言之,基于构件的软件工程技术,把传统软件中的一系列缺陷或者问题均进行了有效弥补,有力改变了软件研发的陈旧思维与性能等,促进了计算机行业的重大进步与革新,甚至可以说从根本上拓展了计算机行业的未来发展空间。然而,值得注意的是,基于构件的软件工程目前仍处于初级发展阶段,计算机行业还需要给予其更多的进步与完善时间,从各方面为构件软件工程发展创造优良的条件,相信基于构件的软件工程必将推动我国计算机行业的健康可持续发展。

【参考文献】

[1]沈栓喜.浅谈基于构件的软件开发方法和技术[J].计算机光盘软件与应用,2014,15

[2]砂砾.浅析软件工程在企业系统中应用[J].中小企业管理与科技,2013,5

[3]黄梅荪,程慧霞,吴必文.基于UML统一软件开发过程的研究和实践[J].安徽大学学报(自然科学版),2003,3

作者:赵俊彬 单位:河南广播电视大学

上一篇:计算机软件工程管理浅析 下一篇:软件工程案例教学不足与对策