3,935 research outputs found

    Reverse engineering of model transformations for reusability

    Full text link
    The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-319-08789-4_14Proceedings of 7th International Conference, ICMT 2014, Held as Part of STAF 2014, York, UK, July 21-22, 2014Reuse techniques are key for the industrial adoption of Model-Driven Engineering (MDE). However, while reusability has been successfully applied to programming languages, its use is scarce in MDE and, in particular, in model transformations. In previous works, we developed an approach that enables the reuse of model transformations for different meta-models. This is achieved by defining reusable components that encapsulate a generic transformation template and expose an interface called concept declaring the structural requirements that any meta-model using the component should fulfil. Binding the concept to one of such meta-models induces an adaptation of the template, which becomes applicable to the meta-model. To facilitate reuse, concepts need to be concise, reflecting only the minimal set of requirements demanded by the transformation. In this paper, we automate the reverse engineering of existing transformations into reusable transformation components. To make a transformation reusable, we use the information obtained from its static analysis to derive a concept that is minimal with respect to the transformation and maximizes its reuse opportunities, and then evolve the transformation accordingly. The paper describes a prototype implementation and an evaluation using transformations from the ATL zoo.This work has been funded by the Spanish Ministry of Economy and Competitivity with project “Go Lite” (TIN2011-24139

    A Model-Driven Architecture Approach to the Efficient Identification of Services on Service-oriented Enterprise Architecture

    No full text
    Service-Oriented Enterprise Architecture requires the efficient development of loosely-coupled and interoperable sets of services. Existing design approaches do not always take full advantage of the value and importance of the engineering invested in existing legacy systems. This paper proposes an approach to define the key services from such legacy systems effectively. The approach focuses on identifying these services based on a Model-Driven Architecture approach supported by guidelines over a wide range of possible service types

    Identifying cognitive aspects to improve business process reengineering

    Get PDF
    Knowledge-intensive processes are widely used to recover from errors, handle exceptional cases and complaints, and to improve or adapt a process itself. In this context, evolved Business-Process Reengineering (BPR) techniques are changing to give some answers to this reality. In this paper, we identify some cognitive aspects used by traditional and recent reengineering models. We provide a framework highlighting how cognitive aspects might improve reengineering through knowledge and perception modelling.Eje: I - Workshop de IngenierĂ­a de Software y Base de DatosRed de Universidades con Carreras en InformĂĄtica (RedUNCI

    Extension of Petri Nets by Aspects to Apply the Model Driven Architecture Approach

    Get PDF
    Within MDA models are usually created in the UML. However, one may prefer to\ud use different notations such as Petri-nets, for example, for modelling concurrency\ud and synchronization properties of systems. This paper claims that techniques that\ud are adopted within the context of MDA can also be beneficial in modelling systems\ud by using notations other than the UML. Petri-Nets are widely used for modelling\ud of business and application logic of information systems with web services. For\ud certain kinds of applications, therefore, Petri Nets can be more suitable for building\ud Computation Independent, Platform Independent and Platform Specific Models\ud (CIM, PIM and PSM). Unfortunately, the well-known problems with separation of\ud concerns in Petri Nets and keeping track of changes may hinder achieving the aim of\ud MDA: building reusable, portable and interoperable models. In this paper we define\ud Aspect Petri Nets as a structure of several Petri Nets and quantification rules for\ud weaving of those Petri Nets. Aspect Petri Nets are suitable for application of MDA;\ud they support traceability of changes and reusability, portability and interoperability\ud of models. We illustrate advantages of modelling in Aspect Petri Nets for MDA\ud application and describe necessary tool support

    On the Role of Metadata in Visual Language Reuse and Reverse Engineering – An Industrial Case

    Get PDF
    AbstractCollecting metadata on a family of programs is useful not only for generating statistical data on the programs but also for future re-engineering and reuse purposes. In this paper we discuss an industrial case where a project library is used to store visual programs and a database to store the metadata on these programs. The visual language in question is a domain-specific language, Function Block Language (FBL) that is used in Metso Automation for writing automation control programs. For reuse, program analysis and re-engineering activities and various data and program analysis methods are applied to study the FBL programs. Metadata stored in a database is used to provide advanced program analysis support; from the large amount of programs, the metadata allows focusing the analysis to certain kinds of programs. In this paper, we discuss the role and usage of the metadata in program analysis techniques applied to FBL programs

    SMIL State: an architecture and implementation for adaptive time-based web applications

    Get PDF
    In this paper we examine adaptive time-based web applications (or presentations). These are interactive presentations where time dictates which parts of the application are presented (providing the major structuring paradigm), and that require interactivity and other dynamic adaptation. We investigate the current technologies available to create such presentations and their shortcomings, and suggest a mechanism for addressing these shortcomings. This mechanism, SMIL State, can be used to add user-defined state to declarative time-based languages such as SMIL or SVG animation, thereby enabling the author to create control flows that are difficult to realize within the temporal containment model of the host languages. In addition, SMIL State can be used as a bridging mechanism between languages, enabling easy integration of external components into the web application. Finally, SMIL State enables richer expressions for content control. This paper defines SMIL State in terms of an introductory example, followed by a detailed specification of the State model. Next, the implementation of this model is discussed. We conclude with a set of potential use cases, including dynamic content adaptation and delayed insertion of custom content such as advertisements. © 2009 Springer Science+Business Media, LLC

    A Systematic Aspect-Oriented Refactoring and Testing Strategy, and its Application to JHotDraw

    Full text link
    Aspect oriented programming aims at achieving better modularization for a system's crosscutting concerns in order to improve its key quality attributes, such as evolvability and reusability. Consequently, the adoption of aspect-oriented techniques in existing (legacy) software systems is of interest to remediate software aging. The refactoring of existing systems to employ aspect-orientation will be considerably eased by a systematic approach that will ensure a safe and consistent migration. In this paper, we propose a refactoring and testing strategy that supports such an approach and consider issues of behavior conservation and (incremental) integration of the aspect-oriented solution with the original system. The strategy is applied to the JHotDraw open source project and illustrated on a group of selected concerns. Finally, we abstract from the case study and present a number of generic refactorings which contribute to an incremental aspect-oriented refactoring process and associate particular types of crosscutting concerns to the model and features of the employed aspect language. The contributions of this paper are both in the area of supporting migration towards aspect-oriented solutions and supporting the development of aspect languages that are better suited for such migrations.Comment: 25 page
    • 

    corecore