Download presentation
Presentation is loading. Please wait.
Published byAdele Briggs Modified over 9 years ago
1
Andrey Karaulov, Alexander Strabykin Institute for System Programming Russian Academy of Sciences SYRCoSE: Spring Young Researchers Colloquium on Software Engineering May 28-29, 2009, Higher School of Economics, Moscow, Russian Federation Research in Progress Report
2
SYRCoSE 2009 Introduction ◦ Model Driven Development ◦ Unified Modeling Language Optimizing transformations properties Compiler optimization adaptation Tool support features
3
SYRCoSE 2009 Details Abstraction M1M1 MNMN C M2M2 …
4
SYRCoSE 2009 Complex systems have complex models Models are the only artifacts to interact with Shift of activities to model level Problems with editing generated code Need for optimization on model level
5
SYRCoSE 2009 Allows specification of the system from all the points related to software lifecycle Most popular universal modeling language Widely supported by modeling tools Contains Object Constraint Language (OCL) ◦ Pre/post conditions ◦ Invariants
6
SYRCoSE 2009 Sequence diagram Activity diagrams Text in target language Statemachine diagrams
7
SYRCoSE 2009
8
Behavior preservation ◦ Semantics is tool-dependant Memory consumption decrease ◦ UML standard does not provide memory managing means Execution time reduction Extracting information from constraints
9
SYRCoSE 2009 Refactoring ◦ Shift to model level ◦ Different goal Automata minimization ◦ Complicated by UML semantics General UML model transformation ◦ Stronger tool support ◦ Lack of constraint support Compiler optimization ◦ Visible to users
10
SYRCoSE 2009 Overheads State selection Update of Message queues Interactions with Timers
11
SYRCoSE 2009 Compiler Optimizations (44) Applicable to UML models (32) Loop related (7) Not related to Loops (25) Redundancy removal (13) Replacement (12) Not applicable to UML (12)
12
SYRCoSE 2009 Loop related ◦ Number of iteration ◦ Body invariants Redundancy removal ◦ Dead code ◦ Simplifying expressions UML specific
13
SYRCoSE 2009 Component reuse ◦ Standard protocol implementations ◦ Parameter checks Generated state machines User mistakes
14
SYRCoSE 2009 Analyzer Constraints Model Solutions Transformer Model_2 Constraints_2 Transformation Descriptions
15
SYRCoSE 2009 Transformation description ◦ Metalevel pattern ◦ Constraints Flexible set of transformation Transformation history Constraint resolution explanation
16
SYRCoSE 2009
19
MDD support causes the need for optimizations of executable UML models Existing tools and approaches cannot handle optimizations and constraint analysis A part of compiler optimizations can be adapted to UML New transformations should be created and implemented
20
SYRCoSE 2009 Design of new UML-specific optimizations Formalization of transformations Implementation of transformations Evaluation on industry-size projects
21
SYRCoSE 2009 Thank you sdt@ispras.ru
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.