首页 > 范文大全 > 正文

浅议计算机软件的复用

开篇:润墨网以专业的文秘视角,为您筛选了一篇浅议计算机软件的复用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:近年来,随着信息技术和网络技术的发展,对于计算机软件的研究也在不断地发展,它的发展使得与它相关的一系列技术和方法也得到了长足的发展。当然这种计算机软件研究领域上的发展,也就使得计算机的应用领域不断地扩大,使得它的应用范围也不断地普及,在人们对软件系统的需求急剧上升的前提之下,软件的进一步开发就显得尤其重要,但随之产生的问题也暴露出来了,那就是高昂的开发费用和低效率、低质量的问题,为了消除这种“软件危机”,人们就研制了一种软件复用技术,这一技术的产生为解决这种危机提供了可能。为了更好地解决软件危机,对软件复用技术和软件复用模型进行了探讨和研究。

关键词:软件复用;范式抽象;智能学习;范式库

一、软件复用

软件复用是为了缩减软件开发和维护的花费,将已有软件的各种有关知识用于建立新的软件技术。它是提高软件的生产力和质量的一项重要技术。早在1968年NATO软件工程会议上就第一次引入软件复用的概念,随后我们又对软件复用技术进行了无数次的研究和实践,可是因为技术的不健全以及其他的各种因素,软件复用技术对软件产业的影响并没有达到预期的效果。近年来随着面向对象方法和技术的出现和不断成熟,软件复用也就有了更有力的技术支持,使得它能够更好地解决软件危机,从而提高软件的生产效率和质量,同时还避免软件开发中的重复劳动,有利于降低软件的开发费用。软件复用技术主要从产品复用和过程复用两个方面来考虑。复用已有的软件产品就是我们所说的产品复用。目前基于构件的、面向服务的软件开发模式就是以这种软件复用为基础建立起来的。这两种开发模式正是通过对现有的构件和服务进行合成或集成才生成了所需要的软件。目前软件复用技术研究的焦点就是产品的复用,而构件技术和软件架构技术是它所涉及的关键技术,只有在成熟的构件和架构的技术上,才可能达到产品复用的良好效果。

二、面向对象系统分析(OOA)阶段软件复用模型

(一)OOA阶段可重用性的本质

OOA阶段可重用性的深度是不同的,编程阶段不同类型的编程软件有高深度、中深度、低深度三种不同深度的可重用性。我们直接使用重用产品的重用而不进行任何改变的这种重用性就是高深度重用,这是复用性最好的一种复用软件,现在在市场上面向服务的软件开发技术中对服务的重用也是一种高深度的复用技术。还有一种复用可重用性较好的重用,那就是中深度的重用,它就是指程序员在自己平时的工作经验的指导下开发出比较通用的组件,当要真正具体使用时,只要对这些组件稍作修改就可以使用的一种重用。最后一种重用就是低深度的可重用性,这种可重用性仅仅局限于特定的项目,它的可用性是最差的。通过上面三种重用性的比较,我们知道可重用性与业务逻辑的相关性是相反的,也就是说重用性好的一般是与业务逻辑无关。

(二)OOA阶段软件复用模型研究

OOA阶段的软件复用,是以许多的优秀系统分析员在不断实践中积累的经验为基础的,它可以被称之为思想上的复用。通用性和重用性是这个阶段中软件复用的一个重要特征,因此为了使软件复用的效果更为明显,我们就要抓住这个特征来构造这个阶段的软件复用模型。

(三)范式抽象

范式抽象就是对抽象的解决方案模板的一种设计方法。为了使范式的设计达到更好的重用性,我们就要具体问题具体分析,从而也就产生了针对不同问题的多种范式抽象方法,主要的方法有下面三种。

1.关系抽象

在OOA阶段,由于具体项目的类型是多样的,因此我们也就要研究出多种关系模型,我们现在就用学校排课表系统和网上购物系统来对关系抽象进行说明。在学校排课表系统中,首先需要定义的就是教师类,它包括了教师的基本信息,如姓名,同时只有再定义一个与此对应的教师课表类用于显示教师课程的安排情况,教师才会很快地得出自己的上课表。同样,在网上购物系统中,我们也需要定义一个购物者类和购物车类,这样才能使得购物者与所购买的物品相对应起来。通过对这两个系统的分析,我们知道所谓的关系抽样就是一个实体对另一个实体的拥有关系,只要我们把这种关系以范式的形式保存起来,我们就可以在不同的项目中重用这种范式,并且我们还可以在此基础上抽象出许多其他的关系范式,比如“实体―内容关系”“上级下级关系”等都是在此基础上抽象出来的。

2.相似对象抽象

相似对象抽象的产生是因为在不同项目的OOA阶段中,我们会分析出大量的相似对象或类,这些相似性大的对象具有相对的独立性,当我们把这些对象模型以范式的形式保存起来的时候就会使得分析结果的重用性大大提高。到此我们就知道了所谓的形似对象抽象就是指按照上述思想进行的范式抽象,它是以分析阶段的对象模型为依据的,并且这种对象模型具有独立的、高度的相似性,因此我们抽象出来的范式可以被称为对象范式,而它与具体的项目之间的那种相似就可以被称作表面相似性。当表面相似越相似时,范式的重用性也就会越大。

3.领域抽象

领域抽象就是指对于某一领域的抽象问题运用的一种解决方案。再进一步的解释就是说在同一个领域的项目开发过程中我们总是能够总结出更多的相似性,包括关系相似性和表面相似性,将它们结合起来,就可以产生与行业有关的构件。这种构件是建立在具体领域上的一种抽象,我们称之为领域抽象。在OOA阶段我们主要就是运用到了领域分析的方法,被称为领域工程更大的学科中的第一项技术活动就是我们所说的领域分析。

目前为了更好地发展计算机软件技术,我们就必须加大对软件复用技术的分析,并提出面向对象系统分析阶段软件复用的模型,提高项目完成的速度。

参考文献:

[1]黄靖,赵海光.软件复用,软件合成与软件集成.计算机应用研究,2004.

[2]王丽娟.软件复用技术及其在软件开发中的应用.中山大学学报论丛,2004(1).

[3]段小君,高金环.软件复用与面向对象技术.西安邮电学院学报,2004(02).

(作者单位 西安技师学院)