Download presentation
Presentation is loading. Please wait.
Published byDeborah Harrell Modified over 9 years ago
1
© 2010 HCMUNS. NII-Internship program proposal: Evolution of modeling languages and models Submitted by: BUI TAN LOC NII Supervisor: Professor ZHENJIANG HU FIT Supervisor : Dr. TRAN HANH NHI
2
© 2010 HCMUNS. Content 1. MDE 2. Models Evolution and Synchronization 3. Research on Model Evolution and Synchronization at NII 4. Motivation 5. Internship Objective 6. Research plan 2
3
© 2010 HCMUNS. 1. MDE – Model-Driven Engineering 3 We don't want anymore to pay such a high price for simply moving our information system to a new middleware platform (COM, CORBA, Java, HTML, XML, DotNet, etc.) when our business system stays stable. We are prepared to pay a last price for building the abstract models of our business and services that will guarantee us against technological obsolescence. From there, any platform provider will also have to provide the mapping solutions from standard business models before we buy. The origins of MDE PIM: Platform Independent Model PSM: Platform Specific Model Platforms: Web Services, ebXML, J2EE/EJB, CORBA, MS.Net, …
4
© 2010 HCMUNS. Software development considered as a chain of model transformations 4 PIMPSM Code model 136 52 47 AnalysisDesignCode M1M1 M2M2 M3M3 M4M4 M5M5
5
© 2010 HCMUNS. An example of transformation 5 Java!Field name = “_title” type = “String” Java!Field name = “_price” type = “Double” Java!Class name = “Book” comment = “” UML!Class name = “Book” description = “a demo class” UML!Attribute name = “title” type = “String” UML!Attribute name = “price” type = “Double” Models need to be evolved [1]. One of Models Evolution topics is transformation technique for evolving models including restructuring, refactoring, migration and translation.
6
© 2010 HCMUNS. 2. Models Evolution and Synchronization problem 6 Java!Field name = “_price” type = “Double” UML!Class name = “Book” description = “a demo class” UML!Attribute name = “title” type = “String” UML!Attribute name = “price” type = “Double” Java!Field name = “_title” type = “String” Java!Class name = “Book” comment = “_bookTitle cannot be null” _bookTitle UML!Attribute name = “authors” type = “String” Simply performing the UML2Java transformation again is not adequate because the modifications on the Java model will be lost
7
© 2010 HCMUNS. Existing Approaches General Framework: Model Synchronization Through Traceability [2] Basic Incremental Transformation [3] Correspondence Construction [4] Rely on users to write code to handle each type of modifications in each side It is users who should ensure the consistency of the code Specific Languages: Synchronization tools: Rational Rose Feature model to code synchronization 7
8
© 2010 HCMUNS. Restrictions 1. No clear semantics for model synchronization in the context where a model transformation is formally given. 2. Cannot work well here, because they require users to explicitly write synchronization code to deal with each type of modification on each type of model. 3. The methods should be able to deal with general model transformations described in general transformation languages. 8
9
© 2010 HCMUNS. 3. Research on Model Evolution and Synchronization at NII Professor Zhenjiang Hu’s team proposes a type of synchronization called state-based synchronization. The first result of his team was a model synchronization tool called SyncATL [5]. Professor Hu proposed a topic on “Developing a tool for supporting synchronization of PIM and PSM models” for the 2011 NII internship program 9
10
© 2010 HCMUNS. Their contributions A clear semantics of model synchronization Four properties Stability Preservation Propagation Composibility An automatic model synchronization approach Using the existing unidirectional ATL byte code program Requiring no extra code Satisfying the four properties A prototype tool for synchronizing EMF models 10
11
© 2010 HCMUNS. Their evaluations 11 NameSource ATL Code LinesBytecode Lines UML2Java The running example in the paper 22501 Make2Ant Examples obtained from the ATL web site 891180 Class2 Relational 1271576 Book2 Publication 51566 BibTeXML2 DocBook 2623198
12
© 2010 HCMUNS. Their restrictions Can not deal with all types of insertions in the target side. The current implementation of SyncATL is mainly served as a demonstration and an evaluation of the approach we proposed in their paper [5], and is not stable enough for serious use. 12
13
© 2010 HCMUNS. 4. Motivation An example of models in my master thesis - “Building a user interface system on mobile devices in the direction of model-based” 13 Task model AUI model Models need to be evolved => Models Evolution and Synchronization problem
14
© 2010 HCMUNS. 4. Motivation (cont.) 14 My worksTheir works ApproachMDD & MBUIDMDD Modeling LanguageEcore Model 2 model LanguageATLATL, QVT IDEEclipse Synchronization problemnot be implementedbe implemented Apply SynATL for my master thesis
15
© 2010 HCMUNS. 5. Internship Objective An internship on the model evolution topic proposed by Professor Hu will be very useful for me. Via a stay at NII, I hope to obtain a solid background on the subject of model evolution, explore the possibility to apply the models synchronization solution of Professor Hu’s team to improve my master solution for MDE user interface for mobile devices. I hope to the acquired knowledge will be deep enough to allow me to identify a research plan for my future Ph.D work 15
16
© 2010 HCMUNS. 6. Research plan 1 st month: study the models evolution and synchronization problem. 2 nd month: study the state-based synchronization approach used by the professor Hu’s team and experiment the SyncATL tool. Then, I’ll evaluate the applicability of SyncATL tool propose additional extensions. 3 rd to 5 th month: propose a paradigm and implement the extension of SyncATL. 6 th month: validate the implementation and write report. 16
17
© 2010 HCMUNS. Q&A Thanks 17/16
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.