首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 93 毫秒
1.
杨潇  万建成  侯金奎 《计算机工程》2007,33(23):45-47,5
通过对模型描述语言的语法结构和语义表达特性的抽象分析,提出了一种基于语义重构的模型映射方法。该方法通过归纳分析建立抽象目标语义模型,基于源模型语义域在目标语义域中的重新构造,以目标语义模型为中介建立源模型到目标模型的映射关系。该方法不仅可为模型转换的具体实现提供理论指导,还可为验证不同抽象层次模型之间映射关系的正确性提供依据。以JSF+EJB为目标平台阐述了该方法的应用。  相似文献   

2.
基于模型驱动架构的数据库重构   总被引:1,自引:0,他引:1       下载免费PDF全文
针对交叉使用数据库重构方法较为困难的问题,提出一种基于模型驱动架构(MDA)的通用数据库重构框架,其中包括数据库重构中的元模型定义和模型转换定义,并采用EMF和Operational QVT构建工具,该框架利用MDA的模型转换能力实现了数据库重构的自动化。  相似文献   

3.
为了使ETL系统能够高效的实现任意异构数据库之间的数据转换,需要通用的元模型支撑任意数据库之间数据转换元数据的定制。通过对数据转换中数据映射应用技术分析,重点对数据映射进行了抽象研究,定义数据映射的详细分类、基于数据映射关系的数据转换元数据描述形式,并构建支撑数据转换元数据定制的元模型,技术在中国石油数据中心大型数据迁移中应用,取得良好效果。  相似文献   

4.
模型转换中特性保持的描述与验证   总被引:2,自引:0,他引:2  
刘辉  麻志毅  邵维忠 《软件学报》2007,18(10):2369-2379
模型转换主要用于模型的演化、求精以及重构.模型转换需要遵循一定的约束规则以保持模型的某些特性.模型演化通常要求保持已有的接口;模型重构则必须保证重构前后的软件具有相同的外部行为特性.为了严格证明某个模型转换规则是否满足这些约束,特性保持约束必须形式化地加以描述.为了实现证明过程的自动化,需要总结通用的证明过程并给出实现算法.提出了一种基于图转换的特性保持约束描述机制,将模型演化与重构中的转换规则以及特性保持约束都描述为图转换规则.借助图转换的冲突检测机制,给出了严格证明转换规则是否满足特性保持约束的算法.  相似文献   

5.
胡毅  于东  尹震宇  刘明烈 《计算机工程》2008,34(23):280-282
在制定开放式数控系统总线接口与通信规范标准的基础上,针对数控系统的特点,提出一种基于抽象数据链路层和实际数据链路层的双子层数据链路层结构模型,讨论抽象数据链路层的服务和协议规范以及与实际数据链路层间的封装与映射机制,并实现应用层和实际数据链路层间的服务与协议转换。  相似文献   

6.
可重构硬件和指令集处理器构成的混成系统兼有运算速度高和编程灵活的优点,是近年来学术界研究的热点.已有的面向该类系统的操作系统由于受到传统抽象模型的制约,不能充分发挥可重构硬件的优势.文中在分析该类系统对操作系统的需求和已有运行模型缺陷的基础上,提出了一种基于服务体/执行流模型的操作系统SEF-OSHRS.它具有统一的系统对象抽象和通信接口,并可支持控制流的直接转换,因而能充分发挥混成系统的优势.文中详细介绍了该操作系统的基本抽象、系统结构和运行方式,并通过实验结果说明了该系统的可用性和高效性.  相似文献   

7.
针对可重构系统中的数据流驱动应用,提出支持动态可重构的软/硬件统一多线程编程模型SHUMDR及其层次化实现.通过硬件线程接口设计、操作系统内核扩展,便于设计人员以统一的线程视图描述应用的软硬件划分.以数据加密/解密为例进行测试的结果表明,统一线程抽象带来的时间开销和空间资源占用率较小,该模型在探索编程灵活性的同时,能够有效地兼顾硬件的效率.  相似文献   

8.
各种网络化实体或智能实体的嵌入将物理世界转变为智能世界,增加了基于物理世界统一抽象模型的推理复杂性.基于Saitta和Zucker定义的知识重构与抽象模型,提出一种新的表示智能世界的方法.通过感知重构过程,根据构成实体之间的通信关系自动构建3个可区分的、相互关联的子模型,即物理世界、网络化世界和虚拟世界,3个子模型之间的关系构成了智能世界的一个集成化模型.着重介绍了感知重构过程的形式化表示和推理机制.实际搭建的智能世界设计诊断推理实验表明,与基于知识重构和抽象一般物理世界模型相比,基于提出的智能世界模型的推理过程可以将系统故障限制在一个子模型中,从而较大程度地缩小了诊断的搜索空间.  相似文献   

9.
在模型检验中,抽象是解决状态空间爆炸问题的重要方法.通常的抽象是非强保留的,即可能存在时序性质在抽象模型不满足而在具体模型满足的情况.文中首先系统地构造μ-演算Lμ语义模型的安全抽象,在此基础上,转换为通用Kripke结构下的安全抽象.然后基于抽象解释框架及完备抽象解释和性质强保留之间的关系,构造使得Lμ性质强保留的最小抽象模型精化,并转换为抽象解释中抽象域的最小完备精化.依据此完备抽象域求得性质强保留的最优抽象状态划分,从而构造出性质强保留且最优的抽象状态转换系统.  相似文献   

10.
利用FME实现GIS与CAD的语义转换   总被引:11,自引:0,他引:11  
论文分析了GIS和CAD的数据结构,介绍了如何利用FME实现GIS数据与CAD的语义转换及其优势所在,采用这种方法进行数据转换,可以在数据转换过程中重构数据实体,在一定程度上解决了以往数据转换中存在的问题。  相似文献   

11.
多约束排序问题是生产调度中常遇到的问题,传统的优化模型及方法在适应约束改变等方面存在诸多不足。鉴于此,将多约束排序问题定义为约束满足问题,系统设计时将模型定义与求解算法分离,利用约束规划平台的基本约束构建特定领域的抽象约束库,形成可重构的多约束排序问题通用求解框架。应用时,根据问题需求不同可利用抽象约束库快速重构优化模型,针对重构的优化模型配置相应的求解算法即可实现问题求解。应用结果表明,提出的方法通用性强,可满足实际应用的要求。  相似文献   

12.
为了实现代码缺陷与代码味道的自动探测与优化, 提升优化与重构的效率, 设计并开发了一套名为SCORT的源代码优化与重构工具。SCORT将源代码解析为抽象语法树, 再探测其中存在的代码缺陷和代码味道, 最后对缺陷和味道进行自动优化和重构。在SCORT中已经实现了对15种常见代码缺陷和六种常见代码味道的检测以及自动优化与重构, 提供了多种代码味道的自动重构算法, 且具有良好的可扩展性。通过对三个待测项目的探测和优化实验结果表明, 对于常见代码缺陷的探测和优化, SCORT的精确率、召回率和准确率均可达100%; 对于部分常见的代码味道, SCORT尚需进一步完善。SCORT有助于开发人员提高代码质量, 减少源代码中存在的缺陷和味道。  相似文献   

13.
从单体系统迁移到微服务系统是当前业界对遗留系统实施再工程化的主流选项之一,基于单体遗留系统的微服务体系架构重构则是实现该迁移的关键步骤.目前学界多集中在微服务识别方法的研究上;业界虽有许多面向微服务架构的遗留系统重构的实践,但缺乏系统性的方法及高效鲁棒的工具.鉴于此,在微服务识别与模型驱动开发方法前期研究的基础上,研发一种模型驱动的、可用于单体遗留系统微服务化重构的集成设计平台MSA-Lab.它通过分析单体遗留系统运行日志中的方法调用序列,对其中的类和数据表进行类型识别和聚类以构造抽象微服务,同时生成包括微服务图和微服务序列图在内的系统架构设计模型.它包括用于微服务自动识别与设计模型自动生成的核心部件MSA-Generator,以及用于微服务静态结构模型与动态行为模型可视化展现、交互式建模、模型语法约束检验的核心部件MSA-Modeller.在MSA-Lab平台上,通过对4个开源项目实施有效性、鲁棒性、功能转换完备性等实验以及对3个同类型工具实施性能对比实验,结果表明:所提平台拥有很好的有效性、鲁棒性及实现面向日志的功能转换完备性,且性能更加优越.  相似文献   

14.
随着CPU多核架构的普及,应用的复杂和数据集的膨胀,基于Matlab的遗留系统中的串行程序代码无法充分发挥系统潜在的性能优势,无力应对当前大型数据集的处理应用需求。Matlab的并行计算模型为数据密集型的处理任务提供了并行支持。本文首先从系统架构扩展和业务代码并行化入手,分析遗留系统并行化重构过程要点和方法,应用案例的并行化重构实验数据表明了系统重构处理大型数据集的性能提升。  相似文献   

15.
ContextIdentifying refactoring opportunities in object-oriented code is an important stage that precedes the actual refactoring process. Several techniques have been proposed in the literature to identify opportunities for various refactoring activities.ObjectiveThis paper provides a systematic literature review of existing studies identifying opportunities for code refactoring activities.MethodWe performed an automatic search of the relevant digital libraries for potentially relevant studies published through the end of 2013, performed pilot and author-based searches, and selected 47 primary studies (PSs) based on inclusion and exclusion criteria. The PSs were analyzed based on a number of criteria, including the refactoring activities, the approaches to refactoring opportunity identification, the empirical evaluation approaches, and the data sets used.ResultsThe results indicate that research in the area of identifying refactoring opportunities is highly active. Most of the studies have been performed by academic researchers using nonindustrial data sets. Extract Class and Move Method were found to be the most frequently considered refactoring activities. The results show that researchers use six primary existing approaches to identify refactoring opportunities and six approaches to empirically evaluate the identification techniques. Most of the systems used in the evaluation process were open-source, which helps to make the studies repeatable. However, a relatively high percentage of the data sets used in the empirical evaluations were small, which limits the generality of the results.ConclusionsIt would be beneficial to perform further studies that consider more refactoring activities, involve researchers from industry, and use large-scale and industrial-based systems.  相似文献   

16.
张轼坤  冉崇善 《计算机工程》2010,36(10):256-258
针对反模式“细粒度远程调用”提出一种反模式检测模型,根据该检测模型提出基于反模式的J2EE中间件优化模型。在不中断应用系统的前提下,该优化模型能在中间件的辅助下支持在线重构,克服了离线重构模型修改客户端和不能自动重构的缺点。在企业资产管理系统中运用该模型,结果证明其在使系统其他属性不变的情况下,实现了自动在线重构,减少了开发人员的工作量。  相似文献   

17.
Trace-based derivation of a scalable lock-free stack algorithm   总被引:1,自引:1,他引:0  
We show how a sophisticated, lock-free concurrent stack implementation can be derived from an abstract specification in a series of verifiable steps. The algorithm is based on the scalable stack algorithm of Hendler et al. (Proceedings of the sixteenth annual ACM symposium on parallel algorithms, 27–30 June 2004, Barcelona, Spain, pp 206–215), which allows push and pop operations to be paired off and eliminated without affecting the central stack, thus reducing contention on the stack, and allowing multiple pairs of push and pop operations to be performed in parallel. Our algorithm uses a simpler data structure than Hendler, Shavit and Yerushalmi’s, and avoids an ABA problem. We first derive a simple lock-free stack algorithm using a linked-list implementation, and discuss issues related to memory management and the ABA problem. We then add an abstract model of the elimination process, from which we derive our elimination algorithm. This allows the basic algorithmic ideas to be separated from implementation details, and provides a basis for explaining and comparing different variants of the algorithm. We show that the elimination stack algorithm is linearisable by showing that any execution of the implementation can be transformed into an equivalent execution of an abstract model of a linearisable stack. Each step in the derivation is either a data refinement which preserves the level of atomicity, an operational refinement which may alter the level of atomicity, or a refactoring step which alters the structure of the system resulting from the preceding derivation. We verify our refinements using an extension of Lipton’s reduction method, allowing concurrent and non-concurrent aspects to be considered separately.  相似文献   

18.
Refactoring a software artifact is an embedded task in the maintenance phase of the software life cycle. To reduce the time and effort required for this task, researchers proposed methods to automate the software refactoring process at the design and code levels. In this paper, we conducted a systematic literature review of papers that suggest, propose, or implement an automated refactoring process. Using different phases, setting several quality measures, and snowballing, only 41 papers passed to the last stage to be analyzed and reviewed. We observe an increase in the number of papers that propose automatic refactoring. The results show that while most of the papers discuss code refactoring, only a few recent papers are focused on model refactoring. Search-based refactoring is gaining more popularity, and several researchers have used it to perform refactoring in a quick and efficient manner.  相似文献   

19.
用例模型重构是一种保持模型中系统与外部实体的交互不变而重新组织模型的活动。采用用例模型重构工具,可以快速建立高质量的用例模型。针对重构工具的开发,提出了用于存储用例模型的DTD结构,描述了实现该工具的软件结构。  相似文献   

20.
Context: Feature model is an appropriate and indispensable tool for modeling similarities and differences among products of the Software Product Line (SPL). It not only exposes the validity of the products’ configurations in an SPL but also changes in the course of time to support new requirements of the SPL. Modifications made on the feature model in the course of time raise a number of issues. Useless enlargements of the feature model, the existence of dead features, and violated constraints in the feature model are some of the key problems that make its maintenance difficult.Objective: The initial approach to dealing with the above-mentioned problems and improving maintainability of the feature model is refactoring. Refactoring modifies software artifacts in a way that their externally visible behavior does not change.Method: We introduce a method for defining refactoring rules and executing them on the feature model. We use the ATL model transformation language to define the refactoring rules. Moreover, we provide an Alloy model to check the feature model and the safety of the refactorings that are performed on it.Results: In this research, we propose a safe framework for refactoring a feature model. This framework enables users to perform automatic and semi-automatic refactoring on the feature model.Conclusions: Automated tool support for refactoring is a key issue for adopting approaches such as utilizing feature models and integrating them into the software development process of companies. In this work, we define some of the important refactoring rules on the feature model and provide tools that enable users to add new rules using the ATL M2M language. Our framework assesses the correctness of the refactorings using the Alloy language.  相似文献   

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

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