Presentation is loading. Please wait.

Presentation is loading. Please wait.

Andrey Karaulov, Alexander Strabykin Institute for System Programming Russian Academy of Sciences SYRCoSE: Spring Young Researchers Colloquium on Software.

Similar presentations


Presentation on theme: "Andrey Karaulov, Alexander Strabykin Institute for System Programming Russian Academy of Sciences SYRCoSE: Spring Young Researchers Colloquium on Software."— Presentation transcript:

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

17

18

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


Download ppt "Andrey Karaulov, Alexander Strabykin Institute for System Programming Russian Academy of Sciences SYRCoSE: Spring Young Researchers Colloquium on Software."

Similar presentations


Ads by Google