首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 83 毫秒
1.
董传良  陆嘉恒  杨虹  董玮文 《软件学报》2001,12(11):1716-1726
面向对象数据库的许多应用环境需要频繁的模式演以化,但模式演化以后,基于先前模式的应用程序因此而不得不修改或重编,这就造成了巨大的软件浪费.提出了基于路径无关语言的等价模式演化方案来解决这个问题.首先,路径无关语言是一种面向对象数据库的编程语言,它能使程序脱离对细节数据模式的导航,对模式演化具有较强的适应性.而等价模式演化是一种新的模式演化方案,它能保证用路径无关语言编写的应用程序在模式演化以后无须修改而完全重用.此外,在实现等价模式演化的系统中,为了减少演化开销以及不增加用户的额外编程负担,提出了虚拟关系机制和对象演化技术.  相似文献   

2.
为了研究时态序列模式演化特征,在给出模式演化片段、模式演化片段集合和频繁模式演化片段定义之后,基于Takens定理,论证了重构空间内模式演化与原空间模式演化之间的等价性关系;给出了重构后的频繁模式演化范型挖掘方法和频繁模式演化范型生成规则的方法;针对周期、混沌和利率三种不同类型的序列数据进行方法的有效性研究。  相似文献   

3.
模式演化是OO系统中一个很关键的问题,由于00DB的应用具有动态特征,因而模式要经常改动,但是,更改要保持模式和数据库的一致性,模式更改有两个重要的问题:在类型定义改变时,对象的结构一致性和行为一致性,本文主要讨论这两个方面的问题。  相似文献   

4.
针对当前克隆谱系的构建方法较为复杂、演化模式亟需扩充等问题,提出了新的克隆代码演化模式,并根据软件版本间的克隆代码映射关系自动构建了克隆谱系。首先,针对软件每一版本进行克隆检测并利用潜在狄利克雷分配(LDA)抽取克隆代码的主题信息;然后,根据克隆代码主题的相似度确定版本间克隆代码的映射关系;进而,根据已有的映射关系为克隆代码添加演化模式并分析演化特征;最终,结合映射信息与演化模式信息完成克隆谱系的构建。针对4款开源软件进行了克隆谱系的构建实验,实验结果表明所提克隆谱系构建方法可行,证实了新提出的演化模式在克隆代码演化过程中确实存在。实验发现约90%的克隆代码在软件演化过程中比较稳定,约67%的克隆群经历的发布版本数不超过发布版本总数的一半。实验结论及理论分析将为克隆代码的后续研究及克隆代码的维护与管理提供有力支持。  相似文献   

5.
由于使用环境和新技术的不断变化,软件演化的控制变得日趋复杂.为了提高软件演化活动的可视化和形式化支持程度,结合谓词逻辑和软件演化,提出了一种软件演化操作语言SEOL(Software Evolution Operational Language)描述软件演化,给出了SEOL的语法和结构化操作语义描述,并指出了软件演化操作语义等价分析方法.结合软件代码演化和软件模型演化实例,说明了SEOL的应用.与已有的软件演化操作描述相比,SEOL在易用性、可重用性和形式化分析方面有明显的改善,为软件演化的管理、分析和实施奠定了基础.  相似文献   

6.
在物联网与大数据应用蓬勃发展的背景下,各类感知设备产生海量的时序数据,设备管理软件版本的快速迭代导致时序数据的模式演化问题日益凸显.模式演化要求对数据模式进行版本管理,使数据进行模式变更时不产生信息损失,且支持对数据跨模式版本进行读写操作.结合流行的时序数据库管理系统,调研总结了各类数据库管理系统对模式演化的支持情况,对时序数据及其模式进行了形式化表述,对其模式演化的过程进行了分析,设计了一种面向时序数据的模式演化跟踪及查询方法,形式化表达了模式跟踪及跨模式版本查询的整体框架与关键步骤,并在时序数据库Apache IoTDB上进行了实现与测试.最后,分析了实现系统的性能,并展望了未来研究方向.  相似文献   

7.
在验证网构软件模型代数性质等价的理论基础上,为了进一步优化代数性质的性能,针对SOA(Service-Oriented Architecture)架构下BPEL(Business Process Execution Language)程序结构的自动演化方法进行了研究。通过网构软件分析BPEL结构的等价演化代数性质,提出一种BPEL等价自动演化算法。结合编译技术对BPEL结构进行分析,验证该算法的可靠性。运用形式化描述语言LOTOS(Language of Temporal Ordering Specification),对演化前后的BPEL结构进行仿真验证与模型检测,验证该演化方法的可行性。  相似文献   

8.
针对当前克隆跟踪大多基于软件的发布版本,丢失了软件开发过程中克隆代码较多的变化信息,并且克隆演化模式定义不明确、不区分视角。提出一种基于修改日志克隆代码跟踪方法,并分三种视角(克隆群、克隆片段、克隆代码内容)识别演化模式。首先,将每次提交作为一个小版本,使用NiCad进行克隆检测;其次,基于Token编辑距离相似度克隆群初步映射;再次,基于修改日志克隆片段精准映射;然后,基于克隆片段映射结果修正克隆群映射;最后,分视角识别克隆演化模式。对6款开源软件总共近8?000个版本进行实验,结果表明超过97%的克隆稳定演化,而分离演化模式、合并演化模式、复杂演化模式均不超过0.01%,一致变化演化模式、不一致变化演化模式均不超过2%。在多款软件上与领域内较优秀的同类工具gCad进行对比实验,结果查全率(提高了2%)、查准率(提高了2%)明显高于gCad,而且同环境下速度比gCad快。  相似文献   

9.
针对当前克隆代码管理不科学,没有侧重点,提出基于演化模式克隆代码Bugs倾向性分析方法。首先使用自主研发工具CloneCodeTracker跟踪克隆演化,然后结合克隆代码Bugs修复数据分视角讨论不同演化模式下克隆代码Bugs倾向性。经过对12款软件近2万个版本实验,结果表明:克隆群视角下复杂演化模式Bugs倾向性最高,合并演化模式Bugs倾向性较高;克隆片段视角下去除演化模式Bug倾向性明显高于其他演化模式;克隆代码内容视角下一致变化演化模式与不一致变化模式Bugs倾向性差别不明显。这些结论可以为克隆重构、克隆管理提供建议,例如,选择复杂演化模式,合并演化模式,去除演化模式的克隆代码优先重构。  相似文献   

10.
SCOPE/CIMS系统中模式集成的形式化基础   总被引:3,自引:0,他引:3  
大多数据库系统中,模式集成是将若干个已经存在的模式集成为一个统一模式的过程,是实现异构信息集成的关键问题之一,为满足面向对象的多数据源集成系统SCOPE/CIMS中模式集成的需要,本文提出了一个支持模式集成的形式化基础,为实现一个半自动化的模式集成辅助工具奠定了基础,主要内容包括;(1)一个对应关系描述模型,以支持模式的分析与比较;(2)一套模式集成规则,以提供模式合并与重构的原则;(3)等价类的  相似文献   

11.
Many XML-relational systems, i.e., the systems that use an XML schema as an external schema and a relational schema as an internal schema of the data application representation level, require modifications of the data schemas in the course of time. Schema evolution is one of the ways to support schema modifications for the application at the DBMS level. A number of schema evolution support systems for different data models have been suggested. Schema evolution can be applied to mapping-related evolving schemas (such as schemas of XML-relational systems), the transformation problem for which is also known as schema adaptation. In this paper, a survey of various approaches to solving the outlined problems is given.  相似文献   

12.
When a database is shared by many users, updates to the database schema are almost always prohibited because there is a risk of making existing application programs obsolete when they run against the modified schema. The paper addresses the problem by integrating schema evolution with view facilities. When new requirements necessitate schema updates for a particular user, then the user specifies schema changes to his personal view, rather than to the shared base schema. Our view schema evolution approach then computes a new view schema that reflects the semantics of the desired schema change, and replaces the old view with the new one. We show that our system provides the means for schema change without affecting other views (and thus without affecting existing application programs). The persistent data is shared by different views of the schema, i.e., both old as well as newly developed applications can continue to interoperate. The paper describes a solution approach of realizing the evolution mechanism as a working system, which as its key feature requires the underlying object oriented view system to support capacity augmenting views. We present algorithms that implement the complete set of typical schema evolution operations as view definitions. Lastly, we describe the transparent schema evolution system (TSE) that we have built on top of GemStone, including our solution for supporting capacity augmenting view mechanisms  相似文献   

13.
Managing schema evolution is a problem every persistent system has to cope with to be useful in practice. Schema evolution consists basically of supporting class modification and dealing with data objects created and stored under the old class definitions. Several proposals have been made to handle this problem in systems that follow a full orthogonally persistent approach, but, until now, there has not been any proposal to support it in container‐based persistent systems. In this paper we describe a schema evolution management system designed for Barbados. Barbados is a complete programming environment which is based on an architecture of containers to provide persistent storage. Barbados does not provide full orthogonal persistence, but, as will be described in this paper, its architecture has several other advantages. Among them is the fact that this model is especially suitable for solving the schema evolution problem. Copyright © 2002 John Wiley & Sons, Ltd.  相似文献   

14.
《Computer》1996,29(10):119-121
Most applications must keep objects from one session to the next. This is known as persistence. But objects are not raw data: They are instances of classes. What happens if an object's class (its generator) changes from one session to the next? This problem is known as schema evolution (the term schema is borrowed from relational databases). This column defines a framework for addressing schema evolution in object technology  相似文献   

15.
16.
模式演化是OO系统中一个很关键的问题。由于OODB的应用具有动态特征,因而模式要经常改动。但是,更改要保持模式和数据库的一致性。模式更改有两个重要的问题:在类型定义改变时,对象的结构一致性和行为一致性。本文主要讨论这两方面的问题。  相似文献   

17.
We study the problem of schema revalidation where XML data known to conform to one schema must be validated with respect to another schema. Such revalidation algorithms have applications in schema evolution, query processing, XML-based programming languages, and other domains. We describe how knowledge of conformance to an XML Schema may be used to determine conformance to another XML Schema efficiently. We examine both the situation where an XML document is modified before it is revalidated and the situation where it is unmodified  相似文献   

18.
While recent data management technologies, such as object oriented techniques, address the problem of database schema evolution, standard information systems currently in use raise challenging evolution problems. This paper examines database evolution from the developer point of view. It shows how requirements changes are propagated to database schemas, to data and to programs through a general strategy. This strategy requires the documentation of database design. When absent, such documentation has to be rebuilt through reverse engineering techniques. Our approach, called DB-MAIN, relies on a generic database model and on transformational paradigm that states that database engineering processes can be modeled by schema transformations. Indeed, a transformation provides both structural and instance mappings that formally define how to modify database structures and contents. We describe both the complete and a simplified approaches, and compare their merits and drawbacks. We then analyze the problem of program modification and describe a CASE tool that can assist developers in their task of system evolution. We illustrate our approach with Biomaze, a biochemical knowledge-based the database of which is rapidly evolving.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号