Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development
|
|
- Linda Wilkerson
- 8 years ago
- Views:
Transcription
1 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 Abstract Model-Driven Development aims to leverage models to generate the specified software system. Two currently dominant approaches to Model-Driven Development are Model-Driven Architecture and Software Factories. The goal of this paper is to analyze the advantages, disadvantages and the applicability of these two approaches. A basis for the analysis provides a case study comparing Model- Driven Architecture and Software Factories. The comparison focuses on the development activities and challenges of both. The subsequent analysis covers their purposed modeling languages, expected benefits like higher productivity and higher efficiency, and the main objectives of both approaches. 1. Introduction Model-Driven Development (MDD) is a software engineering methodology with particular focus on models, automation and code generation. The difference to traditional software development is that MDD proposes to leverage models to generate the specified software system. Two currently dominant approaches to MDD are Model-Driven Architecture (MDA) [6] and Software Factories (SF) [4]. MDA, owned by the Object-Management Group (OMG) [8], proposes to apply the Unified-Modeling Language (UML) [10], also owned by the OMG. Due to aspects like platform independence and reusability, the software system is supposed to be modeled in three major steps, described further down. SF, as proposed by Microsoft, is an entire software development paradigm, which makes use of Domain- Specific Modeling (DSM) [3]. In this manner, SF and particularly its DSM part is the second considered MDD approach in the context of this paper. SF proposes to utilize Domain-Specific-Languages (DSLs) for modeling. In order to apply the two approaches, a web-based application named Bookstore Administration Center (BAC), an administration tool that shows, appends, edits or deletes books from a bookstore will be developed. The BAC is developed first applying MDA and then SF. Both variants are developed by on single person. The experiences made during the development phases are compared, analyzed and evaluated. It turns out that both approaches demonstrate strengths and weaknesses, but both are able to achieve the expected benefits. Important is that their intended purpose plays a decisive role in achieving the benefits. 2. Model-driven development Model-Driven Development (MDD) aims to leverage models for automatically generating applications with appropriate code generation techniques and templates. Models are already used to specify software systems, but unfortunately these models mostly serve only for the purpose of documentation and comprehending the system. Changing this fact by using these existent models to generate the application, software development can easily be automated. By automatic code generation, the quality of an application can be increased, due to the fact that code is produced according to a certain structure, scheme or rules. In this way the generated code will precisely match the models. Further on this road the evolution could lead to the fact that modeling languages replace the implementation languages, just like the way third-generation languages replaced the assembly languages through the introduction of compilers.
2 3. Model-Driven Architecture Impelled from the idea that models are vital and necessary to handle complexity in software development, Model-Driven Architecture (MDA) [6] specifies a process for creating models. 3.1 The Unified Modeling Language The Unified-Modeling Language (UML) [10] is the proposed modeling language for MDA. According to [9], UML s architecture is represented by a four layer hierarchy as shown in Figure 1. On the top of this hierarchy is the meta-metamodel layer (M3), also known as the Meta-Object Facility (MOF) [7] layer, followed by the metamodel layer (M2) representing the UML. The third layer is model layer (M1), where the actual modeling process takes place. The architectural hierarchy bottoms out at the data layer (M0), which contains the run-time instances of a model. system, continuing with the Platform Independent Model (PIM) encapsulating the entire software specification, apart from the any platform specific aspects, the modeling process finishes with the enhancement of the PIM to a Platform Specific Model (PSM). The PSM binds the software system to a specific platform. 3.3 Model transformation The focus at this point is on the last model transformation of MDA, which results in the application, expressed in a programming language. The result can also be in form of deployment descriptors or configuration files. The transformation can also be considered as mapping. Beyond the code generator, there is a need for rules describing the way how model-elements shall be mapped into code. Figure 2 illustrates the MDA process. The first transformation refers to the process where the PIM is transformed into a PSM. A PIM and a PSM can also be transformed into a more detailed version of itself. This is marked as refinement. The mapping into the desired programming language is called second transformation in Figure Software Factories Figure 1 - An example of UML s four-layer architecture [9] Furthermore, UML provides extension mechanisms (Stereotypes, Tagged Values and Constraints) to extend or specialize itself for specific purposes. A collection of Stereotypes, Tagged Values and Constraints is called a UML Profile. Profiles are necessary and needed in the context of MDA, because they facilitate code generation. 3.2 Basic concepts of MDA Platform independency is the primary goal of MDA. Particularly due to this aspect, the software system is supposed to be modeled in three major steps. Starting with the Computational Independent Model (CIM) to present a high-level overview of the software Microsoft introduces Software Factories (SF) [4] as a new software development paradigm. SF primarily focuses on Product Line Development, which copes with developing a set of similar but distinct products. In this context SF relies heavily on models and automation, which are basic concerns of MDD. This paper will focus on the MDD concerned aspects of SF. 4.1 Software Factory methodology Jack Greenfield and Keith Short define the methodology Software Factory [4] as followed: A Software Factory is a Software Product Line that configures extensible tools, processes, and content using a software factory template based in a software factory schema to automate the development and maintenance of variants of an archetypical product by adapting, assembling, and configuring framework based components. A Software Factory has two central elements, a Software Factory Schema and a Software Factory Template. A SF Schema defines, categorizes and summarizes the artifacts and assets required to build a
3 Figure 2 - MDA process software product line. It can be seen as a recipe listing ingredients, tools and the application process. A SF Template is based on the SF Schema and represents the implementation of the SF Schema that means that all defined assets and artifacts have to be built and made available. The implementation comprises among others developing DSLs. The SF Template can be seen as a bag of groceries containing the ingredients listed in the recipe (SF Schema). A core principle of the SF approach is to enable a high degree of reuse of existing assets and development of new reusable assets. The development of a specific member of a product family comprises reusing existing assets and developing variable assets for that specific member. The SF approach uses the concept of Domain-Specific Modeling (DSM), which utilizes Domain-Specific Languages (DSLs) for modeling. 5. Case study The architecture of a DSL is similar to UML s architecture, which is also represented by a four-layer hierarchy. The significant difference is that the metamodel layer (corresponding to UML s M2 layer) has to be defined, while UML s metamodel layer is already defined and can be extended by Profiles. The mapping of a DSL model into a programming language is conducted by an appropriate code generator, which must be designed and developed for a given DSL or at least be configurable to tailor its task to a specific domain. A DSL is mapped to a programming language, just as a programming language like Java is mapped into byte code. According to this analogy, the compiler would correspond to the code generator. The case study described in [2] comprises a product line with three similar but distinct web applications. 1. Bookstore Administration Center (BAC) - An administration tool that allows authorized users to show, edit, add or delete books from a bookstore. 2. Online Bookstore (OBS) - Users can browse and buy books and have them shipped. 3. Online Music Shop (OMS) - Users can browse, buy and download MP3 songs 4.2 Domain-specific modeling The purpose of DSM serves primarily for the creation of models for computation and secondarily for documentation. Models should be able to be processed by tools to generate source code out of them. DSM aims to bridge the gap between the problem domain and the solution domain by the means of abstraction. DSLs raise the level of abstraction by incorporating domain concepts. A DSL uses concepts and terms of the problem domain and provides specific graphical and textual notations to create models, thus it is very close to the problem domain. The more a DSL can be tailored to a specific domain or purpose the more efficient the DSL and the code generation will be. Figure 3 - Use case diagram for BAC The MDA approach will be applied by modeling the BAC. The SF approach will be applied by deriving a DSL according to the features of the entire product line. The expense of creating a DSL can only be compensated by using the DSL for modeling multiple
4 similar products. Therefore, the DSL is derived from, and created for a complete product line. In order to assure and demonstrate the SF methodology within this case study, the DSL is derived as assumed, but implemented including only the features of the BAC, since this is sufficient for the purpose of the comparison. The DSL can easily be extended to cover the entire product line. The functionality of the BAC is very simple and should be clear by the use case diagram in Figure MDA solution In order to apply the MDA approach, a MDA tool named ArcStyler [1] is utilized. ArcStyler provides several UML Profiles to develop software systems, amongst others a UML Profile for developing web applications. This Profile contains two stereotypes, one named Accessor and the other named Representer. The Accessor is used to model objects that are responsible for the graphical aspect of a web application, while the Representer is used for modeling objects that encapsulate behavior. The BAC is modeled with two Accessor objects for handling user requests and seven Representer objects for handling the graphical representation. Only the objects with the suffix Page do really display data. The others handle concerns like layout and menu. ArcStyler enables defining graphical elements (e.g. buttons, text fields, etc.) for a Representer object and mapping its class attributes to the graphical elements. Figure 4 illustrates the Class diagram of the BAC. The behavior of the application is still to be defined. This is realized by defining one Activity diagram for each Accessor class. Figure 5 shows the Activity diagram for the MainAccessor. The entire behavior of the application is encapsulated in the MainAccessor. Merely the authentication procedure is handled by the LoginAccessor. All states in Figure 5 are nested states within the base state application, which is active as long as the application is running. All states with the suffix View are mapped to the corresponding Representer object from the class diagram. For example, the application starts in the StartPageView state, which displays the StartPage object with its graphical elements. Within this state the user can select a book and request its details. That means that the transition to the DetailedPageView represents the response of the MainAccessor, sending the DetailedPage object, to the user. The transformation of the PIM into a PSM is determined by choosing the desired programming language and further not obvious for the ArcStyler user. In coherence with the utilized UML Profile, ArcStyler provides mapping rules for the built-in model interpreter to process the diagrams and generate the artifacts for the modeled application. For each Class from the class diagram is one Java file generated. Additionally for each Representer, a JSP file. After the generation process, the source code must be enhanced, which turns out to be a difficult task, because the generated source code is opaque and thus difficult to comprehend. Methods annotated in the diagrams as comments, are added to the LoginAccessor and the MainAccessor. 5.2 Software Factories solution Figure 4 Class diagram for BAC The SF approach assumes to create a Problem Domain Matrix (PDM) to show the highlevel features of the product line. A PDM lists all possible features of the products on the left and the product line members on the top (see Table 1). If a feature applies to a product, the according row and column will be marked with a x. In the
5 Producttype element further contains an element named Attribute for specifying its attributes (e.g. name, author, year, etc.). In this manner the DSL is build hierarchically. Furthermore, the DSL contains elements to display the data (e.g. Page, Button, Form, etc.), which actually appear as solution domain aspects, but in this case of problem domain they also represent problem domain aspects. The hierarchical structure is also applied for these elements, because the Page element contains Figure 5 - Activity Diagram for MainAccessor elements like Button, Textfield, Form, etc. The main functionality of web-applications is determined by processing user requests and sending responses to the users, particularly by manipulating data and providing the content for the graphical representation. Therefore the DSL includes a Controller element to capture this task, and a LoginController element to handle the authentication process. The Controller elements correspond to the Accessor objects in the MDA solution. The DSL additionally comprises associations between its elements, for example, a Page element needs to know what kind of data to display, therefore it can be associated with the Producttype or Store element. These connections can be more detailed by associating the elements within a Page (e.g. Textfield, Form, etc.) with the Attribute elements of a Producttype element. Although the amount of features that the DSL supports is fairly small, the DSL definition (metamodel) turned out to be complex, because the DSL is designed to model graphical, functional and data aspects. Developing a DSL is time-consuming and sophisticated. Highly skilled software engineers with problem domain experience should design DSLs. Once created, a DSL can be used by requirements engineers, by other domain experts and in general by people with less programming experience and even be understood and comprehended by the customer. next step, a Solution Domain Matrix (see Table 2) is derived from the PDM. Both have the same structure. The product features will be mapped to the solution domain, thus they become more detailed. The purpose of the matrices is to show commonalities and variabilities of the product line and to derive an appropriate DSL. In order to develop a DSL, a DSL tool named Generic Modeling Environment (GME) [5] is utilized. Among others, GME provides a meta-modeling language named MetaGME. It can be compared to OMG s MOF [7] and is used to develop the DSL. GME can then be used as an editor to apply the developed DSL Developing the DSL: The purpose of the DSL is to model web-applications like those mentioned above. The data that is processed by the applications plays a minor role in this case. The major role is assigned to the structure of such a web application. Thus, the problem domain can be set to web-applications and narrowed down to webapplications coping with one or two products (e.g. Books, MP3s, CDs). In this manner, the DSL contains elements for specifying the data objects, for example a Store element for modeling a Bookstore or a Music store. Since the elements of a store can be of different types, the DSL includes additionally an element named Producttype, for modeling Books, MP3s, etc. The
6 Table 1- Problem Domain Matrix Table 2 - Solution Domain Matrix BAC OMS OBS BAC OMS OBS Data Model Req. Data Model Store X X X store name (String) X X X Product X X X Product string attributes X X X Business Logic Rq. Business Logic Use cases X X X Use cases list all products X X X list all products X X X list product details X X X list product details X X X edit product X edit product X delete product X delete product X add product X add product X buy product X X buy product X X download product X download product X read online X read online X payment X X payment X X Authentication X X X Authentication Mapping login validation Registration X X Registration X X X registration validation X X User interface Req. User interface www pages JSP pages menu X X X menu (JSP fragment) X X X menu item X X X menu item (button) X X X transition element X X X transition element HTML link X X X HTML button X X X content element X X X content element header X X X static textfield X X X HTML table user input element X X X user input element editable textfield X X X HTML forms X X X Common style X X X Common style X X X Authentication login mask X X X Registration registration mask X X Applying the DSL: Figure 6 shows the DSLbased model of the BAC. Instead of describing the entire model, only the important elements will be addressed briefly. In order to model the data objects of the BAC, the Store element is used to specify a BookStore object and the Producttype element to specify a Book object. The attributes (e.g. author, title, price, etc.) of a book are modeled by using the Attribute element of the Book object. Furthermore, the BAC consists of several web pages with different content. For example the StartPage is modeled using a Page element. Since it displays all books of the bookstore, it is associated with the BookStore object. However, the DetailedPage object specifies the web page displaying the details of a previously selected book. In this case it requires an association to the Book object and the contained elements (e.g. Button, Form, Textfield) require additionally associations to the Attribute elements of the Book, particularly in order to specify which attributes of the book to display. The other Page objects (LoginPage, DetailedPage, etc.) are modeled analogously. Beside the web pages, two Controller objects are defined. The LoginController supports the Login process and the MainController handles all other user requests. All Page objects have to be associated with a
7 Controller object, because a Controller has to know which Page sends the request and which Page is to be sent to the user. A request can be started by an action object (Form, Button or ContentList). In order to know which Page to request, an action object has to be associated with the requested Page object, for example, the EditButton within the DetailedPage object is associated with the EditPage object, specifying that, this is the page to request by pushing this button. Figure 6 - DSL based BAC model Developing the code generator: The experiences made during the case study showed that it is necessary to consider the issue of code generation while creating the DSL. The development of the code generator seems to be a subsequent task to the development of the DSL. In fact they are closely related and constrained by the capabilities of the code generator to map model elements to code constructs. Thus, it is highly recommended to consider this task already during the development of the DSL, because it happened that the code generator required model information, which could not be retrieved due to a missing association in the metamodel of the DSL. Thus, the DSL metamodel had to be enhanced. GME provides a framework, the Builder Object Network, to develop code generators for MetaGMEbased modeling languages. This framework exposes the entire DSL model including its objects and associations as a set of Java objects. This set can then be used to generate appropriate code for each modeled object. Convenient methods to access the objects properties, attributes and associations allow to navigate within this set. The functionality of the code generator is basically separated into three components, the Invoker component, the Handler component and the Generator component. The Invoker component is composed of one single class providing the above mentioned set of Java objects. The Handler component contains classes for retrieving and gathering information from the objects, while the Generator component is composed of classes for generating source code. Each DSL element on the top level (e.g. Page, Controller, Store, Producttype) has an own Handler and Generator class. The Generator classes comprise predefined source code, which is enhanced with the information gathered by the Handler classes and then written in files. The data objects (Book, Bookstore) are mapped into simple Java classes. The Controller objects are mapped into Java Servlets and the Page objects are mapped into JSP pages. The MainController is build upon a if else structure, distinguishing on the requested page. The MainControllerHandler navigates through all associations the MainController holds with Page objects. In this way the Controller knows all pages that can be requested, and builds the if-else structure upon these associations. Before the MainController sends the requested page, it has to provide data for the requested Page object (JSP page). Therefore, the MainControllerHandler searches for associations, the current navigated Page object holds with a data object. For example, if there is an association between that Page and the Book object, the MainControllerGenerator produces a code fragment for passing the current selected Book object to the requested Page. In this manner an association between a Page and a data object is mapped into a code fragment for passing data. In order to show how a Page object and its associations are mapped into a JSP file, the generation of such a file will also be addressed briefly. A PageHandler analyzes a Page object and gathers information, for example about its associations. A Page can hold an association to a Book object, specifying that this page displays information about a
8 book and not about the store. Analogue to the mapping above, this association is also mapped into a code fragment, but this fragment is contained in the JSP file and has the purpose of retrieving the passed data from the MainController. Furthermore, the PageHandler gathers information about the contained elements (e.g. Textfield, ContentList, etc.) of a Page. These elements can also hold associations, for example to the Attribute elements of a Book object. These associations determine which element (e.g. TextField) within a Page displays which attribute of the retrieved Book object. All these information is passed to the PageGenerator, which produces the actual JSP file. Nevertheless it is also necessary to enhance parts of the generated source code afterwards due to the same reasons as in the case of MDA; methods have to be implemented manually. 6. Conclusion This paper illustrates the development of a software system applying two of the current dominant approaches to MDD. In the following the experiences made during the development phases will be analyzed, compared and evaluated. Though, both approaches were applied by one single developer, but the degree of reused knowledge from the first development was low, because the development of the MDA solution has not provided much knowledge for developing the DSL and the code generator. The MDA solution shows that productivity can be increased by applying the MDA approach. Certainly, the utilized tool plays an important role, but a better productivity can be achieved particularly due to the omission of the implementation phase. A disadvantage in this case is that the learning phase for the MDA tool is due to its complexity and individuality very timeconsuming. Nevertheless, the modelling process can be started immediately, since the modelling language (UML) is already provided, apart from the fact that specific UML Profiles are needed and not granted by the MDA tool. The SF solution shows that the SF methodology can increase productivity as well, basically for the same reason as in the case of MDA, the implementation part is omitted. But, before reaching this point, the expense for the SF approach is much higher, because the DSL has to be developed first, which is time-consuming and sophisticated, and requires expert knowledge about the problem and the solution domain. This fact delays the start of the modeling process. Once a DSL is created, a better efficiency can be achieved, because a DSL comprises domain concepts and thus it is closer to the problem domain. This fact facilitates involving business stake holders into the specification process to avoid misinterpretation and confusion. This is an advantage for DSLs, since the comprehension of UML models require UML experts. Quality and reliability of a software system can be improved as well in both approaches, particularly due to the reason that the generated code is less errorprone, because of its generation according to a scheme, rules or code-templates. Provided that the model interpreter works properly, the generated code is more reliable than handcrafted code that usually contains bugs, because a developer tends to make mistakes. Furthermore, the generated applications exactly meet their specification in form of models, since they are generated according to them. Certainly, MDA and SF apply similar methods and techniques for modeling and mapping, but they have distinct objectives. Due to the high expense of developing a DSL and a code generator, the SF approach is only recommendable for developing Product Lines, because this expense has to be compensated somehow. However, once a DSL and the code generator are developed, the costs for generating the product line members are very low due to their similarity. The overall costs of a product line development can then be distributed on the amount of all members, which makes the SF approach productive. Otherwise, for One-Off development, the SF approach would be expensive in terms of time, budget and resources. MDA on the contrary can be used for One- Off Development and Product Line development, since there is no additional expense to compensate. Product Line development with the MDA approach would even increase the regular expected degree of productivity, because the first model could be reused for the other product line members. Fact is that MDA is a pure MDD approach and focuses on platform independence, while SF is an entire software development methodology and focuses on product line development. UML as the standard modeling language for MDA is a general purpose language, which has to be specialized and constrained with Profiles to be appropriate for MDD. A DSL in contrary is supposed to be developed for a specific domain from beginning, without specializing and constraining afterwards, in this manner DSLs can be very efficient within that domain, but also very useless in other domains. On the whole, both approaches have their strengths and weaknesses; none of them is clearly in advance. Depending on the purpose they are applied for, they demonstrate different strengths and weaknesses. An appropriate problem domain, professional developers, a suitable tool and a precise idea of the intended
9 products or product family, can guarantee each approach s benefits. 7. References [1] Interactive Objects: ArcStyler 4.0, released 2003, [2] DEMIR, Ahmet: Comparison of UML 2.0 and DSLs in the context of MDD, Diploma Thesis, Technische Universität München, 2005 [3] DSM Forum, Homepage, www page: [4] Greenfield, Jack and Short, Keith: Software Factories. Wiley Publishing, ISBN [6] OMG: MDA Guide V1.0.1., document: omg/ Jishnu Mukerji, Joaquin Miller, 2003, [7] OMG: Meta Object Facility 1.4 (MOF), OMG Document: formal/ , www page: [8] OMG: Object Management Group, www page: [9] OMG: UML 2.0 Infrastructure Final Adopted Specification. OMG Adopted Specification, document: ptc/ ), [10] OMG: UML Unified Modeling Language, www page: [5] Vanderbilt University.: Generic Modeling Environment (GME) 4.0, released 2004, www page:
EasyWeb: A Software Engineering Environment for Developing Web Applications in.net
EasyWeb: A Software Engineering Environment for Developing Web Applications in.net A M I R T A L A E I K H O E I Master of Science Thesis Stockholm, Sweden, 2007 ICT/ECS-2007-134 Master of Science Thesis
More informationModel 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 informationModeling Turnpike: a Model-Driven Framework for Domain-Specific Software Development *
for Domain-Specific Software Development * Hiroshi Wada Advisor: Junichi Suzuki Department of Computer Science University of Massachusetts, Boston hiroshi_wada@otij.org and jxs@cs.umb.edu Abstract. This
More informationDeveloping in the MDA Object Management Group Page 1
Developing in OMG s New -Driven Architecture Jon Siegel Director, Technology Transfer Object Management Group In this paper, we re going to describe the application development process supported by OMG
More informationFoundations of Model-Driven Software Engineering
Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software
More informationAll you need are models Anneke Kleppe, Klasse Objecten
Model Driven Architecture All you need are models Anneke Kleppe, Klasse Objecten Contents Limited Vision on MDA Modeling Maturity Levels Models Model Driven Development Model Driven Architecture MDA in
More informationBuilding 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 informationModel Driven Development Future or Failure of Software Development?
Model Driven Development Future or Failure of Software Development? Ruben Picek, Vjeran Strahonja University of Zagreb, Faculty of Organization and Informatics, Varaždin ruben.picek@foi.hr, vjeran.strahonja@foi.hr
More informationTDDC88 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 informationModel-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 informationToward 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 informationModel-driven secure system development framework
SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 43 52 P. Model-driven secure system development framework Viesturs Kaugers, Uldis Sukovskis Riga Technical
More informationModel-Driven Development: A Metamodeling Foundation
Model-Driven Development: A Metamodeling Foundation Colin Atkinson University of Mannheim 68161 Mannheim, Germany atkinson@informatik.uni-mannheim.de Thomas Kühne Darmstadt University of Technology 64283
More informationTaking Subversion to a Higher Level. Branching/Merging Support. Component Management Support. And More
Taking Subversion to a Higher Level Branching/Merging Support Component Management Support And More About Impact CM Impact CM is a Service AddOn that facilitates software configuration management (CM)
More informationOverview. 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 informationYouTrack MPS case study
YouTrack MPS case study A case study of JetBrains YouTrack use of MPS Valeria Adrianova, Maxim Mazin, Václav Pech What is YouTrack YouTrack is an innovative, web-based, keyboard-centric issue and project
More informationSoftware Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools Jack Greenfield Keith Short WILEY Wiley Publishing, Inc. Preface Acknowledgments Foreword Parti Introduction to
More informationThe leading platform for Model Driven Architecture (MDA) Content:
The leading platform for Model Driven Architecture (MDA) Content: Models Made for Business... 2 ArcStyler Overview... 2 Main Benefits... 3 ArcStyler Editions... 4 ArcStyler Modules and Tool Architecture...
More informationSEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation
Technical Brief April 2011 The National Consortium for Justice Information and Statistics Model-driven Development of NIEM Information Exchange Package Documentation By Andrew Owen and Scott Came Since
More informationRevel8or: 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 informationWHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT
WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT CONTENTS 1. THE NEED FOR DATA GOVERNANCE... 2 2. DATA GOVERNANCE... 2 2.1. Definition... 2 2.2. Responsibilities... 3 3. ACTIVITIES... 6 4. THE
More informationMDA 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 informationIncreasing 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 informationSystems and software product line engineering with SysML, UML and the IBM Rational Rhapsody BigLever Gears Bridge.
Global distributed development White paper July 2009 Systems and software product line engineering with SysML, UML and the IBM Rational Rhapsody BigLever Gears Bridge. Integrating MDD and SPL to effectively
More informationWhat 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 informationtoday 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 informationRequirements Management with Enterprise Architect
An Introduction to Requirements Management with Enterprise Architect By Sparx Systems All material Sparx Systems 2010 version 1.3 www.sparxsystems.com Sparx Systems 2010 Page 1 Trademarks Object Management
More informationOrganization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
More informationGenerating 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 informationProject 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 informationCHAPTER 2 LITERATURE SURVEY
CHAPTER 2 LITERATURE SURVEY This chapter describes the survey of existing literature on multiple views. Later, it presents literature survey conducted on frameworks for tool comparison and stakeholder
More informationRoles in Software Development using Domain Specific Modelling Languages
Roles in Software Development using Domain Specific Modelling Languages Holger Krahn Bernhard Rumpe Steven Völkel Institute for Software Systems Engineering Technische Universität Braunschweig, Braunschweig,
More informationClarifying 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 informationThe Impact of the Computational Independent Model for Enterprise Information System Development
Volume No.8, December 200 The Impact of the Computational Independent Model for Enterprise Information System Development Yashwant Singh Jaypee University of IT, Waknaghat, Himachal Pradesh, INDIA Dr.
More informationAn 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 informationCDC UNIFIED PROCESS PRACTICES GUIDE
Purpose The purpose of this document is to provide guidance on the practice of Modeling and to describe the practice overview, requirements, best practices, activities, and key terms related to these requirements.
More informationFrom 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 informationXFlash A Web Application Design Framework with Model-Driven Methodology
International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,
More informationAplicando enfoque MDE a aplicaciones WEB-SOA
Aplicando enfoque MDE a aplicaciones WEB-SOA María Consuelo Franky lfranky@javeriana.edu.co Dpto. Ingeniería de Sistemas Universidad Javeriana Bogotá - 2010 http://sophia.javeriana.edu.co/~lfranky/ 1 Temario
More informationLightweight Data Integration using the WebComposition Data Grid Service
Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed
More informationJava (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7, No. 8, November-December 2008 From The Business Motivation Model (BMM)
More informationMETADATA-DRIVEN QLIKVIEW APPLICATIONS AND POWERFUL DATA INTEGRATION WITH QLIKVIEW EXPRESSOR
METADATA-DRIVEN QLIKVIEW APPLICATIONS AND POWERFUL DATA INTEGRATION WITH QLIKVIEW EXPRESSOR A QlikView Technical Brief Document March 2013 qlikview.com Introduction This technical brief highlights a subset
More informationPatterns & Techniques for Separating Business Logic in New SOA System Development. Iyad Jabri Intelliun Corporation CEO
Patterns & Techniques for Separating Business Logic in New SOA System Development Iyad Jabri Intelliun Corporation CEO Building a Service Oriented Architecture with BPM & MDA October 16-19, 2006 Burlingame,
More informationIntellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102
Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Interneer, Inc. Updated on 2/22/2012 Created by Erika Keresztyen Fahey 2 Workflow - A102 - Basic HelpDesk Ticketing System
More informationUML 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 informationBusiness Model Interoperability using Enterprise Model Integration
Business Model Interoperability using Enterprise Model Integration Harald KÜHN, Marion MURZEK, Franz BAYER BOC Information Systems GmbH, Rabensteig 2, 1010 Vienna, Austria Tel: +43 1 513 27 36 10, Fax:
More informationCOCOVILA 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 informationSoftware Development Kit
Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice
More information2. Basic Relational Data Model
2. Basic Relational Data Model 2.1 Introduction Basic concepts of information models, their realisation in databases comprising data objects and object relationships, and their management by DBMS s that
More informationGenerating Web Applications from Process Models
Generating Web Applications from Process Models Jan Schulz-Hofen, Silvan Golega Hasso-Plattner-Institute for Software Systems Engineering Prof.-Dr.-Helmert-Str. 2-3 D-14482 Potsdam, Germany {jan.schulz-hofen,
More informationTool 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 informationEnterprise Application Deployment: Amodel driven approach
Enterprise Application Deployment: Amodel driven approach Peter Golibrzuch Lufthansa Technik AG peter.golibrzuch@lht.dlh.de Alexander Holbreich Lufthansa Systems AG alexander.holbreich@lhsystems.com Simon
More informationWhat 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 informationProGUM-Web: Tool Support for Model-Based Development of Web Applications
ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de
More informationModel Driven and Service Oriented Enterprise Integration---The Method, Framework and Platform
Driven and Oriented Integration---The Method, Framework and Platform Shuangxi Huang, Yushun Fan Department of Automation, Tsinghua University, 100084 Beijing, P.R. China {huangsx, fanyus}@tsinghua.edu.cn
More informationA Software Development Platform for SOA
A Software Development Platform for SOA Peter Eeles Executive IT Architect Rational Brand Architect for UK, Ireland and South Africa peter.eeles@uk.ibm.com 2004 IBM Corporation Agenda IBM Software Group
More informationAsset Based Development
IBM Software Group Asset Based Development Grant Larsen gjlarsen@us.ibm.com November 2003 Agenda Introduction Asset-based Development Process Standards Tooling Assets Getting Started Agenda Introduction
More informationBy: Richard Li March 2003
!" $#%!&' )()*+ &,.-/ %0-1 32 By: Richard Li March 2003 Abstract The Red Hat Enterprise Content Management System (CMS) is an open source product that provides a full set of out-of-the-box content management
More informationOpen Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1
Open Source egovernment Reference Architecture Osera.modeldriven.org Slide 1 Caveat OsEra and the Semantic Core is work in progress, not a ready to use capability Slide 2 OsEra What we will cover OsEra
More informationComponent-Oriented Engineering
Component-Oriented Engineering... the dawn of a new era in embedded software development productivity Francis Bordeleau and Ross MacLeod Zeligsoft May 2008 Component-Oriented Engineering the dawn of a
More informationThe value of modeling
The value of modeling Level: Introductory Gary Cernosek, Marketing Manager, IBM Rational Eric Naiburg, Group Market Manager Desktop Products, IBM Rational 15 Nov 2004 from The Rational Edge: This article
More informationMeta-Model specification V2 D602.012
PROPRIETARY RIGHTS STATEMENT THIS DOCUMENT CONTAINS INFORMATION, WHICH IS PROPRIETARY TO THE CRYSTAL CONSORTIUM. NEITHER THIS DOCUMENT NOR THE INFORMATION CONTAINED HEREIN SHALL BE USED, DUPLICATED OR
More informationWEB APPLICATION DEVELOPMENT EMPLOYING DOMAIN-SPECIFIC LANGUAGES
WEB APPLICATION DEVELOPMENT EMPLOYING DOMAIN-SPECIFIC LANGUAGES Martin Nussbaumer, Patrick Freudenstein, Martin Gaedke University of Karlsruhe, Institute of Telematics, IT-Management and Web Engineering
More informationRapid Development of Modular Dynamic Web Sites using UML
Rapid Development of Modular Dynamic Web Sites using UML Tim Schattkowsky 1, Marc Lohmann 2 1 Paderborn University, C-LAB, D-33102 Paderborn, Germany tim@c-lab.de 2 Paderborn University, Department of
More informationApplying 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 informationTowards 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 informationDomain Driven Design and Model Driven Software Development
Domain Driven Design and Model Driven Software Development Karsten Klein, hybrid labs, January 2007 Version: 1.0 Introduction Eric Evans Book Domain Driven Design was first published end of 2003 [Evans2003].
More informationBuilding A Very Simple Web Site
Sitecore CMS 6.2 Building A Very Simple Web Site Rev 100601 Sitecore CMS 6. 2 Building A Very Simple Web Site A Self-Study Guide for Developers Table of Contents Chapter 1 Introduction... 3 Chapter 2 Building
More informationNext-generation model-driven development
Rational Software Architect December 2004 Next-generation model-driven development Gary Cernosek Market Manager IBM Software Group Page 2 Contents 2 Introduction 2 Motivation 3 Background of Rational modeling
More informationResearch Topics 2009. MDD & PL 2009 Stefan Tilkov stefan.tilkov@innoq.com
Research Topics 2009 MDD & PL 2009 Stefan Tilkov stefan.tilkov@innoq.com About innoq Technology Consultancy Focus: Efficient software development & Service-oriented architecture Ratingen, Darmstadt, Munich,
More informationA Framework of Model-Driven Web Application Testing
A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China
More informationBringing Business Objects into ETL Technology
Bringing Business Objects into ETL Technology Jing Shan Ryan Wisnesky Phay Lau Eugene Kawamoto Huong Morris Sriram Srinivasn Hui Liao 1. Northeastern University, jshan@ccs.neu.edu 2. Stanford University,
More informationDevelopment of a Feature Modeling Tool using Microsoft DSL Tools.
Development of a Feature Modeling Tool using Microsoft DSL Tools. GIRO Technical Report 2009-1.ver 1.0 (05/01/2009) Rubén Fernández, Miguel A. Laguna, Jesús Requejo, Nuria Serrano. Department of Computer
More informationARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS
ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS Lech MADEYSKI *, Michał STOCHMIAŁEK Abstract. Architectural design is about decisions which influence characteristics of arising system e.g. maintainability
More informationAutomating Rich Internet Application Development for Enterprise Web 2.0 and SOA
Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA Enterprise Web 2.0 >>> FAST White Paper November 2006 Abstract Modern Rich Internet Applications for SOA have to cope with
More informationMDA and Analysis of Web Applications
MDA and Analysis of Web Applications Behzad Bordbar and Kyriakos Anastasakis School of Computer Science, University of Birmingham, Birmingham, B15 2TT, UK {B.Bordbar,K.Anastasakis}@cs.bham.ac.uk Abstract.
More informationModeling of Distributed Systems with SOA & MDA
Modeling of Distributed Systems with SOA & MDA Haeng-Kon Kim Abstract Along with the boom of Web services and the thriving Model Driven Architecture (MDA), we must consider the growing significance and
More informationAccelerating Embedded Software Development with a Model Driven Architecture
Accelerating Embedded Software Development with a Model Driven Architecture Carolyn K. Duby Pathfinder Solutions September, 2003 2003 Pathfinder Solutions LLC www.pathfindersol.com Introduction Embedded
More informationDifference Between Model-Driven and Traditional Iterative Software Development
Process Implications of Model-Driven Software Development Author: Jorn Bettin Version 1.0 September 2004 Copyright 2003, 2004 SoftMetaWare Ltd. SoftMetaWare is a trademark of SoftMetaWare Ltd. All other
More informationPreparing 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 informationNew Web Application Development Tool and Its MDA-Based Support Methodology
New Web Application Development Tool and Its MDA-Based Support Methodology V Yasuyuki Fujikawa V Takahide Matsutsuka (Manuscript received February 11, 2004) Web applications are ubiquitous on the Internet,
More informationAuthoring Within a Content Management System. The Content Management Story
Authoring Within a Content Management System The Content Management Story Learning Goals Understand the roots of content management Define the concept of content Describe what a content management system
More informationMDE 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 informationMDA 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 informationOracle Service Bus Examples and Tutorials
March 2011 Contents 1 Oracle Service Bus Examples... 2 2 Introduction to the Oracle Service Bus Tutorials... 5 3 Getting Started with the Oracle Service Bus Tutorials... 12 4 Tutorial 1. Routing a Loan
More information1.. 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 informationModeling 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 informationTool 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 informationJavaFX Session Agenda
JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user
More informationEmbedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer
Generate Results. Real Models. Real Code. Real Fast. Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer Andreas Henriksson, Ericsson andreas.henriksson@ericsson.com
More informationWeb Presentation Layer Architecture
Chapter 4 Web Presentation Layer Architecture In this chapter we provide a discussion of important current approaches to web interface programming based on the Model 2 architecture [59]. From the results
More informationModel 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 informationIntroduction to Generative Software Development
Introduction to Generative Software Development Krzysztof Czarnecki University of Waterloo czarnecki@acm.org www.generative-programming.org Goals What is to be achieved? Basic understanding of Generative
More informationMetamodels and Modeling Multiple Kinds of Information Systems
Metamodels and Modeling Multiple Kinds of Information Systems Randall M. Hauch Chief Architect presented at MDA, SOA and Web Services: Delivering the Integrated Enterprise Practice, not Promise MetaMatrix
More informationTutorial: Building a Web Application with Struts
Tutorial: Building a Web Application with Struts Tutorial: Building a Web Application with Struts This tutorial describes how OTN developers built a Web application for shop owners and customers of the
More informationModelling of Enterprise Portals with Domain- Specific Language
Master Thesis Software Engineering Thesis no: MSE-2012:98 August 2012 Modelling of Enterprise Portals with Domain- Specific Language Dominik Wasilewski School of Engineering Blekinge Institute of Technology
More informationBusiness Process Modeling and Standardization
Business Modeling and Standardization Antoine Lonjon Chief Architect MEGA Content Introduction Business : One Word, Multiple Arenas of Application Criteria for a Business Modeling Standard State of the
More informationJiří Šebek, Karel Richta. Department of Computer Science and Engineering. 121 35 Praha 2, Czech Republic {sebekji1,richta}@fel.cvut.
Aspect-oriented User User Interface Interface Design Design for Android for Android Applications Applications 1 1 Jiří Šebek, Karel Richta Jiří Šebek, Karel Richta Department of Computer Science and Engineering
More informationMDA Game Design for Video Game Development by Genre
MDA Game Design for Video Game Development by Genre Vargas R. E. 1, Arellano G. G. 2, Beltrán H. D. 3, Zepeda L. Z. 4, Quintero R. R. 5, Vega L 6. Instituto Tecnológico de Culiacán Sinaloa, México {ing.rosavargas@gmail.com
More information