基于可复用构件的软件开发分析

来源 :大科技·C版 | 被引量 : 0次 | 上传用户:resway
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:对于可复用软件得以正常运行的前提就是可复用软件的构件,而软件复用就是在开发新系统的过程中,对已存在的软件进行再次利用,这一软件可能是已经存在的,也可以是专门为可复用构件进行设计的。而基于可复用构件的软件开发就是将已开发的软件或是可复用的構件进行充分的利用,结合需求进行组装,使其形成软件系统的开发方式。这一技术是软件工业化生产的前提,能够将软件危机进行有效的化解。本文以软件复用、软件构件为切入点,对基于可复用构件的软件开发过程进行有效的分析,期望能够使软件工程进程得以加快。
  关键词:软件复用;构件;软件开发
  中图分类号:TP311.5 文献标识码:A 文章编号:1004-7344(2018)17-0312-02
  基于可复用构件的软件开发,它能够将软件开发过程中的一些重复性工作进行有效的解决,它是软件复用理念在实际工作中的运用,它是是以应用系统的开发不再“从头开始”的理念为切入点的,它的基础就是当前已完成的工作,将过去的应用系统开发过程中积累下来的资源进行有效的利用,将软件体系结构作为组装目标,将可复用构件当成是组装部件,对组装式开发提供支撑。这一技术能够将已有的开发成果进行充分利用,将开发的关键围绕特有的构成部分,一方面可以使最小编码得以实现,另一方面还可以将测试、维护的工作量大大减少,将重复工作得以消除,使软件生产效率得以大大提升,使软件产品交付时间大大缩短。
  1 软件复用的内涵
  人类在解决问题的过程中最常用的一个方式就是可复用。在对传统产业进行分析时,其最基础的方式之一,就是标准件的生产与标准构件的生产有机结合起来,其中最关键的部分就是构件,而其最有效的手段就是复用。可以看出,这是工业化发展的必由之路,而对于软件产业来说,要也对规模经济进行发展,那么生产标准构件以及复用就是重中之重,这也是软件复用被关注的原因所在。所谓软件复用,简单地说就是重复利用,就是为了复用这一目标而软件设计的过程。所谓可复用软件,就是为了复用这一目标而对软件进行设计。软件复用的重点是复用这一目标。为了复用而实施设计,为了复用而进行开发,同时还要对这些复用产品进行有效的组织。实现软件复用的技术主要有四种:①生成技术,它只能应用在特定的领域;②继承技术,它是以白箱模型为基础的;③设计模式,这是一种抽象的高层次设计;④组装技术,这是当前软件生产中最有效的技术之一[1]。
  2 软件构件的内涵
  这一概念是由软件复用产生出来的,所谓构件就是在应用系统中能够被识别的内容。所用可复用构件就是功能独立、具有可复用价值的构件。构件就是可以复用的二进制代码,它的形式有很多,比如功能模块、软件框架等等。它的特点主要有六个方面:①粒度大小非常自如;②二进制标准是统一的,构件之间的语言独立;③必须利用接口来对构件进行访问;④多侧面性;⑤继承性;⑥位置透明性。构件还有四种属性:①有用性;②可用性;③质量高;④适应性;⑤可移植[2]。
  构件模型将其本质属性以及接口结构等进行明确,构件模型将创建构件的原则进行提供,同时为开发者提供体系结构以及API集,那么其可以利用软件构件的组合来将应用系统进行构建。构件模型有两部分组成:①构件;②容器。其中前者就是基本软件部件,具有可复用性,后者就是用来对构件进行存放,使他们能够进行交互的。当前,理论界最知名的构件模型有两个:①3C模型;②REBOOT构件模型。当前构件模型有两部分组成:①构件接口;②构件内容。前者将外界信息向软件进行提供,比如服务、定制以及组装信息等,后者主要在复用软件实体上直接应用,其形态多样,比如源代码、二进制码以及脚本等等。
  而软件构架,也就是软件体系结构,它包括的内容很多,比如控制结构、数据访问协议以及设计元素功能分配等等,它使得基于可复用构件的软件开发有着一定的组装基础。通常来说,典型的软件构架能够将构件、连接子以及约束联系在一起。软件构架包括的内容三个方面:①原理;②描述;③集成机制。值得注意的是,在基于可复用构件的软件开发过程中,为复用而开发的软件构架看成是大粒度、抽象的、高层次的软件构件。
  3 基于可复用构件的软件开发分析
  基于可复用构件的软件开发是一种新兴的软件开发模型,它将复用、构件技术以及分布式对象技术等有机联系在一起,将软件构架看成是组装目标,将可复用软件构件当成是组装预制块,对组装式软件复用提供支撑。
  3.1 基于可复用构件的软件开发思路
  它是对传统工业生产模式进行有效的借鉴,一是对用户需求进行分析,将总体结构架构进行设计,结合需求在构件库将能够完成这一需求的构件进行选取,再将应用系统进行组装,倘若能够满足需求的构件不存在,那么就得去定制或是自主开发,其具体的思路见图1。
  3.2 可复用构件的开发
  可复用构件的开发,一方面能与特定产品的开发并行,另一方面也能与特定产品开发相独立,倘若开发时以并行的形式,能够使用和传统软件开发一样的生命周期模型,然而在开发时还要将其打包成可复用的构件方式,倘若开发时以独立的形式进行,这一方式一般叫作领域分析,它的目的就是为特定领域进行的开始和分析,对其公共属性进行确定,实施抽象编码。对于可复用构件开发的程序有三个步骤:
  (1)需求分析。作为开发人员,对最先要解决的就是新的可复用构件的定件,要对其应用领域进行确定,再结合领域知识来模型对其进行定义。同时,想要使构件能够组装,其标准必须一致。此外,构件之间的通讯以及共享的实现。最后是数据的继承。
  (2)构件设计,这一过程中要对分析过程中的需求进行支持,通过合理的设计方法使软件系统各构件的可复用性得到提升,因为构件之间是独立的,可互换的,也就是不以一个系统为依托,那么就要对构件进行封装。而且设计构件的接口也是十分关键的。
  (3)构件测试,要对构件的可复用性进行检验,使构件的质量得以保证,从而使整个系统的复用需求得以满足[3]。
  3.3 组装应用系统
  (1)构件获取、选择。其获取方式有很多:①商业采购;②合作开发;③从已有的应用系统中进行提炼;④自主开发。不管采用哪一言式,要都要对其进行严格的测试,在构件库中进行统一管理。
  (2)组装。就是将构件利用接口将他们连接在一起的过程。构件组装可以看成是软件构架具体化的过程中,构件组装技术的基础有三个:①构件模型;②构架描述;③开放系统技术,其组装要以后两种系统为基础,构件实例要将系统中的其它部分的要求进行符合。
  (3)系统测试。通过构件来建立应用系统,那么测试是不可缺少的一个重要内容,不然其后果是难以想象的。测试通常有三种:①单元测试,就是对单个构件进行测试;②集成测试,就是将构件形成一个子系统,对这一子系统进行测试;③系统测试,就是将子系统来形成整个系统。
  (4)系统维护。基于可复用构件的软件系统因为其具有一定的特殊性,所以软件维护问题也是非常重要的。这里值得一提的是,由于不同的应用其在需求上都是不一样的,那么修改后的构件一定要能够使所有的应用都适用。
  4 结 语
  软件复用理念的最有效体现就是基于可复用构件的软件开发,它使得复用范围得以扩大,使软件开发向社会化方向发展,它能使软件开发周期有效的缩减,使软件开发质量得到提升,而且其开发费用也会减少,维护工作也要简单一些。因此,基于可复用构件的软件开发必然是软件工程发展的重要节点,对其进行研究和分析是十分必要的。
  参考文献
  [1]程林钢.软构件可复用性的计算模型研究[J].现代计算机,2013(32).
  [2]王燕玲,曾国荪.基于构件使用依赖关系的构件复用可信度设计方法[J].计算机应用,2015(12).
  [3]刘舒宁.支持复用的软构件管理技术与系统研究[D].杭州:浙江大学,2015.
  收稿日期:2018-5-15
  作者简介:尚智良(1987-),男,本科,主要从事IT软件开发工作。
其他文献
电涡流位移检测是涡流无损检测的重要应用之一,因其无接触、高灵敏度、低损耗等优点,近年来发展迅速,广泛应用于工程领域中。但根据涡流检测的原理,不同电导率和磁导率的被测
开关磁阻电机(Switched Reluctance Motor,简称SRM)是20世纪80年代迅猛发展起来的一种新型电机。它因结构简单坚固,调速范围宽,性能优异,可靠性高,被广泛应用于工业、航天等领域。因
期刊
新课程改革背景下,教师的角色定位已由原来的课堂主导者转变成了学生学习的组织者、引导者与合作者.数学教学应从学生的实际出发,创设有助于学生自主学习的问题情境,引导学生
噻呋啉(sapphyrins)是一类由五个吡咯通过一个单键和四个亚甲基共轭相连形成的拓展卟啉类大环化合物,它们在功能材料,阴离子接收器、光动力疗法的光敏剂、磁共振成像对比剂等许
随着科技的发展与社会的进步,推动了建筑工程企业的发展步伐.由于建筑工程项目的规模相对比较大,涉及的环节相对比较多,在具体的施工过程中难免会出现质量性问题,因此,作为建
输尿管镜碎石术具有创伤小、可重复性操作、结石清除率高、并发症可控等诸多优点,是上尿路结石治疗的重要手段之一[1-4].输尿管镜碎石技术得以发展主要受益于输尿管镜及腔内
转子—轴承系统是各种旋转机械的核心部件,广泛应用于机械、动力、航空航天等工程技术领域。当前,随着科学技术的不断进步,转子—轴承系统的设计正日益朝着高转速及柔性等方向发展。使用中也出现了许多用传统的线性理论无法解释的现象(如混沌现象,概周期运动等),并导致了许多严重的事故。本课题来源于国家自然科学基金重点项目:超超临界汽轮发电机组转子系统的若干非线性动力学问题。在此背景下,以转子—轴承系统为研究对象
《义务教育小学数学课程标准(2011年版)》指出:“课程内容要反映社会的需要、数学的特点,要符合学生的认知规律.它不仅包括数学的结果,也包括数学结果的形成过程和蕴涵的数学
期刊
智能血液采集系统是血站(及相关单位)在献血过程中具备精确测量、匀浆、自动完成、异常提示、自动存储数据等采血功能的智能电子设备,是建设规范化、数字化血站的重要设备之一。