Development of a Feature Modeling Tool using Microsoft DSL Tools.

Size: px
Start display at page:

Download "Development of a Feature Modeling Tool using Microsoft DSL Tools."

Transcription

1 Development of a Feature Modeling Tool using Microsoft DSL Tools. GIRO Technical Report ver 1.0 (05/01/2009) Rubén Fernández, Miguel A. Laguna, Jesús Requejo, Nuria Serrano. Department of Computer Science, University of Valladolid. Campus M. Delibes, Valladolid, Spain mlaguna@infor.uva.es {rubenkame, jesus.requejo, nuriaserrano}@gmail.com Abstract. Feature models are the basic instrument to analyze and configure the variability of product lines (PL). However, is quite difficult to find a tool that offers enough functionality to develop them and defining their feature models. For that reason, we have built a tool to define and configure the feature diagrams of a product line in order to get the architectural structure of specific products automatically using and MDE approach. Besides, we integrate this tool in the same IDE we will use later to implement the product line, so we concentrate all the phases of the software development process in the same tool. 1. Introduction The product lines approach can be quite complex because of the huge size of most of them. Besides, it is difficult to find a tool that offers enough functionality to develop a PL easily. For that reason, we are working on a tool that simplifies the management of product lines. We have defined our own domain specific language (DSL) to construct feature diagrams. Based on this DSL, we have built a tool that allows the user to represent and manage the variability of a product line. The original definition for features diagrams was FODA [6]. Feature Oriented Domain Analysis proposed features as the basis for analyzing and representing commonality and variability of applications in a domain. A feature represents a system characteristic realized by a software component. There are four types of features in feature modeling: Mandatory, Optional, Alternative, and Or groups of features. We also based our DSL in other feature diagram definitions such as FORM [7] and FeatuRSEB [3].

2 Previously we have manually developed some case studies of PL, however, the productivity (and the complexity in non-trivial product lines) requires the construction and derivation of the different models to be automated. Model Driven Engineering (MDE) is a recent paradigm that bases the software development in models and their transformation to code. The best known approach is Model Driven Architecture (MDA). MDA was introduced by the Object Management Group (OMG) and is based on the Platform Independent Model (PIM) concept, a specification of a system with independence of platforms (e.g..net, or J2EE) [8]. The PIM must be transformed into a Platform Specific Model (PSM) [9]. As the main strength of MDE paradigm is the manipulation of models, it is very convenient use its techniques to define the transformations between feature, goal, and UML models of a product line. This approach requires the establishment of precise rules, using meta-modeling and transformation tools. To establish these rules, the recurring patterns in the feature models must be discovered and correlated to UML structures, in this case UML packages. The connection of the feature model with the design of the solution or product line architecture is usually implemented by an object-oriented framework. This explicit connection allows the instantiation of the domain framework into each specific application to be automated. Figure 1 shows the relationship scheme between these models. To obtain the architectural models from the goal/feature models is not simple. The solution offered by most of the methods proposed in the literature is to register the traceability between features and standard models of UML. Fig. 1. Relationships between the product line models.

3 Using this approach we have developed a tool to automate these transformations from feature models to UML models using Microsoft DSL Tools, in order to integrate the most part of the development process of a PL into the same IDE, in this case Visual Studio DSL Tools is a specific tool integrated as an SDK in Visual Studio 2008 that provides the user a powerful tool to define domain specific languages. We used this tool to define our specific feature model language and build the tool that will be used to modeling our feature diagrams. The aim is to introduce product line as one of the project types provided by the development platform. The interface and underlining meta-model of the FMT is similar to the fmp eclipse plug-in [2] and compatible with it, allowing the direct import of fmp models. The advantages of this FMT are direct integration into the Visual Studio IDE and the possibility of visual representation and manipulation of features and mutex/require constraints. As additional benefits, the package structure of the product line and configuration files can be directly generated. The rest of the document is as follows: The next section explains what a feature model is, and gives and overview of the meta-model used to develop this tool. Section 3 describes the meta-model based patterns used to guide the transformation from the feature diagrams to UML package models. Section 4 shows the environment in which this tool has been built, DSL Tools. Section 5 presents the description of the developed tool. Section 6 refers some related tools and, finally, the Section 7 concludes the document and proposes future work. 2 Feature Diagrams Feature models represent the functional variability of a product line. They connect the goals with the UML models. A feature diagram describes all possible variability of a product line. With a configuration of this diagram we can obtain a definition of a specific product of the PL. There are several definitions of different types of feature diagram; we based our meta-model of feature diagrams in the next: Feature Oriented Domain Analysis [6] proposed features as the basis for analyzing and representing commonality and variability of applications in a domain. A feature represents a system characteristic realized by a software component. There are four types of features in feature modeling: Mandatory, Optional, and Alternative features. Posterior proposals included Or groups of features and cardinality aspects. Besides, it has a textual form to describe constraints. These constraints can be of two different types: require and mutex. Later, Kang et al. have proposed the Feature-Oriented Reuse Method (FORM) [7] as an extension of FODA. Their main motivation was to enlarge the scope of feature modeling. They argue that feature modeling is not only relevant for requirements engineering but also for software design. In terms of feature diagrams, several changes occurred but there is only one change that is relevant for us: feature diagrams

4 are single-rooted directed acyclic graphs (DAG) instead of simple trees and feature names appear in boxes. The FeatuRSEB method [3] is a combination of FODA and the Reuse-Driven Software Engineering Business (RSEB) method. RSEB is a use-case driven systematic reuse process, where variability is captured by structuring use cases and object models with variation points and variants, FeatuRSEB feature diagrams have the following characteristics: 1. They are DAGs, not only trees. 2. Decomposition operator or is added to xor and and. Features whose sons are decomposed through or or xor are called variation points and those sons are called variants. 3. They have a graphical representation (dashed arrows) for the constraints requires and mutex. So, we based our meta-model on these proposals, and we finally have the next elements: Mandatory features: are present in a concept instance if their parent is present. They are shown by a filled circle at the end of the edge. Optional features: may be present only if their parent is present. They are shown by an empty circle at the end of the edge. Alternative features: are a set of features from which one is present if their parent is present. They are shown by an arc grouping their edges. Or groups of features: are a set of features from which a subset of them are present if their parent is present. They are shown by a filled arc grouping their edges. Mutex and requires. These relationships can only exist between features. Requires operator means that when we select a feature the required featured must be selected too. Then mutex operator means that once we choose a feature the other feature must be excluded. Cardinality of the edges shows the number of features that must be selected. This cardinality is represented by a minimum and maximum number between []. For example, [1..3] cardinality means that at least one feature and no more than three features can be selected in a or group of features. After an evaluation of various alternatives, the meta-model proposed by Czarnecki et al. in [1] has been selected because the simplicity of the related transformation. In this

5 approach, the distinctive property of the relationships is the cardinality. Figure 2 shows a simple example of that kind of diagrams. Payment Registered Guest 1..3 PaymentType CreditCard DebitCard ElectronicCheque Fig. 2 Example of a simple feature diagram Figure 3 shows the above-mentioned meta-model. In that meta-model, the relationships are implicit and the source of the transformation must be the cardinality attribute of the features and group of features. Fig. 3 Feature simplified meta-model, adapted from Czarnecki et al. [7]

6 3 From Feature Model to Architectural Model and Code We have discussed in our previous work the advantages and disadvantages of many approaches and proposed to separate completely the representation of variability of the product line from the residual variability of the concrete applications [4]. We use for this the UML package merge mechanism. The package merge mechanism basically consists of adding details to the models in an incremental way. According to the specification of UML 2, <<merge>> is defined as a relationship between two packages that indicates that the contents of both are combined. It is very similar to the generalization and is used when elements in different packages have the same name and represent the same concept, beginning with a common base. The concept is extended incrementally in each separate package. Selecting the desired packages, it is possible to obtain a tailored definition from all the possible ones. Though the examples in UML focus on class diagrams, the mechanism can be extended to any UML model, in particular use cases and sequence diagrams. This mechanism allows a clear traceability between feature and UML models to be established. Each optional feature is described by an optional package of the product line that will be selected or not in function of the concrete configuration of features. The process consists of establishing for each UML model, a base package that embodies the common part of the product line. Then, associated to each optional feature, a new package is built, so that all the necessary changes in the model remain located. This package is connected through the <<merge>> relationship with its base package in the exact point of the package hierarchy. The sense of the relationship expresses the dependence between packages: the base or merged package can always be included in a specific product, the receiving package is an extension of the base package and can only be included if the base package is also selected. This is exactly the way the expert decides which features are included or not during the configuration process, and must be directly reflected in the configuration of packages. In the example of Figure 9, obtained directly from the specification UML 2, the package S includes the classes, C, D, and B, with the peculiarity that A is a specialization of S::D and also includes the details of Q::A. Evidently, the rules that establish the specification of UML 2 are strict in order to avoid inconsistencies. For example, cycles are not allowed, the resulting multiplicity ranges are the least restrictive possible, the operations should conform in number, order and type of parameters, etc. The concepts that UML 2 uses are basically: Merged package (first operand), receiving package (second operand) and resulting package (contains the results of the merge and is the same package as the receiving package after the merge has been performed). Merged element, receiving element and resulting element (element in the resulting package after the merge is performed or unchanged element that have no matching)

7 This mechanism allows a clear traceability between feature and UML models to be established. The application of this mechanism to our problem consists of establishing for each UML model, a base package that embodies the common part of the product line. This base package can be organized in the ordinary way (using recursive package composition and <<import>> or<<access>> relationships). Then, associated to each optional feature, a new package is built, so that all the necessary changes in the model remain located, fulfilling one of the requirements of the previous Section. This package is connected through the<<merge>> relationship with its base package in the exact point of the package hierarchy. The sense of the relationship expresses the dependence between packages: the base or merged package can always be included in a specific product, the receiving package is an extension of the base package and can only be included if the base package is also selected. This is exactly the way the expert decides which features are included or not during the configuration process, and must be directly reflected in the configuration of packages. Fig. 9 Example of the package merge mechanism [5] Even, if it were possible to extend the traceability towards the implementation model using partial classes. In our development process we use the related concept of partial class of C# to implement the product lines. In C# it is possible to split the definition of a class or interface over two or more source files. Each source file contains a section of the class definition, and all parts are combined when the application is compiled to form the final type. The approach that uses C# allows a project (or a solution in Microsoft Visual Studio terminology) to be organized in packages with partial classes. So, if the framework that implements the product line is organized in packages with partial classes (base and variants), for deriving a given specific application, it is enough to import/ reference the packages

8 4 DSL Tools DSL tools is a Microsoft tool integrated in Visual Studio SDK 2008 that allows the user define their own domain specific language. A domain-specific language is used to perform a specific task in a given problem domain. This makes it different from a general-purpose language. By using Domain- Specific Language Tools, you can build customized modeling tools. You can define a modeling language and implement it in a straightforward way. For example, a user of DSL tools can create a specialized language that describes a user interface, a business process, a database, or in our case, feature diagrams. Next, the code can be generated from those descriptions. You can use Domain-Specific Language Tools to generate visual designers that are customized for your problem domain. For example, you can create a tool to describe concepts that are specific to how your organization models business processes. By creating your own domain-specific language and custom-generated designer, you can specify exactly what state chart concepts you need in your tool. That makes DSL Tools a very interesting tool to design our own language for feature diagrams and develop a CASE tool to build this diagrams as is shown in the next section. Figure 4 shows a simple example of how a meta-model for a domain specific language can be defined used DSL tools. We have to define each domain class and their relationships with the other classes. We also have to describe the attributes of these classes and the multiplicity of their relationships. Fig. 4 Example of a DSL definition

9 The next figure presents a DSL cycle life. In the first place we have the definition of the DSL made by the DSL designer using DSL tools by giving a graphical description of the meta-model. In the next step, the DSL has been created and DSL tool has created the CASE tool in order to the DSL user can make their diagrams. Fig. 5 DSL Cycle life 5 Feature Modeling Tool In order to build our tool we have first to give a definition of our DSL using Microsoft DSL Tools. DSL tools allow the user to enter this definition in a graphical way as has been described in the previous section. Figure 6 shows the above-mentioned definition. The left part of the figure presents the definition of the meta-model. The right part of the figure shows the properties of the shapes and graphical representation of the future diagrams. At first, we have to declare that a feature model has always a root feature. That is the meaning of the first relationship shown in the figure below. A feature can have a lot of different kinds of relationships: A feature can have another feature or group feature, or can include or exclude some other features. We have to declare as well the relationships that a group feature can have. In this case a feature group can have some features. Finally, we have to describe what a node is. A node can be a feature or a feature group for that reason we define it using inheritance.

10 Fig. 6 DSL definition for our feature modeling language (1 of 2) Once we have finished the definition of our DSL, compiling the project solution, DSL Tools can create a tool similar to a CASE Tool in order to we can design our models using the meta-model defined previously. Figure 8 shows the main window of the tool.

11 Fig. 7 DSL definition for our feature modeling language (2 of 2).

12 Fig. 8 Main window of the feature modeling tool The tool is divided into three sections. The central window is the model designer, in that part we can create our feature diagrams according to with the rules defined previously. The left part is the model configurator. In that section we have the same information that appears in the designed diagram. From this window we can select the features we want to appear in the future specific product of our product line. If we want to select a feature we have to check the corresponding cell. The changes will propagate automatically to the diagram and the model configurator. The tool checks the multiplicity and the constraints of the features as well. At last, in the third section located in the right part of the window we have the configured project. In that window we can see the transformation into package model of our configuration of the feature model. For each feature in the model will create a package. If we select a feature in the model configurator, its correspondent package will we marked as selected automatically in the configured project window as is shown in the feature, selected package are shown in yellow and will be include in the solution of the project while not selected packages are in white and will be excluded from the solution.

13 In the bottom of the tools there is a button called Export to XMI. Pressing that button we can obtain a file with an XMI description of the package model corresponding to the feature model configuration. We can export that XMI file to a CASE tool obtaining a UML package model. One of the advantages of this FMT is direct integration into the Visual Studio IDE and the possibility of visual representation and manipulation of features and mutex/require constraints. That is a great advantage because in other tools, such as fmp, the declaration of mutex/require constraints must be done using a constraint language like OCL. As additional benefits, the package structure of the product line and configuration files can be directly generated. In that first version of the tool, we are only considering transform the feature model into empty package with their merge relationship as is explained in the third section. 6 Related Work The Eclipse platform provides some similar tools to the now implemented by us, such as the fmp plug-in of Czarnecki et al. [2], that we used formerly to manage the configure product lines. The main problem is that the C# Eclipse environments provide fewer possibilities than those offered by the Microsoft platform and standard Java language has not the partial class mechanism we use to implement the features at code level. The Covamof approach [11] is a variability modeling approach that uniformly models the variability of the software product family in all abstraction layers. It treats variation points and dependencies as first-class citizens and provides means to model the relations between simple and complex dependencies. A completely different approach, focused on implementation instead of requirements or design, is the Feature Oriented Programming (FOP) paradigm the optional features are implemented as increments (refinements) in a java-like language. Starting from a base class, these increments are combined using a set of tools, provided with the AHEAD1 tool suite. AHEAD (Algebraic Hierarchical Equations for Application Design) is a basis for large-scale compositional programming. Features are the building blocks of systems; they are incremental units of program functionality that encapsulate "crosscuts" or fragments of many classes. Feature modules are similar to object-oriented frameworks in that they extend well-known methods of existing classes. Unlike aspects of aspect oriented programming (AOP), there is no quantification other than that used in traditional object-oriented design. The advance of AHEAD is scalability: both code and non-code representations of programs can be synthesized using algebraic models. Further, systems can be suites of different programs; such systems can also be synthesized in AHEAD

14 Other commercial tools, such as Big-Lever Gears or pure variants offer similar functionalities. Though these solutions are valid, the learning of new modeling or implementation techniques and the need of specialized CASE and IDE tools represent barriers for the adoption of the approach of product lines in many organizations; we therefore believe that the solution presented here improves the above mentioned proposals. 7 Conclusions and Future Work We have developed a CASE tool to design and manage the variability of product lines using feature modeling and integrated it into Visual Studio, using the Microsoft DSL tools. The advantages of that feature modeling tool are direct integration into the Visual Studio IDE and the possibility of visual representation and manipulation of features and mutex/require constraints. As additional benefits, the package structure of the product line and configuration files can be directly generated. The interface and underlining meta-model of the FMT is similar to the fmp eclipse plug-in [2] and compatible with it, allowing the direct import of fmp models. We can obtain a file with an XMI description of the package model corresponding to the feature model configuration. We can export that XMI file to a CASE tool obtaining a UML package model. In the first version of our tool we have only considered the transformation of feature models into UML package models, where these packages are empty. We are working on adding the transformations of features to classes and their attributes and even to use case diagrams inside the components of the package model in order to get a more complete and useful design model. 8 References [1] K. Czarnecki, S. Helsen, and U. Eisenecker. Staged Configuration Through Specialization Multi-Level Configuration of Feature Models. Software Process Improvement and Practice, special issue on "Software Variability: Process and Management, 10(2), 2005, pp [2] K. Czarnecki, S. Helsen, U. Eisenecker, Formalizing cardinality- based feature models and their specialization, In Software Process Improvement and Practice, Vol. 10, No. 1, 2005, pp [3] Griss, M.L., Favaro, J., d'alessandro, M., "Integrating feature modeling with the RSEB", Proceedings of the Fifth International Conference on Software Reuse, p , 1998

15 [4] Miguel A.Laguna, Bruno González-Baixauli, José Manuel Marqués, Seamless Development of Software Product Lines: Feature Models to UML Traceability. Sixth International Conference on Generative Programming and Component Engineering (GPCE 07). Salzburg, Austria - oct 2007 [5] Miguel A. Laguna, Bruno González-Baixauli, and José M. Marqués. Feature Patterns and Multi-Paradigm Variability Models (GIRO Technical Report 2008/01-v0.9) University of Valladolid. Spain [6] Kang, K. C., S. Cohen, J. Hess, W. Nowak, and S. Peterson. Feature-Oriented Domain Análisis (FODA) Feasibility Study. Technical Report, CMU/SEI-90-TR-21, Software Engineering Institute (Carnegie Mellon), Pittsburgh, PA [7] Kang, K. C., Kim, S., Lee, J. y Kim, K. FORM: A Feature-Oriented Reuse Method with Domain-Specific Reference Architectures. Annals of Software Engineering, 5: [8] Object Management Group, MDA Guide Version 1.0, 2003 [9] Object Management OMG. Unified modeling language specification version 2.0: Infrastructure. Technical Report ptc/ , OMG, [10] Schobbens, P., Heymans, P., Trigaux, J., and Bontemps, Y Generic semantics of feature diagrams. Comput. Netw. 51, 2, Feb [11] Marco Sinnema, Sybren Deelstra, Jos Nijhuis, Jan Bosch COVAMOF: A Framework for Modeling Variability in Software Product Families. Department of Mathematics and Computing Science, University of Groningen, PO Box 800, 9700 AV Groningen, The Netherlands.

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,

More information

Separating Concerns in Software Logistics

Separating Concerns in Software Logistics Separating Concerns in Software Logistics Danny Greefhorst Software Engineering Research Centre PO Box 424, 3500 AK The Netherlands greefhor@serc.nl Software logistics deals with the storage, administration,

More information

An eclipse-based Feature Models toolchain

An eclipse-based Feature Models toolchain An eclipse-based Feature Models toolchain Luca Gherardi, Davide Brugali Dept. of Information Technology and Mathematics Methods, University of Bergamo luca.gherardi@unibg.it, brugali@unibg.it Abstract.

More information

today 1,700 special programming languages used to communicate in over 700 application areas.

today 1,700 special programming languages used to communicate in over 700 application areas. today 1,700 special programming languages used to communicate in over 700 application areas. Computer Software Issues, an American Mathematical Association Prospectus, July 1965, quoted in P. J. Landin

More information

Carrying Ideas from Knowledge-based Configuration to Software Product Lines

Carrying Ideas from Knowledge-based Configuration to Software Product Lines Carrying Ideas from Knowledge-based Configuration to Software Product Lines Juha Tiihonen 1, Mikko Raatikainen 2, Varvana Myllärniemi 2, and Tomi Männistö 1 1 {firstname.lastname}@cs.helsinki.fi, University

More information

Building a Flexible Software Factory Using Partial Domain Specific Models

Building a Flexible Software Factory Using Partial Domain Specific Models Building a Flexible Software Factory Using Partial Domain Specific Models Jos Warmer 1, Anneke Kleppe 2 3 1 Ordina SI&D, The Netherlands Jos.Warmer@ordina.nl 2 University Twente, Netherlands a.kleppe@utwente.nl

More information

Improving Decision Making in Software Product Lines Product Plan Management

Improving Decision Making in Software Product Lines Product Plan Management Improving Decision Making in Software Product Lines Product Plan Management Pablo Trinidad, David Benavides, and Antonio Ruiz-Cortés Dpto. de Lenguajes y Sistemas Informáticos University of Seville Av.

More information

Run-time Variability Issues in Software Product Lines

Run-time Variability Issues in Software Product Lines Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2004 Vol. 3, No. 3, March-April 2004 Software Product Lines John D. McGregor, Clemson

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Model Driven Interoperability through Semantic Annotations using SoaML and ODM Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:

More information

Using Ontologies in the Domain Analysis of Domain-Specific Languages

Using Ontologies in the Domain Analysis of Domain-Specific Languages Using Ontologies in the Domain Analysis of Domain-Specific Languages Robert Tairas 1, Marjan Mernik 2, Jeff Gray 1 1 University of Alabama at Birmingham, Birmingham, Alabama, USA {tairasr,gray}@cis.uab.edu

More information

How to Configure a Configuration Management System An Approach Based on Feature Modeling

How to Configure a Configuration Management System An Approach Based on Feature Modeling How to Configure a Configuration Management System An Approach Based on Feature Modeling Sebastian Wenzel IBM Business Services GmbH Wilhelm-Fay-Str. 30-34 Frankfurt, Germany wenzel.sebastian@de.ibm.com

More information

Concern Driven Software Development

Concern Driven Software Development Concern Driven Software Development Omar Alam School of Computer Science, McGill University, Montreal, Canada Omar.Alam@mail.mcgill.ca Abstract Model Driven Engineering (MDE) has achieved success in many

More information

Revel8or: Model Driven Capacity Planning Tool Suite

Revel8or: Model Driven Capacity Planning Tool Suite Revel8or: Model Driven Capacity Planning Tool Suite Liming Zhu 1,2, Yan Liu 1,2, Ngoc Bao Bui 1,2,Ian Gorton 3 1 Empirical Software Engineering Program, National ICT Australia Ltd. 2 School of Computer

More information

Unification of AOP and FOP in Model Driven Development

Unification of AOP and FOP in Model Driven Development Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify

More information

An MDA Approach for the Development of Web applications

An MDA Approach for the Development of Web applications An MDA Approach for the Development of Web applications Santiago Meliá Beigbeder and Cristina Cachero Castro {santi,ccachero}@dlsi.ua.es Univesidad de Alicante, España Abstract. The continuous advances

More information

Tool Support for Model Checking of Web application designs *

Tool Support for Model Checking of Web application designs * Tool Support for Model Checking of Web application designs * Marco Brambilla 1, Jordi Cabot 2 and Nathalie Moreno 3 1 Dipartimento di Elettronica e Informazione, Politecnico di Milano Piazza L. Da Vinci,

More information

TDDC88 Lab 2 Unified Modeling Language (UML)

TDDC88 Lab 2 Unified Modeling Language (UML) TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used

More information

Mapping between Levels in the Metamodel Architecture

Mapping between Levels in the Metamodel Architecture Mapping between Levels in the Metamodel Architecture José Álvarez, Andy Evans 2, Paul Sammut 2 Dpto. de Lenguajes y Ciencias de la Computación, University Málaga, Málaga, 2907, Spain alvarezp@lcc.uma.es

More information

Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development

Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development Ahmet Demir Technische Universität München Department of Informatics Munich, Germany AhmetDemir@gmx.de

More information

Managing Variability in Software Architectures 1 Felix Bachmann*

Managing Variability in Software Architectures 1 Felix Bachmann* Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie

More information

SPLConfig: Product Configuration in Software Product Line

SPLConfig: Product Configuration in Software Product Line SPLConfig: Product Configuration in Software Product Line Lucas Machado, Juliana Pereira, Lucas Garcia, Eduardo Figueiredo Department of Computer Science, Federal University of Minas Gerais (UFMG), Brazil

More information

A Methodological Approach to Domain Engineering for Software Variability Enhancement

A Methodological Approach to Domain Engineering for Software Variability Enhancement A Methodological Approach to Domain Engineering for Software Variability Enhancement Alexandre Bragança 1,2 and Ricardo J. Machado 3 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal,

More information

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Tool Support for Software Variability Management and Product Derivation in Software Product Lines Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,

More information

1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book.

1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book. * ** Today s organization increasingly prompted to integrate their business processes and to automate the largest portion possible of them. A common term used to reflect the automation of these processes

More information

Analysis of the Specifics for a Business Rules Engine Based Projects

Analysis of the Specifics for a Business Rules Engine Based Projects Analysis of the Specifics for a Business Rules Engine Based Projects By Dmitri Ilkaev and Dan Meenan Introduction In recent years business rules engines (BRE) have become a key component in almost every

More information

Bridging Programming Productivity, Expressiveness, and Applicability: a Domain Engineering Approach

Bridging Programming Productivity, Expressiveness, and Applicability: a Domain Engineering Approach Bridging Programming Productivity, Expressiveness, and Applicability: a Domain Engineering Approach Oded Kramer and Arnon Sturm Department of Information Systems Engineering, Ben-Gurion University of the

More information

COCOVILA Compiler-Compiler for Visual Languages

COCOVILA Compiler-Compiler for Visual Languages LDTA 2005 Preliminary Version COCOVILA Compiler-Compiler for Visual Languages Pavel Grigorenko, Ando Saabas and Enn Tyugu 1 Institute of Cybernetics, Tallinn University of Technology Akadeemia tee 21 12618

More information

today 1,700 special programming languages used to communicate in over 700 application areas.

today 1,700 special programming languages used to communicate in over 700 application areas. today 1,700 special programming languages used to communicate in over 700 application areas. Computer Software Issues, an American Mathematical Association Prospectus, July 1965, quoted in P. J. Landin

More information

The BPM to UML activity diagram transformation using XSLT

The BPM to UML activity diagram transformation using XSLT The BPM to UML activity diagram transformation using XSLT Ondřej Macek 1 and Karel Richta 1,2 1 Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University,

More information

Mining Complex Feature Correlations from Large Software Product Line Configurations

Mining Complex Feature Correlations from Large Software Product Line Configurations Technical Report of AGSE April 3, 2013 Mining Complex Feature Correlations from Large Software Product Line Configurations Bo Zhang Software Engineering Research Group University of Kaiserslautern Kaiserslautern,

More information

The Nature and Importance of a Programming Paradigm

The Nature and Importance of a Programming Paradigm Multiple Software Development Paradigms and Multi-Paradigm Software Development Valentino Vranić vranic@elf.stuba.sk Abstract: While OOP (including OOA/D) is reaching the level of maturity of structured

More information

BOM Lazy: A Variability-Driven Framework for Software Applications Production Using Model Transformation Techniques

BOM Lazy: A Variability-Driven Framework for Software Applications Production Using Model Transformation Techniques BOM Lazy: A Variability-Driven Framework for Software Applications Production Using Model Transformation Techniques Abel Gómez Dep. of Information Systems and Computation Universidad Politécnica de Valencia

More information

Software Product Lines

Software Product Lines Software Product Lines Software Product Line Engineering and Architectures Bodo Igler and Burkhardt Renz Institut für SoftwareArchitektur der Technischen Hochschule Mittelhessen Sommersemester 2015 Questions:

More information

Object Oriented Programming. Risk Management

Object Oriented Programming. Risk Management Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling

More information

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations CHROME: A Model-Driven Component- Based Rule Engine Jairson Vitorino PhD Thesis, CIn-UFPE February 2009 Supervisor: Prof. Jacques Robin Ontologies Reasoning Components Agents Simulations Contents 1. Context

More information

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems 1 2 Model-Based Development of -Critical Systems Miguel A. de Miguel 5/6,, 2006 modeling Stakes 3 Context 4 To increase the industrial competitiveness in the domain of software systems To face the growing

More information

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS

ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: hasni.neji63@laposte.net;

More information

Project VIDE Challenges of Executable Modelling of Business Applications

Project VIDE Challenges of Executable Modelling of Business Applications Project VIDE Challenges of Executable Modelling of Business Applications Radoslaw Adamus *, Grzegorz Falda *, Piotr Habela *, Krzysztof Kaczmarski #*, Krzysztof Stencel *+, Kazimierz Subieta * * Polish-Japanese

More information

Preparing for Automated Derivation of Products in a Software Product Line

Preparing for Automated Derivation of Products in a Software Product Line Preparing for Automated Derivation of Products in a Software Product Line John D. McGregor September 2005 TECHNICAL REPORT CMU/SEI-2005-TR-017 ESC-TR-2005-017 Pittsburgh, PA 15213-3890 Preparing for Automated

More information

Language-Driven, Technology-Enhanced Instructional Systems Design

Language-Driven, Technology-Enhanced Instructional Systems Design Language-Driven, Technology-Enhanced Instructional s Design Iván Martínez-Ortiz, José-Luis Sierra, Baltasar Fernández-Manjón Fac. Informática. Universidad Complutense de Madrid C/ Prof. José García Santesmases

More information

Software Engineering Reference Framework

Software Engineering Reference Framework Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of

More information

Business Process Measures

Business Process Measures Business Process Measures Valdis Vitolins University of Latvia, IMCS, 29 Raina blvd, LV-459, Riga, Latvia valdis_vitolins@exigengroup.lv Abstract. The paper proposes a new methodology for defining business

More information

PATTERN-BASED BUSINESS-DRIVEN ANALYSIS AND DESIGN OF SERVICE ARCHITECTURES

PATTERN-BASED BUSINESS-DRIVEN ANALYSIS AND DESIGN OF SERVICE ARCHITECTURES PATTERN-BASED BUSINESS-DRIVEN ANALYSIS AND DESIGN OF SERVICE ARCHITECTURES Veronica Gacitua-Decar and Claus Pahl School of Computing, Dublin City University, Glasnevin, Dublin 9, Ireland. vgacitua@computing.dcu.ie,

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2007 Vol. 6, No. 1, January-February 2007 CM Configuration Change Management John D.

More information

Managing Variability in ALPR Software

Managing Variability in ALPR Software Managing Variability in ALPR Software Dr. Marco Sinnema Product Manager Video and ALPR, Q-Free ASA P.O. Box 180, 9410 AD Beilen, The Netherlands tel. +31 593 542055, fax. +31 593 542098 marco.sinnema@q-free.com

More information

An Overview of Feature-Oriented Software Development

An Overview of Feature-Oriented Software Development Vol. 8, No. 5, July August 2009 An Overview of Feature-Oriented Software Development Sven Apel, Department of Informatics and Mathematics, University of Passau, Germany Christian Kästner, School of Computer

More information

A Configuration Management Model for Software Product Line

A Configuration Management Model for Software Product Line A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer

More information

MDE Adoption in Industry: Challenges and Success Criteria

MDE Adoption in Industry: Challenges and Success Criteria MDE Adoption in Industry: Challenges and Success Criteria Parastoo Mohagheghi 1, Miguel A. Fernandez 2, Juan A. Martell 2, Mathias Fritzsche 3 and Wasif Gilani 3 1 SINTEF, P.O.Box 124-Blindern, N-0314

More information

Wiki Based Requirements Documentation of Generic Software Products

Wiki Based Requirements Documentation of Generic Software Products Wiki Based Requirements Documentation of Generic Software Products Clara Silveira 1, João Pascoal Faria 2,3, Ademar Aguiar 2,3, Raul Vidal 2 1 Escola Superior Tecnologia Gestão do Instituto Politécnico

More information

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1 SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

Development of Tool Extensions with MOFLON

Development of Tool Extensions with MOFLON Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de

More information

Model Driven Development of Inventory Tracking System*

Model Driven Development of Inventory Tracking System* Model Driven Development of Inventory Tracking System* Gan Deng, Tao Lu, Emre Turkay Andrey Nechypurenko Aniruddha Gokhale, Douglas Schmidt ISIS, Vanderbilt University Siemens Nashville, TN 37221 Germany

More information

SysML Modelling Language explained

SysML Modelling Language explained Date: 7 th October 2010 Author: Guillaume FINANCE, Objet Direct Analyst & Consultant UML, the standard modelling language used in the field of software engineering, has been tailored to define a modelling

More information

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process 1 2 3 What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process modeling, and for more generalized modeling purposes.

More information

INNOVATOR. The integrated tool suite for business process and software engineering

INNOVATOR. The integrated tool suite for business process and software engineering The integrated tool suite for business process and software engineering Use the synergy: The integrated tool suite for business process and software engineering is the only integrated tool suite for business

More information

Managing Variability in Software Product Lines

Managing Variability in Software Product Lines Managing Variability in Software Product Lines Jilles van Gurp, Jan Bosch, Mikael Svahnberg 1 University of Groningen POBOX 800 9700 AV Groningen The Netherlands [jilles jan.bosch]@cs.rug.nl, msv@ipd.hk-r.se

More information

Supporting Software Development Process Using Evolution Analysis : a Brief Survey

Supporting Software Development Process Using Evolution Analysis : a Brief Survey Supporting Software Development Process Using Evolution Analysis : a Brief Survey Samaneh Bayat Department of Computing Science, University of Alberta, Edmonton, Canada samaneh@ualberta.ca Abstract During

More information

Towards an Integration of Business Process Modeling and Object-Oriented Software Development

Towards an Integration of Business Process Modeling and Object-Oriented Software Development Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de

More information

How To Design An Information System

How To Design An Information System Information system for production and mounting of plastic windows MARCEL, MELIŠ Slovak University of Technology - Faculty of Material Sciences and Technology in Trnava, Paulínska 16 street, Trnava, 917

More information

Modeling Dependent Software Product Lines

Modeling Dependent Software Product Lines Modeling Dependent Software Product Lines Marko Rosenmüller, Norbert Siegmund, Christian Kästner, Syed Saif ur Rahman School of Computer Science, University of Magdeburg, Germany {rosenmue, nsiegmun, kaestner,

More information

Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools

Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools Michaela Rindt, Timo Kehrer, Udo Kelter Software Engineering Group University of Siegen {mrindt,kehrer,kelter}@informatik.uni-siegen.de

More information

25.1 Translational Frameworks (MDA with transformations)

25.1 Translational Frameworks (MDA with transformations) Literature TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25. From Code Frameworks to Model-Driven Architecture (MDA) and Component-Based Software Development (CBSD) Prof.

More information

Automatic Test Data Generation for TTCN-3 using CTE

Automatic Test Data Generation for TTCN-3 using CTE Automatic Test Data Generation for TTCN-3 using CTE Zhen Ru Dai, Peter H. Deussen, Maik Busch, Laurette Pianta Lacmene, Titus Ngwangwen FraunhoferInstitute for Open Communication Systems (FOKUS) Kaiserin-Augusta-Allee

More information

MDA Transformations Applied to Web Application Development 1

MDA Transformations Applied to Web Application Development 1 MDA Transformations Applied to Web Application Development 1 Santiago Meliá 1, Andreas Kraus 2, and Nora Koch 2, 3 1 Universidad de Alicante, Spain 2 Ludwig-Maximilians-Universität München, Germany 3 F.A.S.T

More information

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems OMG MDA Overview by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page:1 Trademarks Object Management Group, OMG, CORBA, Model Driven Architecture, MDA, Unified Modeling Language, UML,

More information

A Pattern-based Framework to Address Abstraction, Reuse, and Cross-domain Aspects in Domain Specific Visual Languages *

A Pattern-based Framework to Address Abstraction, Reuse, and Cross-domain Aspects in Domain Specific Visual Languages * A Pattern-based Framework to Address Abstraction, Reuse, and Cross-domain Aspects in Domain Specific Visual Languages * David Oglesby, Kirk Schloegel, Devesh Bhatt, Eric Engstrom Honeywell Laboratories

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

Modeling the User Interface of Web Applications with UML

Modeling the User Interface of Web Applications with UML Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de

More information

UML PROFILING AND DSL

UML PROFILING AND DSL UML PROFILING AND DSL version 17.0.1 user guide No Magic, Inc. 2011 All material contained herein is considered proprietary information owned by No Magic, Inc. and is not to be shared, copied, or reproduced

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

From Business World to Software World: Deriving Class Diagrams from Business Process Models

From Business World to Software World: Deriving Class Diagrams from Business Process Models From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254

More information

Domain Models and Product Lines

Domain Models and Product Lines Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Domain Models and Product Lines Prof. Dr. U. Aßmann Technische Universität Dresden Institut für Software-

More information

A Variability Viewpoint for Enterprise Software Systems

A Variability Viewpoint for Enterprise Software Systems 2012 Joint Working Conference on Software Architecture & 6th European Conference on Software Architecture A Variability Viewpoint for Enterprise Software Systems Matthias Galster University of Groningen,

More information

Toward Families of QVT DSL and Tool

Toward Families of QVT DSL and Tool Toward Families of QVT DSL and Tool Benoît Langlois, Daniel Exertier, Ghanshyamsinh Devda Thales Research & Technology RD 128 91767 Palaiseau, France {benoit.langlois, daniel.exertier, ghanshyamsinh.devda}@thalesgroup.com

More information

Co-Creation of Models and Metamodels for Enterprise. Architecture Projects.

Co-Creation of Models and Metamodels for Enterprise. Architecture Projects. Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez pa.gomez398@uniandes.edu.co Hector Florez ha.florez39@uniandes.edu.co ABSTRACT The linguistic conformance and the ontological

More information

Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes. Nikolas Hofmann 08.11.2012

Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes. Nikolas Hofmann 08.11.2012 Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes Nikolas Hofmann Introduction Biosignal analysis has versatile applications in medicine Mobile devices allow

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

PHP Code Design. The data structure of a relational database can be represented with a Data Model diagram, also called an Entity-Relation diagram.

PHP Code Design. The data structure of a relational database can be represented with a Data Model diagram, also called an Entity-Relation diagram. PHP Code Design PHP is a server-side, open-source, HTML-embedded scripting language used to drive many of the world s most popular web sites. All major web servers support PHP enabling normal HMTL pages

More information

e-gateway SOLUTION OVERVIEW Financials HCM ERP e-gateway Web Applications Mobile Devices SharePoint Portal

e-gateway SOLUTION OVERVIEW Financials HCM ERP e-gateway Web Applications Mobile Devices SharePoint Portal e-gateway SOLUTION OVERVIEW In an effort to manage mission critical information better, perform their daily tasks more efficiently, share information to key stakeholders more effectively, and ensure that

More information

Towards Collaborative Requirements Engineering Tool for ERP product customization

Towards Collaborative Requirements Engineering Tool for ERP product customization Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

What is a metamodel: the OMG s metamodeling infrastructure

What is a metamodel: the OMG s metamodeling infrastructure Modeling and metamodeling in Model Driven Development Warsaw, May 14-15th 2009 Gonzalo Génova ggenova@inf.uc3m.es http://www.kr.inf.uc3m.es/ggenova/ Knowledge Reuse Group Universidad Carlos III de Madrid

More information

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool White Paper Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool Writer: CFPS M.E. Dipl.-Ing. M. Öztürk, Update: 01 March 2011 Introduction The Purpose of this paper is to give

More information

Clarifying a vision on certification of MDA tools

Clarifying a vision on certification of MDA tools SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 23 29 P. Clarifying a vision on certification of MDA tools Antons Cernickins Riga Technical University,

More information

MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS

MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS MODEL DRIVEN DEVELOPMENT OF BUSINESS PROCESS MONITORING AND CONTROL SYSTEMS Tao Yu Department of Computer Science, University of California at Irvine, USA Email: tyu1@uci.edu Jun-Jang Jeng IBM T.J. Watson

More information

UML Profiling Comes of Age Realizing the Potential of Domain-Specific Modeling

UML Profiling Comes of Age Realizing the Potential of Domain-Specific Modeling UML Profiling Comes of Age Realizing the Potential of Domain-Specific Modeling PATHS TO DOMAIN-SPECIFIC MODELING... 1 UML PROFILING... 2 The Origin of the UML Profiling Specifications... 2 The Vision...

More information

Software Product Line Modeling

Software Product Line Modeling Aachen Department of Computer Science Technical Report Modelling Requirements and Architectures for Software Product Lines Horst Lichter, Thomas von der Maßen and Thomas Weiler ISSN 0935 3232 Aachener

More information

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS 7th International DAAAM Baltic Conference INDUSTRIAL ENGINEERING 22-24 April 2010, Tallinn, Estonia SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS Lemmik, R.; Karjust, K.;

More information

Update on the OMG PRR Standard

Update on the OMG PRR Standard Update on the OMG PRR Standard Paul Vincent TIBCO Software Inc. MarkupLanguages 2008 Conference 2 Why am I here? (Where do Standards Fit in Commercial IT Tools?) Best Practices Technical Partner Service

More information

Increasing Development Knowledge with EPFC

Increasing Development Knowledge with EPFC The Eclipse Process Framework Composer Increasing Development Knowledge with EPFC Are all your developers on the same page? Are they all using the best practices and the same best practices for agile,

More information

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Text book of CPET 545 Service-Oriented Architecture and Enterprise Application: SOA Principles of Service Design, by Thomas Erl, ISBN

More information

Evaluating OO-CASE tools: OO research meets practice

Evaluating OO-CASE tools: OO research meets practice Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht

More information

Process Patterns for Component-Based Software Development

Process Patterns for Component-Based Software Development Process Patterns for -Based Software Development Ehsan Kouroshfar, Hamed Yaghoubi Shahir, and Raman Ramsin Department of Computer Engineering Sharif University of Technology kouroshfar@ce.sharif.edu, yaghoubi@ieee.org,

More information

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS Edwin Hautus Compuware Europe P.O. Box 12933 The Netherlands edwin.hautus@nl.compuware.com Abstract Packages are an important mechanism to decompose

More information

Eclipse BPMN Modeler Introducing Intalio Designer

Eclipse BPMN Modeler Introducing Intalio Designer Eclipse BPMN Modeler Introducing Intalio Designer Arnaud Blandin Ismael Ghalimi Hugues Malphettes Intalio Inc, EMEA Manager Intalio Inc, CEO Intalio Inc, Lead Developer 6 rue du conseil general 1205 Geneva

More information

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts Banu Aysolmaz 1 and Onur Demirörs 2 1, 2 Informatics Institute, Middle East Technical University, Ankara,

More information

A Service Oriented Product Line Architecture for E- Government

A Service Oriented Product Line Architecture for E- Government A Service Oriented Product Line Architecture for E- Government Ines Achour 1, Lamia Labed 2, Rim Helali 2 and Henda Ben Ghazela 1 1 Computer Science Department, Manouba University/ ENSI/ Lab. RIADI-GDL,

More information