一种改进的软件构件查询过程

来源 :硅谷 | 被引量 : 0次 | 上传用户:wenjuanliu_b06213
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]软件重用一直被视为软件开发过程中解决开发问题的方法。软件构件库的产生为软件重用提供有力的支持。基于软件构件库,很多开发组织提出基于构件开发过程的软件工粗。但是在构件开发过程中很少有开发组织提出构件查询过程。对当前的适用于大型构件库的构件查询过程进行改进。这种改进后的构件查询过程能更好地用于小型构件库。
  [关键词]软件复用 基于构件的软件工程 软件过程改进 构件查询过程
  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810065-01
  
  软件重用一直被视为软件开发过程中解决开发问题的方法。重用可以提高软件开发的生产效率和质量,并且很多项目组宜称从中获益匪浅。研究者们提出了一些怎样查询合适的可重用构件的过程。Motisio提出一种改进的构件过程。Ivica Crnkovic提出了怎样提高构件开发可靠性的方法。Poulin提出了一种概括性的查询过程,包括几种通用的测试候选的可重用构件是否合适的标准。Boloix和Robillard提出了一种通用的测试软件产品、过程和对项目开发有影响的框架,Kontio提出了一种可重用OTS构件的查询过程OTSO,该过程分为选择、展示、评定、决策、实现和测试6个阶段。作者认为,Kontio提出的OTSO过程周期长,用于管理成本较高,不适合用在小型构件库(构件数量不超过300)中,因而在此基础上,作者提出了快速的软件构件查询过程(Reusable Component Selection Process,RCSP)。
  
  一、可重用构件查询过程(RCSP)
  
  可重用构件查询过程如下图所示,该过程分为3个子过程:查询、评估、分析。可重用构件查询过程中引用了Kontio提出的构件标准定义子过程,构件标准定义子过程将项目重用目标分解为标准。这些标准将按照可重用构件查询过程的子过程进行情况,提供给子过程使用。提供给查询子过程的标准是构件指导信息,即藉要什么样的构件。提供给评估子过程的信息是标准定义信息,这些信息比构件指导信息更细更完备。提供给分析子过程的信息是经过评估子过程完善的构件标准信息。下面将分别介绍可重用构件查询过程的3个子过程。
  


  (一)查询子过程
  目标:查找出满足评估标准的可重用构件,将查询结果展示出来,并送交评估子过程进行处理。
  输入:外部构件库和构件指导信息。外部构件库指项目开发使用的构件库和第三方构件库。构件指导信息指由定义评估标准子过程生成的构件信息,这些构件信息描述了需要什么样的构件。
  输出:构件列表,该列表包括:
  (1)构件的名称;(2)构件作者和来派;(3)构件制作时间;(4)构件入库时间;(5)构件版本号;(6)使用平台;(7)应用领域;(8)功能;(9)表示方法;(10)形态;(11)层次;(12)上下文环境;(13)尺寸;(14)制作工具。
  如果在查询过程中,无法找到所需构件,那么将导致需求变更。查询子过程会出现的一个问题是:何时查询应该结束和找到所有的构件?该问题的解决办法是,使用多个构件库,一次查询的时间不超过1天,浏览每次查询的结果。如果在多个搜索源下每次查询结果都一样,那么可以认定不需要额外的查询了。
  (二)评估子过程
  目标:通过评估标准评估查询得到的构件。
  输入:查询得到的构件和标准定义。定义评估标准子过程向评估子过程发出的标准是分级的重要度评估标准。该标准的具体含义是,按照查询子过程的查询标准反馈信息,对构件按重要程度分级。按重要程度分级的好处是尽可能地减少评估时间。
  输出:量好的评估结果,该结果将作为数据存储点,以文档的形式供分析子过程使用。
  (三)分析子过程
  目标:决定在项目中使用哪些构件。
  输入:评估得到的构件、其对应的评估数据和查询评估标准。
  输出:文档化的构件使用信息。这些构件使用信息将包含构件名称、构件来源、构件特征以及构件评估数据。这些信息将提交给项目经理决定使用那些构件。
  
  二、RCSP算法
  
  (一)RCSP算法设计
  RCSP算法包括了方法:define(),query(),evaluate(),analyze(),
  这些方法用于生成构件评定标准、查询构件、评估构件标准和分析构件数据。算法物人为:外部构件库、项目规约和项目约束。算法拍出为:构件查询报告、供项目开发人员浏览最终被选定的构件。
  int rcsp (mmpntDB,specific,rnnstrain)(
  mmpntStand=define (specific,constrain);
  while(!compntStand)(
  mmpnt~query (mmpntDB,compntStand);
  display (mmpnt,infor);
  compntStand=define (compntStand,compnt. infor),
  for( mmpntNo=),i!fit ( compnt. infor,compnt-
  Stand),mmpntNo++)(
  compntQuatt=evaluate (compnt,compnt5tand),
  StandDiscrip~define(mmpntStand,
  MmpntQuatt)
   )
  )
  compntReport=analyze (mmpntQuatt,standDiscrip),
  return mmpntReport i
  (二)RCSP算法分析与实现
  当查找到N个构件时,外层while循环所摇的时间复杂度为O(N),加上内层for循环需要的时间负责度,整个算法的时间复杂度为O(N2)e算法实现是基于SUN公司的NetBeans平台下GUI编程。RCSP方法在构件库内构件数量小于1000个的情况下,复杂度低于Kontio的OTSO,但比Ivica Crnkovic提出的方法要高,如下图所示。
  
  三、结束语
  
  通过与4位学者的研究成果相比较得知,可重用构件查询过程的评定标准适用于小型构件库(构件数不超过1000个)。所以接下来的工作是要提高构件查询的标准和过程的可复用性,使其更适合用于大型构件库。
  


  参考文献:
  [1]杨芙清、梅宏、李克勒,软件复用与软件构件技术,电子学报,1999,2(2).
  [2]李禹材、王玲,一种子领域通用构件的开发方法,计算机工程,2006,32(9).
  [3]黄凯,荃于Eclipse体系的构件开发管理平台的设计实现,科学技术与工程,2005,14(5).
其他文献
为贯彻落实《职业教育法》“实施职业教育应当根据实际需要,同国家制定的职业分类和职业等级标准相适应,实行学历证书、培训证书和职业资格证书制度”的精神,进一步深化职业
采用微波加热方法与常规加热方法对ZrO2增韧Al2O3(ZTA)、Y2O3稳定的四方相ZrO2(Y-TZP)进行连接试验.结果表明,利用微波加热可以顺利实现异种陶瓷之间的连接.与常规方法相比,
研究一种水玻璃砂铸件落砂方法。采用树脂砂作铸型的面砂,水玻璃砂作背砂,填砂后一起紧实,一起吹CO2硬化。由于CO2硬化树脂砂溃散性好,浇注铸钢件不粘砂,浇注后的铸件就像穿了一层松散的
[摘要]就网络管理中几种常见的策略分发技术进行较为详细的分析,并对各策略分发功能进行阐述。  [关键词]网络管理 策略分发 协议  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0810046-01    基于策略的网络管理中,策略需要分发到被管理的设备中去执行。现在有很多协议可以实现这一功能,如:传统的网络管理中用简单网络管理协议SNMP来实现,这也是目前网络管理系统中
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
建立锤击作用的有限元数学模型,利用该模型对白口铸铁焊补时锤击消除焊接残余应力进行实例分析。结果表明,在合适的焊接规范和工艺下,锤击不仅能有效地消除白口铸铁焊缝部位的应
本文对武汉地区健康老年人(60岁以上)81人和老年前期(45~59岁)75人进行了动脉血气检测,以探讨健康老年人血气及酸碱之正常参考值。其结果:pH 7.44±0.03,PaCO_2 4.77±0.65kPa
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
[摘要]建立和健全医院信息系统(HIS)对于加强医院管理,践行“以病人为中心”和“三位一体”的服务经营理念,克服患者就诊“三长一短”(挂号时间长、候诊时间长、取药时间长、看病时间短)现象,完善医院成本核算体系,保证医疗费用收支合理、准确,提高医院综合竞争力有极大的促进作用。以阳煤集团医院信息系统为例,着重阐述计算机在医院信息系统中的应用和推广。  [关键词]医信院息系统 医院管理 关系数据库管理系
将凝固模拟迭代计算的数值结果以可视化的方式表现出来,让画面真实直观,让显示透彻动感,这是直接关系到凝固模拟技术实用效果的至关重要的环节。介绍凝固模拟图形图像表实表意方式设计和动态演示中的一些思路和技术要点。