Operation Based Model Representation: Experiences on Inconsistency Detection

Size: px
Start display at page:

Download "Operation Based Model Representation: Experiences on Inconsistency Detection"

Transcription

1 Operation Based Model Representation: Experiences on Inconsistency Detection Jerome Le Noir 1, Olivier Delande 1, Daniel Exertier 2, Marcos Aurélio Almeida da Silva 3, and Xavier Blanc 4 1 Thales Research and Technology, France 2 Thales Corporate Services, France 3 LIP6, UPMC Paris Universitas, France 4 LABRI, Université de Bordeaux 1, France Abstract. Keeping the consistency between design models is paramount in complex contexts. It turns out that the underlying Model Representation Strategy has an impact on the inconsistency detection activity. The Operation Based strategy represents models as the sequence of atomic editing actions that lead to its current state. Claims have been made about gains in time and space complexity and in versatility by using this kind of representation when compared to the traditional object based one. However, this hypothesis has never been tested in an industrial context before. In this paper, we detail our experience evaluating an Operation Based consistency engine (Praxis) when compared with a legacy system based on EMF. We evaluated a set of industrial models under inconsistency rules written in both Java (for EMF) and PraxisRules (the DSL Domain Specific Language for describing inconsistency rules in Praxis). Our results partially confirm the gains claimed by the Operation Based engines. 1 Introduction Current large scale software projects involve hundreds of developers working in a distributed environment over several models that need to conform to several meta-models (e.g. SysML, UML, Petri nets, business process) [1]. In such context keeping the consistency between models and with their respective meta-models is mandatory[2]. Models are usually represented as sets of objects along with their attributes and mutual associations [3, 4]. A model is considered to be inconsistent if and only if it contains undesirable patterns, which are specified by the so called inconsistency rules [5]. Even if these rules may be represented in many different ways, such as the well-formedness rules of [6], the structural rules of [7], the detection rules of [4], the syntactic rules of [8], and the inconsistency detection rules of [9], approaches that deal with detection of inconsistencies irremediably consist in browsing the model in order to detect undesirable patterns. The underlying strategy used to represent the model is then very likely to have significant effects on the performance of inconsistency detection algorithms.

2 Under the Operation Based model representation strategy[9, 10], instead of keeping track of the current configuration of the objects, their attributes and associations, one records the sequence of atomic editing actions that were performed in order to obtain the current configuration. Operation Based checkers claim to be as efficient as Object Based ones, and very adequate for Incremental inconsistency detection mode[11]. This mode, consists in, instead of checking every inconsistency rule over the complete model every time the model has been modified, limiting the search to a subset of this problem. The search for inconsistencies is performed on the subset of the model that was modified since the last check and using the subset of the inconsistency rules that are concerned by this modification. The efficiency gains claimed by these checkers would come from the fact that identifying the scope of an incremental check reduces to looking at the sequences of actions appended to the current model by the uses (these sequences are called increments)[12]. Unfortunately, none of these claims has ever been tested in an industrial context before, specially on non-uml models. In this paper we report our experiences on the impact of the underlying strategy for model representation to the overall performance of the inconsistency checker. These experiences have been synthesized in a case study in which we compare an operation based consistency checker (Praxis [9]) with the one provided by the Eclipse Modeling Framework (EMF) 5. Our tests included industrial models ranging from to model elements. We have carried out the approach on the engineering meta-model defined by Thales composed of about 400 meta-classes. This meta-model contains 114 inconsistency rules implemented in Java, from which 30 mandatory ones were selected, re-implemented and checked in models coming from operational contexts. Our results partially confirm the gains claimed by Operation Based consistency engines: the overall performance gains were identified in the incremental mode but no significant gains were identified in the batch mode. This paper is organized as follows: Section 2 details the operation model representation strategy used in Praxis and compares it to the object based one used in EMF. Section 3 presents the design and results of our case study. Section 4 concludes. 2 Praxis: An Operation Based Model Representation Strategy The objective of this section is introducing Praxis, an operation based model representation strategy and PraxisRules, the rule based DSL Domain Specific Language for representing consistency rules in Praxis. Our objective is not presenting them in details, but to present their basics in comparison to traditional object based model representation and consistency rules as provided by EMF, for example. 5 The Eclipse Modeling Framework,

3 2.1 Praxis Praxis[9] is a meta-model independent consistency checking strategy whose internal model representation is based on the operation based model representation. In Praxis, a model is represented as the sequence of atomic editing actions that lead to its current state. This approach uses 6 kinds of atomic actions which were inspired on the MOF reflective API [3]. The create(me, mc, t) and delete(me, t) actions respectively create and delete a model element me, that is an instance of the meta-class mc at the time-stamp t. The time-stamp which indicates the moment when it was executed by the user. The actions addp roperty(me, p, value, t) and remp roperty(me, p, value, t) add or remove the value value to or from the property p of the model element me at time-stamp t. Similarly, the actions addref erence(me, r, target, t) and remreference(me, r, target, t) add or remove the model element target as a reference r from the model element me. create(a,logicalactor,1) addproperty(a,name, ActorName,2) create(b,systemactorrealization,3) addproperty(b,name, BName,4)) create(c,systemactorrealization,5) addproperty(c,name, CName,6) addreference(a,systemactorrealization,b,7) addreference(a,systemactorrealization,c,8) create(d,allocatedcomponent,10) addproperty(d,name, dname, 11) addreference(b, allocatedcomponent, d, 12) addreference(c, allocatedcomponent, d, 13) Fig. 1. Sample model Fig. 2. Model construction operation sequence Figures 1 and 2 represent the same model in the form of respectively a set of objects along with attributes and associations and a sequence of editing actions. Both represent the LogicalActor a, the SystemActorRealizations b and c and the AllocatedComponent d. They also represent the name attribute of each object. The actions in timestamps 1 and 2 create the a object and set its name. The actions 3 6 create the b and c objects and set their name attributes. The actions in timestamps 7 and 8 create the associations between a, b and c. Finally, the actions in timestamps create the c object and associate it as the allocatedcomponent of b and c.

4 2.2 PraxisRules: The Consistency Rules DSL for Praxis PraxisRules is a rule-based logical DSL used to define consistency rules over Praxis sequences. This language is able to represent constraints over the order of the actions in a sequence or over the configuration of objects implied by it. The Java code snippet below represents a consistency rule over the model in Figure 1. This rule makes sure that every ActorRealization of a LogicalActor is an instance of Actor. This is done by navigating through a logical actor (represented by the logicalactor variable whose declaration is not shown), obtaining the list of its realizations (line 4) and iterating through it (lines 5 8) and checking if every realization has an associated allocated component that is an instance of Actor (lines 9 13). 1 /* Ensures that the Actor Realization of a Logical Actor always 2 * realizes an Actor (at the system analysis level). 3 */ 4 EList<SystemActorRealization> actorrealisations = logicalactor.getsystemactorrealizations(); 5 Iterator<SystemActorRealization> iterator = actorrealisations.iterator(); 6 7 while (iterator.hasnext()) { 8 SystemActorRealization next = iterator.next(); 9 Component allocatedcomponent = next.getallocatedcomponent(); if (null == allocatedcomponent!(allocatedcomponent instanceof Actor)) { 12 return createfailurestatus(ctx_p, new Object[] { logicalactor.getname() }); 13 } 14 } 15 } The following PraxisRule code snippet illustrates the definition of the same rule under an operation based model representation strategy. This code defines a rule called check_logicalactor_actorrealization which detects logical actors realized by a system realization that is allocated to an object that is not an actor or that is not realized by any system actor realization. First of all, notice that this rule defines a logical expression based on logical connectives (and{} for conjunction, or{} for disjunction and not{} for negation). Capitalized terms represent variables and terms starting with the # sign represent meta-classes or associations. Another important fact is that Praxis actions are used as predicates in this logical expression. 1 ["Ensures that the Actor Realization of a Logical Actor always realizes an Actor (at the system analysis level)"] 2 public check_logicalactor_actorrealization(a, R) 3 <=>

5 4 and { 5 create(a, #LogicalActor), 6 addreference(a, #systemactorrealizations, R), 7 or { 8 not {addreference(r, #allocatedcomponent, _)}, 9 and { 10 addreference(r, #allocatedcomponent, A), 11 create(a, #Actor) 12 } 13 } 14 }. The most important difference between this rule and the previous one is that this one is not based on navigating through the objects in the current configuration, but in looking for actions in the sequence that represents the current model. The main advantage of this kind of rule is that it is possible to identify which rules need to be rechecked (and which parameters need to be rechecked) by a simple inspection of the rules. For example, every time an action addref erence for the association systemactorrealization is performed this rule needs to be rechecked, because if a new system actor realization is being added to a logical actor, it is necessary to verify if it does not violate this rule. 3 Case Study The advantages of the operation based model representation presented in the last section have been empirically validated on randomly generated UML models in [12]. However they have never been investigated in real industrial models. That is then the main motivation for the present study. This section is organized as follows: Section 3.1 details the industrial context in which this study has been realized; Section 3.2 lists its main objectives and planning. Finally, Section 3.3 describes the environment in which it was effectively performed and Section 3.4 discusses its results. 3.1 Industrial Context In order to build an architecture of a software intensive system, many stakeholders contribute to the description of the system architecture. Following a model-based engineering approach, the different stakeholders will use modelling tools to describe the architecture and analysis tools to evaluate some properties of the architecture. Thales has defined a model-based architecture engineering approach for software intensive systems, the ARCADIA method [13]. It defines a model organization of five abstraction levels (viewpoints) for mainstream engineering and a set of others viewpoints for speciality engineering, depending typically on nonfunctional constraints applied on the system to be engineered. The views conforming to these viewpoints are used by different stakeholders during the system

6 definition process. Therefore, techniques and tools to manage the consistency of an information bulk made of several views on a system are necessary. The ARCADIA method adopts a viewpoint-based architectural description such as described in the conceptual foundations of ISO/IEC 42010, Systems and Software Engineering - Architecture Description [2]. This ongoing standard attempts to specify the manner in which architecture descriptions of systems are expressed. This standard provides key concepts and their relationships to document an architecture. Its key concepts (ArchitectureFramework, ArchitectureDescription, Viewpoint, View and Correspondence rule) are defined thanks to the conceptual model illustrated by the Figure 3. This conceptual model defines the semantics of the different concepts we overview here. An architecture description aggregates several Architecture Views. A view addresses one or more system concerns that are relevant to some of the system s stakeholders. A view aggregates one or more Architecture Models. Each view is defined following the conventions of an Architecture Viewpoint. The viewpoint defines the Model Kinds used for that view to represent the architecture addresses stakeholders concerns. As stated in this standard, in architecture descriptions, one consequence of employing multiple views is the need to express and maintain the consistency between these views. The standard introduces the Correspondence Rule concept that states a constraint that must be enforced on a correspondence to express relation between architecture description elements (Views, Architectural Model, etc.). Correspondences can be used to express consistency, traceability, composition, refinement and model transformation, or dependencies of any type spanning more than a single model kind. Fig. 3. ISO-IEC Architecture Framework overview

7 Considering this industrial context, it can be considered that there are 3 major types of model coherency to be managed: The first one aims at ensuring that a model conforms to its metamodel, i.e. that it addresses the well-formedness of the model. Since the modeling environment is DSL based (i.e. not profile based using a general purpose language), the well-formedness can be de facto ensured. The second one aims at ensuring that a model conforms to a coherent set of engineering rules; i.e. that the engineer conforms to a defined engineering method; in order to capitalize and reuse standard and domain specific engineering best practices. The third one aims at ensuring information consistency between distributed engineering environments, i.e. when there is not a unique centralized data reference. The main purpose here is to ensure coherency of all engineering activities across engineering domains, typically mainstream architecting and speciality engineering activities. 3.2 Objectives & Planning Our experimentation focused on the second type of model coherency which consists in determining if a given configuration of set of views (models) are coherent with a set of consistency rules or not. This study consisted in detecting the inconsistencies between views conforms to the engineering meta-model defined by Thales and composed of a set of 20 meta-models and about 400 meta-classes involved in the five viewpoints defined in ARCADIA. The purpose of this study was assessing the benefits of Praxis Rules over Praxis strategy when compared to the traditional Java over EMF one. In terms of benefits, we study the efficiency to compute the set of inconsistencies in a given model and the usability of the approach. In order to evaluate the effectiveness of the operation-based approach, we have validated the approach against our case study and the experiment environment with one Prolog expert and two Java developers from Thales. A set of 30 existing consistency rules initially implemented in Java over EMF have translated in Praxis Rules thanks to the praxis rule editor. We validated the consistency engine with models coming from operational contexts. We used three different models (ranging from to model elements) to determine the performance of the consistency engine tool for different model sizes. 3.3 Environment Our experiment environment consisted of the Praxis consistency engine and a System engineering tool dedicated to this industrial context. This latter tool has been built on the top on the Eclipse Obeo Designer tool 6 and exposes a dedicated engineering language providing user-friendly ergonomics. 6

8 It allows engineers to define the architecture description of a software system by providing the five following views: The Operational Analysis model level, where the customer needs are defined and/or clarified in terms of tasks to accomplish by the System/Software, in its environment, for its users. The System Analysis model level, that provides a black box view of the System where the System limits are defined and/or clarified in terms of actors and external interfaces, the System capabilities and functional and non-functional needs and expectations; allowing to identify the more constraining/impacting requirements. The Logical Architecture model level, which provides a white box view of the System. It defines a technical and material independent decomposition of the System into components, and where the non-functional constraints are refined and allocated. The Physical Architecture model level, which is defined by the structuring architecture of the System. It takes into account non-functional constraints, reuses legacy assets and applies product policies. The EPBS (End Product Breakdown Structure) model level is an organizational view identifying the configuration items for development contracts and further Integration, Verification and Validation. The Praxis Consistency engine has been integrated on top of this tool. It has been written in Java and is coupled with SWI-Prolog. From any given model, a equivalent sequence of editing operations is generated and passed to SWI Prolog. The Prolog engine then executes a set of queries representing consistency rules (also described in Prolog) and returns the list of detected inconsistencies to the user. In the point of view of users, the Praxis Consistency engine provides two main components or features: the ConsistencyRule editor and the Consistency View. The first one allows the description of consistency rules using the PraxisRules DSL. These rules are then compiled into Prolog and are used by the Consistency engine. The Consistency View shows the number of inconsistencies found in the model and the model information that are not conform to the engineering rules. A screen shot of the integrated tool is displayed in Figure 4. It shows an architecture description model that is being edited by an engineer (on the top) and the set of detected inconsistencies (the list on the bottom right). The only modification on this tool needed to this experiment was the inclusion of a timer that precisely indicated the time needed to perform each consistency verification. 3.4 Results & Evaluation This section details the results of our experiments and the evaluation of the usability and applicability of Praxis in the industrial context under study. This section is divided into three parts, in the first one we analyze the comparison of the performance results obtained by Praxis and EMF. In the second part we

9 Fig. 4. Experiment Environment analyze the adaptation of the rules written in the first part to the incremental checking model provided by Praxis. Finally, the third part describes our overall evaluation about the difficulty of rewriting part of our existing Java consistency rules in PraxisRules. Detecting model inconsistency Table 1 describes the different metrics of the models used in our experiment. The model A is a toy model provided with the environment and the two others (B and C) are realistic models. The first three lines describe respectively the number of model elements in each model; the size of the model as represented as an EMF model and as a Praxis sequence of actions. Notice that the Praxis representation is in average four times more verbose than the EMF one. That happens because much more information is stored in Praxis, namely the order and the time-stamp of execution of each action. The fourth, fifth, sixth and seventh lines display respectively the time needed to generate the actions file from the EMF model; the time needed to load it along with the translated consistency rules into the SWI Prolog engine and the amount of memory in MB necessary for the Eclipse process and the Prolog process to open each representation of it. These memory related numbers have been obtained by subtracting the amount of memory used by the process before and after loading the model. The amount of memory used before loading the EMF file averaged in 261 MB and before loading the Praxis sequences of actions averaged in 6MB.

10 Finally, the two last lines compare the time taken by each consistency engine to verify each model. Notice that, the Java Overall check time is always lesser than the Praxis Overall check time.nevertheless, we consider that the Praxis Overall check time is acceptable for the set of rules in this context. Model A Model B Model C Number of model elements EMF model file size (KB) Praxis action file size (KB) Time to generate actions file (ms) Loading time (ms) eclipse.exe (MB) plcon.exe (MB) 0,6 85,4 89,6 Praxis Overall check time(ms) Java Overall check time (ms) Table 1. Experimentation metrics As an overall evaluation, the main limitation of the Praxis consistency engine lies in the fact that it works with another model representation, a file containing the sequence of editing actions represented as Prolog facts. This file has to be generated and loaded into the Prolog engine every time the model has been modified. For the two realistic models (B and C), the time to generate the praxis actions file is about 7 to 10 seconds and the time taken to load this file is about 12 sec. The performance penalty thus induced means that it would be impractical to use Praxis in an industrial usage by generating the action file from scratch and to load the actions files for each check. Incremental detection of model inconsistencies Since testing the incremental mode in EMF would require the adaptation of the existing Java rules to this mode we decided to evaluate only the usability of the Praxis consistency engine, without comparing it to EMF. After having opened the model in incremental mode, the user needs to wait for a batch mode check that computes the initial set of inconsistencies in the model. From this point on, when any modification is made to the model the incremental check is executed, taking into consideration only the subset of the models and of the inconsistency rules that is concerned by the modification that was performed. We evaluated both the time necessary to perform the initial batch verification and the time needed to verify the increments. The performance obtained by the former was equivalent to the performance of the batch checker already displayed in Table 1. The performance for the later averaged in 100ms. As an overall evaluation, we concluded that the time needed to perform the initial batch verification to be reasonable and comparable to the time already needed to load the model on Eclipse. With respect to the incremental checking

11 time, we considered it to be quite transparent and independent of the number of rules that need to be re-checked. We consider that the main drawbacks of the praxis approach can be mitigated with the incremental mode. Inconsistency rules Thanks to the consistency rule editor, 30 rules have been written by two Java developers without knowledge of Prolog in the beginning of the study and one Logic Programming expert. Java and PraxisRules are languages built on very different paradigms. Java is imperative in nature, and querying or checking a model typically consists in iteratively navigating and inspecting the model elements with the explicit use of loops and collections. PraxisRules, being built on top of Prolog, inherits its declarative nature, which means that the typical querying or checking code consists of a pattern to be identified in the sequence of actions. In the present study, 60% of the inconsistency rules were dedicated to verify some realization relationship between the five views (i.e. verifying if an element in a view correctly realizes other elements in other views). This kind of rule is easy to write with the PraxisRule syntax. Nevertheless, the rules that have been written by the Prolog expert were more efficient in terms of performance than the ones written by the Java programmers. 4 rules could not be written without the Prolog expert because they required to use of language constructs that were not available in the basic PraxisRules library. These constructs needed to be implemented in Prolog and added to that library by the Prolog expert. In spite of the language not being typed, the Consistency Rule editor helped to overcome this limitation by adding warnings to the references in the PraxisRule code that were not found of the imported metamodels. As an overall evaluation, we considered that knowledge of Prolog is a very important prerequisite to write PraxisRules consistency rules. Furthermore, for more advanced cases it could become difficult to translate rules from Java to Praxis, especially for complex engineering rules which were considered to be hard to implement. This difference is counterbalanced by the fact that no rules needed to be rewritten in order to use Praxis on the incremental mode. Our evaluation is that for some classes of rules (like the ones detecting simple patterns between different views) it is worth to write the them in PraxisRules. 4 Conclusion This paper described our experiences on the impact of the Operation based underlying model representation strategy to the efficiency of the inconsistency detection task. We use the Eclipse Modeling Framework (EMF) as the reference for our study, which consisted in testing Praxis, an operation based consistency management, by reimplementing a set of 30 consistency rules from the engineering meta-model defined by Thales and comparing the time necessary to compute its consistency with the time needed by EMF. This case study was executed in an industrial context, with non-uml models.

12 Our results show that, in terms of computation time, the operation based approach is not better than the object based on. The difficulty of adapting these rules to being used in the incremental verification was also compared. Our results show that the work necessary to write the consistency rules is reduced by the use of the operation based approach, since they usually do not need to be rewritten to work on incremental mode. As future works, we intend to compare the Praxis incremental model with the EMF one. We also intend to repeat this evaluation in non-emf contexts. Acknowledgments This work was partly funded by ANR project MOVIDA under the convention N 2008 SEGI 011. References 1. Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5) (2003) International Organization for Standardization: ISO/IEC FCD 42010: Systems and software engineering - Architecture Description ( ) 3. OMG: Meta Object Facility (MOF) 2.0 Core Specification (January 2006) 4. Mens, T., et al.: Detecting and resolving model inconsistencies using transformation dependency analysis. In: Model Driven Engineering Languages and Systems. Volume 4199 of LNCS., Springer (October 2006) Balzer, R.: Tolerating inconsistency. Proc. Int Conf. Software engineering (ICSE 91) 1 (1991) Spanoudakis, G., Zisman, A.: Inconsistency management in software engineering: Survey and open research issues. In: IN HANDBOOK OF SOFTWARE ENGI- NEERING AND KNOWLEDGE ENGINEERING, World Scientific Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using description logics to maintain consistency between UML models. In: UML The Unified Modeling Language. Volume 2863 of Lecture Notes in Computer Science., Springer (2003) Elaasar, M., Brian, L.: An overview of UML consistency management. Technical Report SCE (August 2004) 9. Blanc, X., Mougenot, A., Mounier, I., Mens, T.: Detecting model inconsistency through operation-based model construction. In Robby, ed.: Proc. Int l Conf. Software engineering (ICSE 08). Volume 1., ACM (2008) Finkelstein, A., Kramer, J., Nuseibeh, B., Finkelstein, L., Goedicke, M.: Viewpoints: A Framework for Integrating Multiple Perspectives in System Development. International Journal of Software Engineering and Knowledge Engineering 2(1) (1992) Egyed, A.: Fixing inconsistencies in UML design models. In: Proc. Int l Conf. Software Engineering (ICSE 07), IEEE Computer Society (2007) Blanc, X., Mougenot, A., Mounier, I., Mens, T.: Incremental detection of model inconsistencies based on model operations. In: Proceedings of the 21st International Conference on Advanced Information Systems, CAISE 09, Springer (2009) Voirin, J.L.: Model-driven architecture building for constrained systems. CSDM 10 (2010)

Detecting Model Inconsistency through Operation-Based Model Construction

Detecting Model Inconsistency through Operation-Based Model Construction Detecting Model Inconsistency through Operation-Based Model Construction Xavier Blanc, Isabelle Mounier, Alix Mougenot LIP6 104 av. Président Kennedy 75016 Paris, France +33 1 44 27 73 22 firstname.name@lip6.fr

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

The Specifications Exchange Service of an RM-ODP Framework

The Specifications Exchange Service of an RM-ODP Framework The Specifications Exchange Service of an RM-ODP Framework X. Blanc (*+), M-P. Gervais(*), J. Le Delliou(+) (*)Laboratoire d'informatique de Paris 6-8 rue du Capitaine Scott F75015 PARIS (+)EDF Research

More information

A Flexible Approach for Validating ı Models

A Flexible Approach for Validating ı Models A Flexible Approach for Validating ı Models Ralf Laue, Arian Storch Chair of Applied Telematics / e-business, University of Leipzig, Germany laue@ebus.informatik.uni-leipzig.de Abstract. In this article,

More information

Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability

Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability Nesrine BADACHE, ARTAL Technologies, nesrine.badache@artal.fr Pascal ROQUES, PRFC, pascal.roques@prfc.fr Keywords: Modeling, Model,

More information

A Formal V&V Framework for UML Models Based on Model Transformation Techniques

A Formal V&V Framework for UML Models Based on Model Transformation Techniques A Formal V&V Framework for UML Models Based on Model Transformation Techniques Soon-Kyeong Kim and David Carrington Information Technology and Electrical Engineering The University of Queensland, St. Lucia,

More information

On the link between Architectural Description Models and Modelica Analyses Models

On the link between Architectural Description Models and Modelica Analyses Models On the link between Architectural Description Models and Modelica Analyses Models Damien Chapon Guillaume Bouchez Airbus France 316 Route de Bayonne 31060 Toulouse {damien.chapon,guillaume.bouchez}@airbus.com

More information

ARCADIA: Model-Based Collaboration for System, Software and Hardware Engineering

ARCADIA: Model-Based Collaboration for System, Software and Hardware Engineering www.thalesgroup.com ARCADIA: Model-Based Collaboration for System, Software and Hardware Engineering An architecture-centric, tool-supported method Jean-Luc Voirin & Stéphane Bonnet RETEX AFIS - May 2014

More information

Static analysis and testing of executable DSL specification

Static analysis and testing of executable DSL specification Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:

More information

Static Safety Analysis of UML Action Semantics for Critical Systems Development

Static Safety Analysis of UML Action Semantics for Critical Systems Development Static Safety Analysis of UML Action Semantics for Critical Systems Development Zsigmond Pap, Dániel Varró Dept. of Measurement and Information Systems Budapest University of Technology and Economics H-1521

More information

Introduction to Dependable Systems: Meta-modeling and modeldriven

Introduction to Dependable Systems: Meta-modeling and modeldriven Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software

More information

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Arnon Sturm Department of Information Systems Engineering Ben-Gurion University of the Negev, Beer Sheva 84105, Israel

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

AADL Requirements Annex Review

AADL Requirements Annex Review Dominique Blouin Lab-STICC Université de Bretagne-Occidentale Université de Bretagne-Sud Bretagne, France 1 AADL Standards Meeting, April 23 th, 2013 Agenda Comments from Annex Document Review Motivations

More information

Meta Architecting: Towered a New Generation of Architecture Description Languages

Meta Architecting: Towered a New Generation of Architecture Description Languages Journal of Computer Science 1 (4): 454-460, 2005 ISSN 1549-3636 Science Publications, 2005 Meta Architecting: Towered a New Generation of Architecture Description Languages Adel Smeda, Tahar Khammaci and

More information

Challenges in Model Refactoring

Challenges in Model Refactoring Challenges in Model Refactoring Tom Mens, University of Mons-Hainaut, Belgium tom.mens@umh.ac.be Gabriele Taentzer, Dirk Müller, Philipps-Universität Marburg, Germany {taentzer,dmueller}@mathematik.uni-marburg.de

More information

A Model Transformation from Misuse Cases to Secure Tropos

A Model Transformation from Misuse Cases to Secure Tropos A Model Transformation from Misuse Cases to Secure Tropos Naved Ahmed 1, Raimundas Matulevičius 1, and Haralambos Mouratidis 2 1 Institute of Computer Science, University of Tartu, Estonia {naved,rma}@ut.ee

More information

Using Component-oriented Process Models for Multi-Metamodel Applications

Using Component-oriented Process Models for Multi-Metamodel Applications Using Component-oriented Process Models for Multi-Metamodel Applications Fahad R. Golra Université Européenne de Bretagne Institut Télécom / Télécom Bretagne Brest, France Email: fahad.golra@telecom-bretagne.eu

More information

Software Language Engineering of Architectural Viewpoints

Software Language Engineering of Architectural Viewpoints Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr

More information

Architecture Viewpoint Template for ISO/IEC/IEEE 42010

Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

Perspectives on User Story Based Visual Transformations

Perspectives on User Story Based Visual Transformations Perspectives on User Story Based Visual Transformations Yves Wautelet 1, Samedi Heng 2, and Manuel Kolp 2 1 KU Leuven, Belgium yves.wautelet@kuleuven.be, 2 LouRIM, Université catholique de Louvain, Belgium

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

Rich Hilliard 20 February 2011

Rich Hilliard 20 February 2011 Metamodels in 42010 Executive summary: The purpose of this note is to investigate the use of metamodels in IEEE 1471 ISO/IEC 42010. In the present draft, metamodels serve two roles: (1) to describe the

More information

Employing Query Technologies for Crosscutting Concern Comprehension

Employing Query Technologies for Crosscutting Concern Comprehension Employing Query Technologies for Crosscutting Concern Comprehension Marius Marin Accenture The Netherlands Marius.Marin@accenture.com Abstract Common techniques for improving comprehensibility of software

More information

Definition of Visual Language Editors Using Declarative Languages

Definition of Visual Language Editors Using Declarative Languages Definition of Visual Language Editors Using Declarative Languages Torbjörn Lundkvist TUCS Turku Centre for Computer Science SoSE Graduate School on Software Systems and Engineering Department of Information

More information

The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access

The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access The onprom Toolchain for Extracting Business Process Logs using Ontology-based Data Access Diego Calvanese, Tahir Emre Kalayci, Marco Montali, and Ario Santoso KRDB Research Centre for Knowledge and Data

More information

A Teaching Environment to Model and Simulate Computer Processors

A Teaching Environment to Model and Simulate Computer Processors A Teaching Environment to Model and Simulate Computer Processors Sebastiano PIZZUTILO and Filippo TANGORRA Dipartimento di Informatica Università degli Studi di Bari via Orabona 4, 70126 Bari ITALY Abstract:

More information

Transforming models with ATL

Transforming models with ATL The ATLAS Transformation Language Frédéric Jouault ATLAS group (INRIA & LINA), University of Nantes, France http://www.sciences.univ-nantes.fr/lina/atl/!1 Context of this work The present courseware has

More information

Introduction to MDE and Model Transformation

Introduction to MDE and Model Transformation Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and

More information

INCONSISTENT DATABASES

INCONSISTENT DATABASES INCONSISTENT DATABASES Leopoldo Bertossi Carleton University, http://www.scs.carleton.ca/ bertossi SYNONYMS None DEFINITION An inconsistent database is a database instance that does not satisfy those integrity

More information

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS MASTER THESIS AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS C.J.H. Weeïnk FACULTY OF ELECTRICAL ENGINEERING, MATHEMATICS AND COMPUTER SCIENCE SOFTWARE ENGINEERING EXAMINATION COMMITTEE dr.

More information

Existing Model Metrics and Relations to Model Quality

Existing Model Metrics and Relations to Model Quality Existing Model Metrics and Relations to Model Quality Parastoo Mohagheghi, Vegard Dehlen WoSQ 09 ICT 1 Background In SINTEF ICT, we do research on Model-Driven Engineering and develop methods and tools:

More information

A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE

A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE Andrei Kirshin, Dany Moshkovich, Alan Hartman IBM Haifa Research Lab Mount Carmel, Haifa 31905, Israel E-mail: {kirshin, mdany, hartman}@il.ibm.com

More information

Reasoning on Business Processes and Ontologies in a Logic Programming Environment

Reasoning on Business Processes and Ontologies in a Logic Programming Environment Reasoning on Business Processes and Ontologies in a Logic Programming Environment Michele Missikoff 1, Maurizio Proietti 1, Fabrizio Smith 1,2 1 IASI-CNR, Viale Manzoni 30, 00185, Rome, Italy 2 DIEI, Università

More information

Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog?

Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog? Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog? Daniela Briola, Viviana Mascardi, and Davide Ancona DIBRIS, Genoa University, Italy daniela.briola,viviana.mascardi,davide.ancona@unige.it

More information

Models in Conflict Towards a Semantically Enhanced Version Control System for Models

Models in Conflict Towards a Semantically Enhanced Version Control System for Models Models in Conflict Towards a Semantically Enhanced ersion Control System for Models Kerstin Altmanninger Department of Telecooperation, Johannes Kepler University Linz, Austria kerstin.altmanninger@jku.at

More information

Eclipse Development Tools for Epsilon

Eclipse Development Tools for Epsilon Eclipse Development Tools for Epsilon Dimitrios S. Kolovos, Richard F. Paige, and Fiona A.C. Polack Department of Computer Science, University of York, Heslington, York, YO10 5DD, UK. {dkolovos,paige,fiona@cs.york.ac.uk

More information

JQueryScapes: customizable Java code perspectives

JQueryScapes: customizable Java code perspectives JQueryScapes: customizable Java code perspectives [Forum Demonstration Proposal] Lloyd Markle, Kris De Volder Department of Computer Science University of British Columbia Vancouver, BC, Canada 604-822-1290

More information

MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development

MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development MEMOCenterNG A full-featured modeling environment for organization modeling and model-driven software development Jens Gulden and Prof. Dr. Ulrich Frank University Duisburg-Essen, Universitaetsstr. 9,

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage Two Basic Correctness Properties for ATL Transformations: Executability and Coverage Elena Planas 1, Jordi Cabot 2, and Cristina Gómez 3 1 Universitat Oberta de Catalunya (Spain), eplanash@uoc.edu 2 École

More information

4 CoffeeStrainer Virtues and Limitations

4 CoffeeStrainer Virtues and Limitations In this chapter, we explain CoffeeStrainer s virtues and limitations and the design decisions that led to them. To illustrate the points we want to make, we contrast CoffeeStrainer with a hypothetical,

More information

On Using UML Profiles in ATL Transformations

On Using UML Profiles in ATL Transformations On Using UML Profiles in ATL Transformations Manuel Wimmer and Martina Seidl Business Informatics Group, Vienna University of Technology, Austria {wimmer seidl}@big.tuwien.ac.at Abstract. For defining

More information

Towards a Component Agent Service Oriented Model

Towards a Component Agent Service Oriented Model Towards a Component Agent Service Oriented Model Nour Alhouda Aboud, Eric Cariou and Eric Gouardères LIUPPA Laboratory Université de Pau et des Pays de l Adour BP 1155 64013 Pau Cedex France {Nour-alhouda.Aboud,

More information

From Objects to Aspects: Assessing Modularity Evolution

From Objects to Aspects: Assessing Modularity Evolution From Objects to Aspects: Assessing Modularity Evolution Sérgio Bryton, Fernando Brito e Abreu February 2008 Unlimited distribution subject to the copyright. Technical Report FCT/QUASAR-2008-TR-108 This

More information

Model-Based Social Networking Over Femtocell Environments

Model-Based Social Networking Over Femtocell Environments Proc. of World Cong. on Multimedia and Computer Science Model-Based Social Networking Over Femtocell Environments 1 Hajer Berhouma, 2 Kaouthar Sethom Ben Reguiga 1 ESPRIT, Institute of Engineering, Tunis,

More information

WP 15: DBE Business Modeling Language

WP 15: DBE Business Modeling Language D.B.E. Digital Business Ecosystem Contract No: 507953 WP 15: DBE Business Modeling Language D15.2: BML Editor 2 nd Release Project funded by the European Community under FP6 D15.2: BML Editor 2 nd Release

More information

The Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements

The Analysis and Proposed Modifications to ISO/IEC Software Engineering Software Quality Requirements and Evaluation Quality Requirements Journal of Software Engineering and Applications, 2016, 9, 112-127 Published Online April 2016 in SciRes. http://www.scirp.org/journal/jsea http://dx.doi.org/10.4236/jsea.2016.94010 The Analysis and Proposed

More information

Unified Approach for Building Heterogeneous Artifacts and Consistency Rules

Unified Approach for Building Heterogeneous Artifacts and Consistency Rules 26 JOURNAL OF EMERGING TECHNOLOGIES IN WEB INTELLIGENCE, VOL. 6, NO., FEBRUARY 204 Unified Approach for Building Heterogeneous Artifacts and Consistency Rules Mounir Zekkaoui Laboratory LIST FST-Tangier

More information

Metamodeling with Metamodels. Using. UML/MOF including OCL

Metamodeling with Metamodels. Using. UML/MOF including OCL Metamodeling with Metamodels Using UML/MOF including OCL Introducing Metamodels (Wikipedia) A metamodel is a model of a model An instantiation of metamodel gives a model Metamodeling is the process of

More information

EMF Metrics: Specification and Calculation of Model Metrics within the Eclipse Modeling Framework

EMF Metrics: Specification and Calculation of Model Metrics within the Eclipse Modeling Framework EMF Metrics: Specification and Calculation of Model Metrics within the Eclipse Modeling Framework Thorsten Arendt a, Pawel Stepien a, Gabriele Taentzer a a Philipps-Universität Marburg, FB12 - Mathematics

More information

UML Profile for MARTE: Time Model and CCSL

UML Profile for MARTE: Time Model and CCSL UML Profile for MARTE: Time Model and CCSL Frédéric Mallet 1 Université Nice Sophia Antipolis, Aoste team INRIA/I3S, Sophia Antipolis, France Frederic.Mallet@unice.fr Abstract. This 90 minutes tutorial

More information

Model-based System Engineering for Fault Tree Generation and Analysis

Model-based System Engineering for Fault Tree Generation and Analysis Model-based System Engineering for Fault Tree Generation and Analysis Nataliya Yakymets, Hadi Jaber, Agnes Lanusse CEA Saclay Nano-INNOV, Institut CARNOT CEA LIST, DILS, 91 191 Gif sur Yvette CEDEX, Saclay,

More information

SCADE. SCADE Architect System Requirements Analysis EMBEDDED SOFTWARE

SCADE. SCADE Architect System Requirements Analysis EMBEDDED SOFTWARE EMBEDDED SOFTWARE SCADE SCADE Architect 19.2 SCADE Architect is part of the ANSYS Embedded Software family of products and solutions, which gives you a design environment for systems with high dependability

More information

BLU AGE 2009 Edition Agile Model Transformation

BLU AGE 2009 Edition Agile Model Transformation BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation

More information

Ontology-based Model Transformation

Ontology-based Model Transformation Ontology-based Model Transformation Stephan Roser Advisor: Bernhard Bauer Progamming of Distributed Systems Institute of Computer Science, University of Augsburg, Germany [roser,bauer]@informatik.uni-augsburg.de

More information

Automatic Generation of Graph Models for Model Checking

Automatic Generation of Graph Models for Model Checking Automatic Generation of Graph Models for Model Checking E.J. Smulders University of Twente edwin.smulders@gmail.com ABSTRACT There exist many methods to prove the correctness of applications and verify

More information

Process-Integrated Refinement Patterns in UML

Process-Integrated Refinement Patterns in UML Process-Integrated Refinement Patterns in UML Timo Kehrer Dept. of Computer Science and Media Stuttgart Media University (HdM) Nobelstr. 10, D-70569 Stuttgart, Germany Tel: +49 711 8923 2619 Fax: +49 711

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

SysML Past, Present, and Future. J.D. Baker Sparx Systems Ambassador Sparx Systems Pty Ltd

SysML Past, Present, and Future. J.D. Baker Sparx Systems Ambassador Sparx Systems Pty Ltd SysML Past, Present, and Future J.D. Baker Sparx Systems Ambassador Sparx Systems Pty Ltd A Specification Produced by the OMG Process SysML 1.0 SysML 1.1 Etc. RFI optional Issued by Task Forces RFI responses

More information

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting UNIT II Syllabus Introduction to UML (08 Hrs, 16 Marks) a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting b. Background, UML Basics c. Introducing UML 2.0 A Conceptual Model

More information

DESIGN PATTERN MATCHING

DESIGN PATTERN MATCHING PERIODICA POLYTECHNICA SER. EL. ENG. VOL. 47, NO. 3 4, PP. 205 212 (2003) DESIGN PATTERN MATCHING Dániel PETRI and György CSERTÁN Department of Measurement and Information Systems Budapest University of

More information

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages

Developing Web-Based Applications Using Model Driven Architecture and Domain Specific Languages Proceedings of the 8 th International Conference on Applied Informatics Eger, Hungary, January 27 30, 2010. Vol. 2. pp. 287 293. Developing Web-Based Applications Using Model Driven Architecture and Domain

More information

Coral: A Metamodel Kernel for Transformation Engines

Coral: A Metamodel Kernel for Transformation Engines Coral: A Metamodel Kernel for Transformation Engines Marcus Alanen and Ivan Porres TUCS Turku Centre for Computer Science Department of Computer Science, Åbo Akademi University Lemminkäisenkatu 14, FIN-20520

More information

3.4 Data-Centric workflow

3.4 Data-Centric workflow 3.4 Data-Centric workflow One of the most important activities in a S-DWH environment is represented by data integration of different and heterogeneous sources. The process of extract, transform, and load

More information

Architecture-driven development of Climate Control Software LMS Imagine.Lab Embedded Software Designer Siemens DF PL

Architecture-driven development of Climate Control Software LMS Imagine.Lab Embedded Software Designer Siemens DF PL Architecture-driven development of Climate Control Software LMS Imagine.Lab Embedded Software Designer Siemens DF PL Restricted Siemens AG 2017 Realize innovation. Content 1 Overview 3 2 LMS Imagine.Lab

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Tetsuro Katayama Department of Computer Science and Systems Engineering, Faculty of Engineering, Miyazaki University

More information

Chapter 2 Overview of the Design Methodology

Chapter 2 Overview of the Design Methodology Chapter 2 Overview of the Design Methodology This chapter presents an overview of the design methodology which is developed in this thesis, by identifying global abstraction levels at which a distributed

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

Model-Independent Differences

Model-Independent Differences Model-Independent Differences Patrick Könemann Technical University of Denmark, Informatics and Mathematical Modelling Richard Petersens Plads, DK-2800 Kgs. Lyngby, Denmark pk@imm.dtu.dk Abstract Computing

More information

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards What to Architect? How to Architect? IEEE Goals and Objectives Chartered by IEEE Software Engineering Standards Committee to: Define

More information

Dresden OCL2 in MOFLON

Dresden OCL2 in MOFLON Dresden OCL2 in MOFLON 10 Jahre Dresden-OCL Workshop Felix Klar Felix.Klar@es.tu-darmstadt.de ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dept. of Electrical Engineering and Information Technology

More information

A Metamodel for Specifying Quality Models in Model- Driven Engineering

A Metamodel for Specifying Quality Models in Model- Driven Engineering A Metamodel for Specifying Quality Models in Model- Driven Engineering Parastoo Mohagheghi, Vegard Dehlen SINTEF, P.O.Box 124 Blindern N-0314 Oslo, Norway {Parastoo.Mohagheghi, Vegard.Dehlen}@sintef.no

More information

EGF Creation Review. Benoît Langlois - Thales/TCS/EPM. April 22, 2009

EGF Creation Review. Benoît Langlois - Thales/TCS/EPM. April 22, 2009 EGF Creation Review Benoît Langlois - Thales/TCS/EPM April 22, 2009 Communication Channel URL: http://www.eclipse.org/newsportal/thread.php?group=eclipse.egf Agenda Executive Summary Requirements Mentors

More information

ATL: Atlas Transformation Language. ATL User Manual

ATL: Atlas Transformation Language. ATL User Manual ATL: Atlas Transformation Language ATL User Manual - version 0.7 - February 2006 by ATLAS group LINA & INRIA Nantes Content 1 Introduction... 1 2 An Introduction to Model Transformation... 2 2.1 The Model-Driven

More information

Model Driven Development of Context Aware Software Systems

Model Driven Development of Context Aware Software Systems Model Driven Development of Context Aware Software Systems Andrea Sindico University of Rome Tor Vergata Elettronica S.p.A. andrea.sindico@gmail.com Vincenzo Grassi University of Rome Tor Vergata vgrassi@info.uniroma2.it

More information

The ProjectIT-RSL Language Overview

The ProjectIT-RSL Language Overview The ProjectIT-RSL Language Overview Carlos Videira 1, João Leonardo Carmo 2, Alberto Rodrigues da Silva 3 1 INESC-ID and Universidade Autónoma de Lisboa, Rua de Santa Marta, nº 56, 1169-023 Lisboa, Portugal

More information

Introduction to Modeling

Introduction to Modeling Introduction to Modeling Software Architecture Lecture 9 Copyright Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Objectives Concepts What is modeling? How do we choose

More information

2.5.1: Reforms in Continuous Internal Evaluation (CIE) System at the Institutional Level

2.5.1: Reforms in Continuous Internal Evaluation (CIE) System at the Institutional Level D Y Patil Institute of Engineering and Technology, Ambi, Pune Address:Sr.No.124 & 126, A/p- Ambi, Tal-Maval, MIDC Road, TalegaonDabhade, Pune-410506, Maharashtra, India Tel: 02114306229, E-mail : info@dyptc.edu.in

More information

OCL for the Specification of Model Transformation Contracts

OCL for the Specification of Model Transformation Contracts OCL for the Specification of Model Transformation Contracts Eric Cariou, Raphaël Marvie, Lionel Seinturier, and Laurence Duchien LIFL - Université des Sciences et Technologies de Lille UMR CNRS 8022 -

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution

UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution Le Minh Sang Tran and Fabio Massacci University of Trento, Italy {tran, fabio.massacci}@disi.unitn.it Abstract. Long-living

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services

Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services Stephen Gorton and Stephan Reiff-Marganiec Department of Computer Science, University of Leicester University

More information

Reading part: Design-Space Exploration with Alloy

Reading part: Design-Space Exploration with Alloy Reading part: Design-Space Exploration with Alloy Ing. Ken Vanherpen Abstract In the growing world of MDE many tools are offered to describe a (part of a) system, constrain it, and check some properties

More information

Detecting and Preventing Power Outages in a Smart Grid using emoflon

Detecting and Preventing Power Outages in a Smart Grid using emoflon Detecting and Preventing Power Outages in a Smart Grid using emoflon Sven Peldszus, Jens Bürger, Daniel Strüber {speldszus,buerger,strueber}@uni-koblenz.de University of Koblenz and Landau Abstract We

More information

USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN

USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN THE UML Position Paper to the WTUML: Workshop on Transformations in UML ETAPS 2001 European Joint Conference on Theory and Practice of Software Nuno Jardim

More information

Semantic Information Modeling for Federation (SIMF)

Semantic Information Modeling for Federation (SIMF) Purpose Semantic Information Modeling for Federation (SIMF) Overview V0.2-04/21/2011 The Architecture Ecosystem SIG of the Object Management Group (OMG) is in the process of drafting an RFP focused on

More information

Current trends and frameworks for modeldriven approaches to software development

Current trends and frameworks for modeldriven approaches to software development 1 Current trends and frameworks for modeldriven approaches to software development Trial Lecture Odd Petter Nord Slyngstad Trondheim, 1 st April 2011 Anita Gupta 28/05/2009 2 Overview What is a model-driven

More information

Graph Representation of Declarative Languages as a Variant of Future Formal Specification Language

Graph Representation of Declarative Languages as a Variant of Future Formal Specification Language Economy Informatics, vol. 9, no. 1/2009 13 Graph Representation of Declarative Languages as a Variant of Future Formal Specification Language Ian ORLOVSKI Technical University of Moldova, Chisinau, Moldova

More information

Model Driven Ontology: A New Methodology for Ontology Development

Model Driven Ontology: A New Methodology for Ontology Development Model Driven Ontology: A New Methodology for Ontology Development Mohamed Keshk Sally Chambless Raytheon Company Largo, Florida Mohamed.Keshk@raytheon.com Sally.Chambless@raytheon.com Abstract Semantic

More information

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

Mapping ConcurTaskTrees into UML 2.0

Mapping ConcurTaskTrees into UML 2.0 Mapping ConcurTaskTrees into UML 2.0 Leonel Nóbrega 1, Nuno Jardim Nunes 1 and Helder Coelho 2 1 Department of Mathematics and Engineering, University of Madeira, Campus da Penteada, 9000-390 Funchal,

More information

Interface-based enterprise and software architecture mapping

Interface-based enterprise and software architecture mapping Interface-based enterprise and software architecture mapping Aziz Ahmad Rais Department of Information Technologies University of Economics, Prague Prague, Czech Republic aziz.rais@vse.cz aziz.ahmad.rais@gmail.com

More information

Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder

Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder Petra Brosch, Philip Langer, Martina Seidl, and Manuel Wimmer Institute of Software Technology and Interactive Systems Vienna

More information

Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT

Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT Spoofax: An Extensible, Interactive Development Environment for Program Transformation with Stratego/XT Karl Trygve Kalleberg 1 Department of Informatics, University of Bergen, P.O. Box 7800, N-5020 BERGEN,

More information

Science of Computer Programming. Aspect-oriented model-driven skeleton code generation: A graph-based transformation approach

Science of Computer Programming. Aspect-oriented model-driven skeleton code generation: A graph-based transformation approach Science of Computer Programming 75 (2010) 689 725 Contents lists available at ScienceDirect Science of Computer Programming journal homepage: www.elsevier.com/locate/scico Aspect-oriented model-driven

More information