SlideShare a Scribd company logo
1 of 19
Investigation Modeling Tools<br />Jun 20th, 2011<br />Roger Xia<br /> TOC  quot;
1-3quot;
    Abstract PAGEREF _Toc296583327  2<br />Overview PAGEREF _Toc296583328  2<br />MDA (Model-driven architecture) PAGEREF _Toc296583329  2<br />Common Modeling Platform and Toolset PAGEREF _Toc296583330  3<br />UML vs. DSL PAGEREF _Toc296583331  5<br />Textual vs. Visual modeling languages PAGEREF _Toc296583332  5<br />Agile Modeling PAGEREF _Toc296583333  5<br />Modeling Tools PAGEREF _Toc296583334  6<br />Eclipse Modeling Tools PAGEREF _Toc296583335  6<br />Graphical Modeling Tools PAGEREF _Toc296583336  6<br />Overview of Graphical Modeling Tools PAGEREF _Toc296583337  6<br />Screenshot PAGEREF _Toc296583338  9<br />Conclusion PAGEREF _Toc296583339  16<br />Working on Eclipse PAGEREF _Toc296583340  16<br />DSL Tools with textual modeling PAGEREF _Toc296583341  17<br />Xtext PAGEREF _Toc296583342  17<br />TEF PAGEREF _Toc296583343  18<br />TCS PAGEREF _Toc296583344  18<br />EMFText PAGEREF _Toc296583345  18<br />JetBrains MPS PAGEREF _Toc296583346  19<br />DSL2JDT, ETMOP, CAL PAGEREF _Toc296583347  19<br />References PAGEREF _Toc296583348  19<br />Abstract<br />When talking about modeling, I think there will be a bundle of terms that will come to our mind, UML, domain driven development, DSL, forward/reverse enginerring, MDD, MDA, BPMN.  These technology or methodology have been there for years; And obviously, modeling has proven itself to provide value by improving communication, business-alignment, quality, and productivity. Its applicability includes a number of disciplines such as analysis, design, or development. But why aren’t we all doing Model Driven Development yet? We don’t want to answer this question in this passage, we would like to take an overview of the modeling tools first.<br />Overview<br />To be agile and open, tooling must be standards-based. <br />MDA (Model-driven architecture)<br />MDA is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. The MDA model is related to multiple standards, including the UML, the Meta-Object Facility (MOF), XML Metadata Interchange (XMI), Enterprise Distributed Object Computing (EDOC), the Software Process Engineering Metamodel (SPEM), and the Common Warehouse Metamodel (CWM).<br />Common Modeling Platform and Toolset<br />After years of theory and formalism, there now is a convergence towards a common platform and toolset for model driven languages and systems, i.e. the Eclipse Modeling Framework (EMF). The EMF project is a modeling framework and code generation facility for building tools and other applications based on a structured data model. EMF unifies three important technologies: Java, XML, and UML.<br />EMF builds include XML Schema Definition (XSD), now a component of the Model Development Tools (MDT) project, and an EMF-based implementation of Service Data Objects (SDO).  Other subprojects, such as CDO (Connected Data Objects), Compare, Model Query, Model Transaction, and Validation Framework, are available separately.<br />EMF (Core)<br />From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor. Models can be specified using annotated Java, XML documents, or modeling tools like Rational Rose, then imported into EMF. Most important of all, EMF provides the foundation for interoperability with other EMF-based tools and applications. <br />It appears that model-driven engineering is ready for prime time – one can actually build models, model to model transformations (M2M) and model to code (M2T) generators relatively easy, in a variety of domains.<br />Service Data Objects (SDO)<br /> Service Data Objects is a framework for data application development, which includes an architecture and API. Service Data Objects simplify the J2EE data programming model and abstract data in a service oriented architecture (SOA). SDO unifies data application development, supports, and integrates XML. Service Data Objects incorporate J2EE patterns and best practices.<br />Model Development Tools (MDT)<br />The Model Development Tools project aims at:<br />,[object Object]
To provide exemplary tools for developing models based on those metamodels.Some of its components are available to download, such as XSD, OCL (Object Constraint Language), UML2; other components are currently in their validation (incubation) phase, like BPMN2, IMM, MoDisco, MST, Papyrus, SBVR.<br />,[object Object]
IMM -- provide metamodel/profile implementations based on the forthcoming Information Management Metamodel (IMM) OMG specification.
MoDisco -- provides a framework to develop model-driven tools for software modernization. It aims at supporting use-cases such as Quality Assurance, Documentation, Improvement and Migration.
MST -- provides tooling for the development of MOF-compliant metamodels and specifications based on them.
Papyrus -- provides an integrated, user-consumable environment for editing any kind of EMF model and particularly supporting UML and related modeling languages such as SysML and MARTE.
SBVR – provides a metamodel implementation and sample tools based on the adopted Semantics of Business Vocabulary and Business Rules (SBVR) OMG specification.UML vs. DSL<br />UML is used at an implementation independent level.<br />DSLs (domain-specific languages) are used at an implementation dependent level.<br />Best practices for DSLs and Model Driven Development:<br />,[object Object]
Processing models: best practices in making the models expressed with DSLs executable by either code generation or model interpretation.
Process and organization: best practices for process and organization around MDD.Textual vs. Visual modeling languages<br />There are textual and visual modeling languages, and current wisdom is that most domains require both. Of course EMF allows the creation and use of both visual and textual editors, too. The debate in this area is whether textual modeling and visual modeling are two separate activities or whether it is indeed desirable to unify into a combined interaction model. A commonly heard statement is that modeling and programming is one and the same. One can argue with that as it is strongly dependent on the target audience for the tools. It is not common across all domains that subject matter experts are also coders…<br />There were, however, interesting presentations of tools that integrate multiple representations of domain concepts within a predominantly textual editor, for example a state machine encoded in Java that could be represented, embedded in the editor, as a diagram or as a state table. It allowed the engineer to manipulate the state table and then revert back to the Java representation with the changes present in the Java encoding.<br />Agile Modeling<br />Agile Modeling (AM) is a practice-based methodology for effective modeling and documentation of software-based systems. At a high level AM is a collection of best practices, depicted in the pattern language map below<br />Modeling Tools<br />There are so many tools created for modeling. <br />Eclipse Modeling Tools<br />This modeling package contains a collection of Eclipse Modeling Project components, including EMF, GMF, MDT XSD/OCL/UML2, M2M, M2T, and EMFT elements. It includes a complete SDK, developer tools and source code. Some of its components are still in incubation phase. Find it here.<br />Graphical Modeling Tools<br />In the following section, we pick out ten modeling tools, some of them are graphic UML tools, some of them are used for data modeling and profiling, some of them focus on MDA.<br />Overview of Graphical Modeling Tools<br />name Version Platform & Environment XMIDescription ArgoUML BSDJava Leading open source UML modeling tool;XMI, OCL support; Forward /reverse engineering/jar/class file import;Cognitive support, Reflection-in-action; corrective automations, i18n, multiple diagram export format Astah Community /Professional Java、C#、C++ A lightweight UML editor integrated with ERD, DFD, CRUD and Mind mapping features for software developers.astah* API (Models of Class, UseCase, Activity, Sequence and Statemachine Diagrams)Originally known as JUDE. StarUML Opensource Run on Win32 platform Open Source UML/MDA Platform;UML2.0; MDA {StarUML provides many customization variables like as UML profile, Approach, Model Framework, NX(notation extension), MDA code and document template and so on.}Plug-in Architecture; UsabilityVisual Paradigm for UML Community / EnterpriseJava, C++, CORBA IDL, PHP, XML Schema, C#, VB .NET, Object Definition Language (ODL), Flash ActionScript 3.0, Delphi, Perl, Python, Objective-C  UML modeling, Use case modeling, Report generation (PDF, MS word, HTML, customizable, publish to web), Code engineering;Data modeling: ERD, Support SysML, BPMN, XMI. EclipseUML Omondo  Powered by Eclipse 3.7 Indigo;Built on the top of MOF and uses Ecore as opposed to traditional tools which use transformation layers. AndroMDA Open sourceIt takes model(s) from CASE-tool(s) and generates fully deployable applications and other components.EJB, Spring, Hibernate, Struts, .NET, Web Services An open source code generation framework that follows MDA paradigm.Support UML2, based on EMF;A maven plugin to generate project templates such as for J2EE (Hibernate, EJB, Spring, WebServices, and Struts): andromdapp:generate.Schema2XMI is able to read your database and build an XMI file from it, which can then be used to load as a UML model.SQL Power ArchitectCommunity / EnterpriseInnovative Java-based data modeling tool geared specifically for Data Warehouse and Data Mart design. Data Modeling & Profiling Tool; Multi-database support, Forward engineering, Reverse engineering, Model comparison, ETL & OLAPTogether 2008 R3 license Java®/C++/CORBA® IDL  UML Modeling, Data Modeling,  MDA, DSL toolkit, BPMN validation, Eclipse platform, generate doc;LiveSource® technology; Eclipse PlatformMagicDraw Enterprise License round-trip support for Java, C++, C#, CL (MSIL) and CORBA IDL programming languages  Integrate with Eclipse, code engineering mechanism, database schema modeling, DDL generation and reverse engineering facilities;Support RUP and WAE design pattern;Support SysML, BPMN 2.0, DoDAF, OCL, XMI.Enterprise Architect Enterprise License C++, Java, C#, Delphi, SQL-DDL, VB.NET, VB  Virtual modeling platform:  uml analysis and design, full traceability from requirements to deployment, code engineering in over 10 languages;Scalable, team-based repository;Enterprise frameworks, mind maps, BPMN... Eclipse Integration (MDG Integration).<br />Screenshot<br />ArgoUML<br />Astah*<br />StarUML<br />EclipseUML<br />AndroMDA<br />Architecture of AndroMDA Generated ApplicationsJava.Net<br />SQL Power Architect<br />Tool-based Process for a change request to an existing data model<br />Together 2008 R3<br />Together 2008 Release 3 can be installed to an existing instance of Eclipse SDK version 3.6.1 from the online or archived update site. <br />MagicDraw<br />When using MagicDraw with Eclipse, Mia-Generation is integrated through its standard Eclipse plugin.<br />Create models, generate and edit generated files within Eclipse<br />Conclusion<br />StarUML, ArgoUML, Astah, VP UML are all good UML tools<br />Power architect is a good data modeling and profiling tool<br />AndroMDA and EclipseUML are good at MDA, generating enterprise project from models.<br />Enterprise Architect / Together 2008/ MagicDraw are all powerful tools in UML and Data modeling, but they need pay. <br />Working on Eclipse<br />For the tools (argoUML, androMDA, starUML, VP UML, Together, magicDraw, Enterprise Architect), who support XMI technology, we can export uml to XMI, and then import XMI to another modeling tool which support XMI. (Pay attention to UML version.)<br />Together 2008 R3 based on Eclipse platform.<br />There is a tool called ArgoEclipse, that enables us to work with argouml in eclipse, and also we can use argo2ecore to create uml models created with argouml to the eclipse uml dialet ecore, and then use emf codegenerator (e.g. JET) to generate java code.<br />Merlin, an innovation software modeling tool built on top of Eclipse platform and EMF. support code generation and model transformation.<br />EclipseUML built on the top of MOF and uses Ecore.<br />AndroMDA has a repository called quot;
org.andromda.repositories.emfquot;
, which implements the Eclipse EMF repository integration with AndroMDA, this integration allows AndroMDA to use the Eclipse EMF framework as a repository for loading, and querying object models.<br />When using MagicDraw with Eclipse, Mia-Generation is integrated through its standard Eclipse plugin, this integration enables modeling, generating and editing the generated code within Eclipse.<br /> The MDG Integration for Eclipse provides seamless integration with Eclipse and Enterprise Architect.<br />DSL Tools with textual modeling<br />Xtext<br />With Xtext you can easily create your own programming languages and domain-specific languages (DSLs). The framework supports the development of language infrastructures including compilers and interpreters as well as full blown Eclipse-based IDE integration.<br />Resources:<br />Combining Text and Graphics in Eclipse-based Modeling Tools<br />Model Driven Software Development with Eclipse<br />Building DSLs With Eclipse<br />TEF<br />The Textual Editing Framework (TEF) allows you to create textual editors for your EMF-based languages. TEF provides a syntax definition language called TSL. In this language, you, the language engineer, can describe a textual notation for a given Ecore meta-model. TEF is based on Eclipse. There are two different strategies to approach the textual editing of models: Model View Controller (representation/model separation) and Background Parsing (allow using features and plug-ins). TEF chooses the background parsing strategy.<br />TCS<br />Textual Concrete Syntax (TCS) is an Eclipse/GMT component that enables the specification of textual concrete syntaxes for Domain-Specific Languages (DSLs) by attaching syntactic information to metamodels. With TCS, it is possible to parse (text-to-model) and pretty-print (model-to-text) DSL sentences. Moreover, TCS provides an Eclipse editor, which features: syntax highlighting, an outline, hyperlinks, and hovers for every DSL which syntax is represented in TCS.<br />EMFText<br />EMFText is an Eclipse plug-in that allows you to define text syntax for languages described by an Ecore metamodel. EMFText enables developers to define textual Domain Specific Languages quickly and without the need to learn new technologies and concepts.<br />JetBrains MPS<br />Meta Programming System (MPS) is a brand new concept of software development environment implementing the Language Oriented Programming paradigm. Open-source product, available under Apache 2.0 License<br />DSL2JDT, ETMOP, CAL<br />References<br />Model Driven Development Misperceptions and Challenges<br />Making Model-Driven Software Development live up to its promises<br />Textual Modeling Tools<br />From Programming to Modeling and Back again<br />
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research
MDD and modeling tools research

More Related Content

What's hot

Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven ArchitecturesLalit Kale
 
Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...Vicente García Díaz
 
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Marco Brambilla
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010fmadiot
 
UML: Once More with Meaning
UML: Once More with MeaningUML: Once More with Meaning
UML: Once More with MeaningEd Seidewitz
 
Model-Driven Development of Web Applications
Model-Driven Development of Web ApplicationsModel-Driven Development of Web Applications
Model-Driven Development of Web Applicationsidescitation
 
UML 2.5: Specification Simplification
UML 2.5: Specification SimplificationUML 2.5: Specification Simplification
UML 2.5: Specification SimplificationEd Seidewitz
 
MDA Architecture - UML modeling Presentation
MDA Architecture - UML modeling PresentationMDA Architecture - UML modeling Presentation
MDA Architecture - UML modeling Presentationanandonsite
 
programacion orientado a abjetos poo
programacion orientado a abjetos pooprogramacion orientado a abjetos poo
programacion orientado a abjetos pooRasec De La Cruz
 
[2015/2016] Architectural languages
[2015/2016] Architectural languages[2015/2016] Architectural languages
[2015/2016] Architectural languagesIvano Malavolta
 
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...Steve Goschnick
 
UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)elliando dias
 
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...Jordi Cabot
 
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Jordi Cabot
 
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...Jordi Cabot
 
Evaluation of meta modeling tools for domain specific modeling language chnjl
Evaluation of meta modeling   tools for domain specific modeling language chnjlEvaluation of meta modeling   tools for domain specific modeling language chnjl
Evaluation of meta modeling tools for domain specific modeling language chnjlPG Scholar
 

What's hot (20)

Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
 
Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...
 
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010
 
UML: Once More with Meaning
UML: Once More with MeaningUML: Once More with Meaning
UML: Once More with Meaning
 
Model-Driven Development of Web Applications
Model-Driven Development of Web ApplicationsModel-Driven Development of Web Applications
Model-Driven Development of Web Applications
 
Introducing MDSD
Introducing MDSDIntroducing MDSD
Introducing MDSD
 
UML 2.5: Specification Simplification
UML 2.5: Specification SimplificationUML 2.5: Specification Simplification
UML 2.5: Specification Simplification
 
MDA Architecture - UML modeling Presentation
MDA Architecture - UML modeling PresentationMDA Architecture - UML modeling Presentation
MDA Architecture - UML modeling Presentation
 
programacion orientado a abjetos poo
programacion orientado a abjetos pooprogramacion orientado a abjetos poo
programacion orientado a abjetos poo
 
Oop obj c
Oop obj cOop obj c
Oop obj c
 
[2015/2016] Architectural languages
[2015/2016] Architectural languages[2015/2016] Architectural languages
[2015/2016] Architectural languages
 
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...
Conference presentation: ShaMAN - an Agent Meta-model for Computer Games (wit...
 
UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)
 
Sig A&D - MDA
Sig A&D - MDASig A&D - MDA
Sig A&D - MDA
 
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...
MDE 2.0.: pragmatic model verification and other stories - Habilitation publi...
 
Introduction To MDD
Introduction To MDDIntroduction To MDD
Introduction To MDD
 
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
 
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
Model-Driven Software Engineering in Practice - Chapter 4 - Model-Driven Arch...
 
Evaluation of meta modeling tools for domain specific modeling language chnjl
Evaluation of meta modeling   tools for domain specific modeling language chnjlEvaluation of meta modeling   tools for domain specific modeling language chnjl
Evaluation of meta modeling tools for domain specific modeling language chnjl
 

Viewers also liked

Ikp'ko;b0yp
Ikp'ko;b0ypIkp'ko;b0yp
Ikp'ko;b0ypnoylove
 
E book the-art_of_internet_dating
E book the-art_of_internet_datingE book the-art_of_internet_dating
E book the-art_of_internet_datingr_rahulsingh1988
 
I care for you, because i love you
I care for you, because i love youI care for you, because i love you
I care for you, because i love youRenny
 
Horizons Beyond Dreams Business Plan
Horizons Beyond Dreams Business PlanHorizons Beyond Dreams Business Plan
Horizons Beyond Dreams Business Planphillipcfrankis
 
Program book 2013
Program book 2013Program book 2013
Program book 2013otakuthon
 
Combine may 2013 for web
Combine may 2013 for webCombine may 2013 for web
Combine may 2013 for webPUNJABI SUMAN
 
My SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNMy SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNRonald Bradford
 
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóa
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh HóaĐề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóa
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóaschoolantoreecom
 
Jeffrey Sachs
Jeffrey SachsJeffrey Sachs
Jeffrey Sachsrosiem7
 
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...Paul Hastings
 
islah e ahle hadees
islah e ahle hadeesislah e ahle hadees
islah e ahle hadeesFahad Javed
 

Viewers also liked (18)

Ikp'ko;b0yp
Ikp'ko;b0ypIkp'ko;b0yp
Ikp'ko;b0yp
 
Pk std
Pk stdPk std
Pk std
 
E book the-art_of_internet_dating
E book the-art_of_internet_datingE book the-art_of_internet_dating
E book the-art_of_internet_dating
 
 
I care for you, because i love you
I care for you, because i love youI care for you, because i love you
I care for you, because i love you
 
Horizons Beyond Dreams Business Plan
Horizons Beyond Dreams Business PlanHorizons Beyond Dreams Business Plan
Horizons Beyond Dreams Business Plan
 
Program book 2013
Program book 2013Program book 2013
Program book 2013
 
Combine may 2013 for web
Combine may 2013 for webCombine may 2013 for web
Combine may 2013 for web
 
Wais i
Wais   iWais   i
Wais i
 
My SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNMy SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTN
 
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóa
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh HóaĐề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóa
Đề thi thử Đại học lần 1 năm 2016 THPT Bỉm Sơn Thanh Hóa
 
jQuery: Events, Animation, Ajax
jQuery: Events, Animation, AjaxjQuery: Events, Animation, Ajax
jQuery: Events, Animation, Ajax
 
Game mien phi
Game mien phiGame mien phi
Game mien phi
 
nullcon 2011 - Buffer UnderRun Exploits
nullcon 2011 - Buffer UnderRun Exploitsnullcon 2011 - Buffer UnderRun Exploits
nullcon 2011 - Buffer UnderRun Exploits
 
Jeffrey Sachs
Jeffrey SachsJeffrey Sachs
Jeffrey Sachs
 
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...
Equity Aids the Vigilant: The Supreme Court’s Montanile Decision And Its Less...
 
islah e ahle hadees
islah e ahle hadeesislah e ahle hadees
islah e ahle hadees
 
Sap q&a
Sap q&aSap q&a
Sap q&a
 

Similar to MDD and modeling tools research

RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARERESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWAREcscpconf
 
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARERESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWAREcsandit
 
Batch 21(14,64,66)
Batch 21(14,64,66)Batch 21(14,64,66)
Batch 21(14,64,66)swethadln
 
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSE
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSEMODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSE
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSEAnže Vodovnik
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)siouxhotornot
 
Pragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWarePragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWareMichael Vorburger
 
Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010Ogren Paunović
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformationMajong DevJfu
 
Proposal
ProposalProposal
Proposaliampree
 
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...ijseajournal
 
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkEclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkDave Steinberg
 
What's New in MDT?
What's New in MDT?What's New in MDT?
What's New in MDT?Kenn Hussey
 
ModelTalk - When Everything is a Domain Specific Language
ModelTalk - When Everything is a Domain Specific LanguageModelTalk - When Everything is a Domain Specific Language
ModelTalk - When Everything is a Domain Specific LanguageAtzmon Hen-Tov
 
Integrating profiling into mde compilers
Integrating profiling into mde compilersIntegrating profiling into mde compilers
Integrating profiling into mde compilersijseajournal
 
Uml introduction
Uml introductionUml introduction
Uml introductionbdemchak
 

Similar to MDD and modeling tools research (20)

ALT
ALTALT
ALT
 
ERP_Up_Down.ppt
ERP_Up_Down.pptERP_Up_Down.ppt
ERP_Up_Down.ppt
 
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARERESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
 
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARERESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
RESILIENT INTERFACE DESIGN FOR SAFETY-CRITICAL EMBEDDED AUTOMOTIVE SOFTWARE
 
Batch 21(14,64,66)
Batch 21(14,64,66)Batch 21(14,64,66)
Batch 21(14,64,66)
 
1 introduction
1 introduction1 introduction
1 introduction
 
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSE
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSEMODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSE
MODEL DRIVEN ARCHITECTURE, CONTROL SYSTEMS AND ECLIPSE
 
java
javajava
java
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
 
Pragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWarePragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWare
 
Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
 
Proposal
ProposalProposal
Proposal
 
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...
DOOML: A NEW DATABASE & OBJECT-ORIENTED MODELING LANGUAGE FOR DATABASE-DRIVEN...
 
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkEclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
 
What's New in MDT?
What's New in MDT?What's New in MDT?
What's New in MDT?
 
ModelTalk - When Everything is a Domain Specific Language
ModelTalk - When Everything is a Domain Specific LanguageModelTalk - When Everything is a Domain Specific Language
ModelTalk - When Everything is a Domain Specific Language
 
Integrating profiling into mde compilers
Integrating profiling into mde compilersIntegrating profiling into mde compilers
Integrating profiling into mde compilers
 
Uml introduction
Uml introductionUml introduction
Uml introduction
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 

More from Roger Xia

机器学习推动金融数据智能
机器学习推动金融数据智能机器学习推动金融数据智能
机器学习推动金融数据智能Roger Xia
 
Code reviews
Code reviewsCode reviews
Code reviewsRoger Xia
 
Python introduction
Python introductionPython introduction
Python introductionRoger Xia
 
Learning notes ruby
Learning notes rubyLearning notes ruby
Learning notes rubyRoger Xia
 
Converged open platform for enterprise
Converged open platform for enterpriseConverged open platform for enterprise
Converged open platform for enterpriseRoger Xia
 
Code reviews
Code reviewsCode reviews
Code reviewsRoger Xia
 
E commerce search strategies
E commerce search strategiesE commerce search strategies
E commerce search strategiesRoger Xia
 
Indefero source code_managment
Indefero source code_managmentIndefero source code_managment
Indefero source code_managmentRoger Xia
 
Web Services Atomic Transactio
 Web Services Atomic Transactio Web Services Atomic Transactio
Web Services Atomic TransactioRoger Xia
 
Web service through cxf
Web service through cxfWeb service through cxf
Web service through cxfRoger Xia
 
Q con london2011-matthewwall-whyichosemongodbforguardiancouk
Q con london2011-matthewwall-whyichosemongodbforguardiancoukQ con london2011-matthewwall-whyichosemongodbforguardiancouk
Q con london2011-matthewwall-whyichosemongodbforguardiancoukRoger Xia
 
Spring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataSpring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataRoger Xia
 
Consistency-New-Generation-Databases
Consistency-New-Generation-DatabasesConsistency-New-Generation-Databases
Consistency-New-Generation-DatabasesRoger Xia
 
Java explore
Java exploreJava explore
Java exploreRoger Xia
 
Mongo db实战
Mongo db实战Mongo db实战
Mongo db实战Roger Xia
 
Ca siteminder
Ca siteminderCa siteminder
Ca siteminderRoger Xia
 
Fixing twitter
Fixing twitterFixing twitter
Fixing twitterRoger Xia
 
Eclipse plug in mylyn & tasktop
Eclipse plug in mylyn & tasktopEclipse plug in mylyn & tasktop
Eclipse plug in mylyn & tasktopRoger Xia
 

More from Roger Xia (20)

机器学习推动金融数据智能
机器学习推动金融数据智能机器学习推动金融数据智能
机器学习推动金融数据智能
 
Code reviews
Code reviewsCode reviews
Code reviews
 
Python introduction
Python introductionPython introduction
Python introduction
 
Learning notes ruby
Learning notes rubyLearning notes ruby
Learning notes ruby
 
Converged open platform for enterprise
Converged open platform for enterpriseConverged open platform for enterprise
Converged open platform for enterprise
 
Code reviews
Code reviewsCode reviews
Code reviews
 
E commerce search strategies
E commerce search strategiesE commerce search strategies
E commerce search strategies
 
Saml
SamlSaml
Saml
 
JavaEE6
JavaEE6JavaEE6
JavaEE6
 
Indefero source code_managment
Indefero source code_managmentIndefero source code_managment
Indefero source code_managment
 
Web Services Atomic Transactio
 Web Services Atomic Transactio Web Services Atomic Transactio
Web Services Atomic Transactio
 
Web service through cxf
Web service through cxfWeb service through cxf
Web service through cxf
 
Q con london2011-matthewwall-whyichosemongodbforguardiancouk
Q con london2011-matthewwall-whyichosemongodbforguardiancoukQ con london2011-matthewwall-whyichosemongodbforguardiancouk
Q con london2011-matthewwall-whyichosemongodbforguardiancouk
 
Spring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataSpring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_data
 
Consistency-New-Generation-Databases
Consistency-New-Generation-DatabasesConsistency-New-Generation-Databases
Consistency-New-Generation-Databases
 
Java explore
Java exploreJava explore
Java explore
 
Mongo db实战
Mongo db实战Mongo db实战
Mongo db实战
 
Ca siteminder
Ca siteminderCa siteminder
Ca siteminder
 
Fixing twitter
Fixing twitterFixing twitter
Fixing twitter
 
Eclipse plug in mylyn & tasktop
Eclipse plug in mylyn & tasktopEclipse plug in mylyn & tasktop
Eclipse plug in mylyn & tasktop
 

Recently uploaded

From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and businessFrancesco Corti
 
UiPath Studio Web workshop series - Day 1
UiPath Studio Web workshop series  - Day 1UiPath Studio Web workshop series  - Day 1
UiPath Studio Web workshop series - Day 1DianaGray10
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNeo4j
 
Top 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTop 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTopCSSGallery
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfTejal81
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024Brian Pichman
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3DianaGray10
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch TuesdayIvanti
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2DianaGray10
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxSatishbabu Gunukula
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxNeo4j
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024Brian Pichman
 
IT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingIT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingMAGNIntelligence
 
EMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarEMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarThousandEyes
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxNeo4j
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Muhammad Tiham Siddiqui
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0DanBrown980551
 

Recently uploaded (20)

From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and business
 
UiPath Studio Web workshop series - Day 1
UiPath Studio Web workshop series  - Day 1UiPath Studio Web workshop series  - Day 1
UiPath Studio Web workshop series - Day 1
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4j
 
Top 10 Squarespace Development Companies
Top 10 Squarespace Development CompaniesTop 10 Squarespace Development Companies
Top 10 Squarespace Development Companies
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch Tuesday
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptx
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024
 
IT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingIT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced Computing
 
SheDev 2024
SheDev 2024SheDev 2024
SheDev 2024
 
EMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarEMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? Webinar
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0
 

MDD and modeling tools research

  • 1.
  • 2.
  • 3. IMM -- provide metamodel/profile implementations based on the forthcoming Information Management Metamodel (IMM) OMG specification.
  • 4. MoDisco -- provides a framework to develop model-driven tools for software modernization. It aims at supporting use-cases such as Quality Assurance, Documentation, Improvement and Migration.
  • 5. MST -- provides tooling for the development of MOF-compliant metamodels and specifications based on them.
  • 6. Papyrus -- provides an integrated, user-consumable environment for editing any kind of EMF model and particularly supporting UML and related modeling languages such as SysML and MARTE.
  • 7.
  • 8. Processing models: best practices in making the models expressed with DSLs executable by either code generation or model interpretation.
  • 9. Process and organization: best practices for process and organization around MDD.Textual vs. Visual modeling languages<br />There are textual and visual modeling languages, and current wisdom is that most domains require both. Of course EMF allows the creation and use of both visual and textual editors, too. The debate in this area is whether textual modeling and visual modeling are two separate activities or whether it is indeed desirable to unify into a combined interaction model. A commonly heard statement is that modeling and programming is one and the same. One can argue with that as it is strongly dependent on the target audience for the tools. It is not common across all domains that subject matter experts are also coders…<br />There were, however, interesting presentations of tools that integrate multiple representations of domain concepts within a predominantly textual editor, for example a state machine encoded in Java that could be represented, embedded in the editor, as a diagram or as a state table. It allowed the engineer to manipulate the state table and then revert back to the Java representation with the changes present in the Java encoding.<br />Agile Modeling<br />Agile Modeling (AM) is a practice-based methodology for effective modeling and documentation of software-based systems. At a high level AM is a collection of best practices, depicted in the pattern language map below<br />Modeling Tools<br />There are so many tools created for modeling. <br />Eclipse Modeling Tools<br />This modeling package contains a collection of Eclipse Modeling Project components, including EMF, GMF, MDT XSD/OCL/UML2, M2M, M2T, and EMFT elements. It includes a complete SDK, developer tools and source code. Some of its components are still in incubation phase. Find it here.<br />Graphical Modeling Tools<br />In the following section, we pick out ten modeling tools, some of them are graphic UML tools, some of them are used for data modeling and profiling, some of them focus on MDA.<br />Overview of Graphical Modeling Tools<br />name Version Platform & Environment XMIDescription ArgoUML BSDJava Leading open source UML modeling tool;XMI, OCL support; Forward /reverse engineering/jar/class file import;Cognitive support, Reflection-in-action; corrective automations, i18n, multiple diagram export format Astah Community /Professional Java、C#、C++ A lightweight UML editor integrated with ERD, DFD, CRUD and Mind mapping features for software developers.astah* API (Models of Class, UseCase, Activity, Sequence and Statemachine Diagrams)Originally known as JUDE. StarUML Opensource Run on Win32 platform Open Source UML/MDA Platform;UML2.0; MDA {StarUML provides many customization variables like as UML profile, Approach, Model Framework, NX(notation extension), MDA code and document template and so on.}Plug-in Architecture; UsabilityVisual Paradigm for UML Community / EnterpriseJava, C++, CORBA IDL, PHP, XML Schema, C#, VB .NET, Object Definition Language (ODL), Flash ActionScript 3.0, Delphi, Perl, Python, Objective-C UML modeling, Use case modeling, Report generation (PDF, MS word, HTML, customizable, publish to web), Code engineering;Data modeling: ERD, Support SysML, BPMN, XMI. EclipseUML Omondo Powered by Eclipse 3.7 Indigo;Built on the top of MOF and uses Ecore as opposed to traditional tools which use transformation layers. AndroMDA Open sourceIt takes model(s) from CASE-tool(s) and generates fully deployable applications and other components.EJB, Spring, Hibernate, Struts, .NET, Web Services An open source code generation framework that follows MDA paradigm.Support UML2, based on EMF;A maven plugin to generate project templates such as for J2EE (Hibernate, EJB, Spring, WebServices, and Struts): andromdapp:generate.Schema2XMI is able to read your database and build an XMI file from it, which can then be used to load as a UML model.SQL Power ArchitectCommunity / EnterpriseInnovative Java-based data modeling tool geared specifically for Data Warehouse and Data Mart design. Data Modeling & Profiling Tool; Multi-database support, Forward engineering, Reverse engineering, Model comparison, ETL & OLAPTogether 2008 R3 license Java®/C++/CORBA® IDL UML Modeling, Data Modeling, MDA, DSL toolkit, BPMN validation, Eclipse platform, generate doc;LiveSource® technology; Eclipse PlatformMagicDraw Enterprise License round-trip support for Java, C++, C#, CL (MSIL) and CORBA IDL programming languages Integrate with Eclipse, code engineering mechanism, database schema modeling, DDL generation and reverse engineering facilities;Support RUP and WAE design pattern;Support SysML, BPMN 2.0, DoDAF, OCL, XMI.Enterprise Architect Enterprise License C++, Java, C#, Delphi, SQL-DDL, VB.NET, VB Virtual modeling platform: uml analysis and design, full traceability from requirements to deployment, code engineering in over 10 languages;Scalable, team-based repository;Enterprise frameworks, mind maps, BPMN... Eclipse Integration (MDG Integration).<br />Screenshot<br />ArgoUML<br />Astah*<br />StarUML<br />EclipseUML<br />AndroMDA<br />Architecture of AndroMDA Generated ApplicationsJava.Net<br />SQL Power Architect<br />Tool-based Process for a change request to an existing data model<br />Together 2008 R3<br />Together 2008 Release 3 can be installed to an existing instance of Eclipse SDK version 3.6.1 from the online or archived update site. <br />MagicDraw<br />When using MagicDraw with Eclipse, Mia-Generation is integrated through its standard Eclipse plugin.<br />Create models, generate and edit generated files within Eclipse<br />Conclusion<br />StarUML, ArgoUML, Astah, VP UML are all good UML tools<br />Power architect is a good data modeling and profiling tool<br />AndroMDA and EclipseUML are good at MDA, generating enterprise project from models.<br />Enterprise Architect / Together 2008/ MagicDraw are all powerful tools in UML and Data modeling, but they need pay. <br />Working on Eclipse<br />For the tools (argoUML, androMDA, starUML, VP UML, Together, magicDraw, Enterprise Architect), who support XMI technology, we can export uml to XMI, and then import XMI to another modeling tool which support XMI. (Pay attention to UML version.)<br />Together 2008 R3 based on Eclipse platform.<br />There is a tool called ArgoEclipse, that enables us to work with argouml in eclipse, and also we can use argo2ecore to create uml models created with argouml to the eclipse uml dialet ecore, and then use emf codegenerator (e.g. JET) to generate java code.<br />Merlin, an innovation software modeling tool built on top of Eclipse platform and EMF. support code generation and model transformation.<br />EclipseUML built on the top of MOF and uses Ecore.<br />AndroMDA has a repository called quot; org.andromda.repositories.emfquot; , which implements the Eclipse EMF repository integration with AndroMDA, this integration allows AndroMDA to use the Eclipse EMF framework as a repository for loading, and querying object models.<br />When using MagicDraw with Eclipse, Mia-Generation is integrated through its standard Eclipse plugin, this integration enables modeling, generating and editing the generated code within Eclipse.<br /> The MDG Integration for Eclipse provides seamless integration with Eclipse and Enterprise Architect.<br />DSL Tools with textual modeling<br />Xtext<br />With Xtext you can easily create your own programming languages and domain-specific languages (DSLs). The framework supports the development of language infrastructures including compilers and interpreters as well as full blown Eclipse-based IDE integration.<br />Resources:<br />Combining Text and Graphics in Eclipse-based Modeling Tools<br />Model Driven Software Development with Eclipse<br />Building DSLs With Eclipse<br />TEF<br />The Textual Editing Framework (TEF) allows you to create textual editors for your EMF-based languages. TEF provides a syntax definition language called TSL. In this language, you, the language engineer, can describe a textual notation for a given Ecore meta-model. TEF is based on Eclipse. There are two different strategies to approach the textual editing of models: Model View Controller (representation/model separation) and Background Parsing (allow using features and plug-ins). TEF chooses the background parsing strategy.<br />TCS<br />Textual Concrete Syntax (TCS) is an Eclipse/GMT component that enables the specification of textual concrete syntaxes for Domain-Specific Languages (DSLs) by attaching syntactic information to metamodels. With TCS, it is possible to parse (text-to-model) and pretty-print (model-to-text) DSL sentences. Moreover, TCS provides an Eclipse editor, which features: syntax highlighting, an outline, hyperlinks, and hovers for every DSL which syntax is represented in TCS.<br />EMFText<br />EMFText is an Eclipse plug-in that allows you to define text syntax for languages described by an Ecore metamodel. EMFText enables developers to define textual Domain Specific Languages quickly and without the need to learn new technologies and concepts.<br />JetBrains MPS<br />Meta Programming System (MPS) is a brand new concept of software development environment implementing the Language Oriented Programming paradigm. Open-source product, available under Apache 2.0 License<br />DSL2JDT, ETMOP, CAL<br />References<br />Model Driven Development Misperceptions and Challenges<br />Making Model-Driven Software Development live up to its promises<br />Textual Modeling Tools<br />From Programming to Modeling and Back again<br />