pim to psm transformations for an event driven
play

PIM to PSM transformations for an event driven architecture in an - PowerPoint PPT Presentation

Leuven Institute for Research on Information Systems (LIRIS) PIM to PSM transformations for an event driven architecture in an educational tool Geert Monsieur, Monique Snoeck, Raf Haesen, Wilfried Lemahieu KULeuven Faculty of economics and


  1. Leuven Institute for Research on Information Systems (LIRIS) PIM to PSM transformations for an event driven architecture in an educational tool Geert Monsieur, Monique Snoeck, Raf Haesen, Wilfried Lemahieu KULeuven Faculty of economics and appplied economics Management Information Systems Group (Belgium) Geert.Monsieur@econ.kuleuven.be

  2. Leuven Institute for Research on Information Systems (LIRIS) Presentation overview • Introduction • Solution – Platform Independent Model (PIM) – Platform Specific Model (PSM) – Transformation Rules • Conclusion 2

  3. Leuven Institute for Research on Information Systems (LIRIS) Presentation overview • Introduction • Solution – Platform Independent Model (PIM) – Platform Specific Model (PSM) – Transformation Rules • Conclusion 3

  4. Leuven Institute for Research on Information Systems (LIRIS) Why do we need MDA in an educational environment? • Course on Business Modelling – understand organisational impact of business model – Requires concrete understanding of abstract domain model (with all behavioural and interaction aspects) • Goal of our MDA tool – create a prototype to improve concretisation Transformation Model (PIM) Prototype 4 student educational Case Tool

  5. Leuven Institute for Research on Information Systems (LIRIS) Presentation overview • Introduction • Solution – Platform Independent Model (PIM) – Platform Specific Model (PSM) – Transformation Rules • Conclusion 5

  6. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Platform Independent Model (PIM) 3 views/diagrams Class diagram Object Event Table (OET) Finite State Machines 7

  7. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Class diagram running example Class diagram Object Event Table (OET) Finite State Machines 8

  8. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Object-Event Table • Event = atomic unit of action that can Class diagram involve several domain classes Object Event • Standardised event-based interaction Table (OET) pattern instead of sequence charts/ Finite State Machines collaboration diagrams • Motivation = raise abstraction level N participants (event consumers) Event 9

  9. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Object event table (OET) Different roles in processing of an event Class diagram Object Event V = validation (checking some preconditions) Table (OET) M = modification of the instance Finite State C = creation of an instance Machines E = ending of an instance (for the moment we include V in all roles in our MDA tool) Customer Product Order OrderLine ... cr_order V C cr_orderLine V+M M C .... 10 running example

  10. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Finite State Machines (FSM) (1 per class) Class diagram Object Event Table (OET) Finite State Machines 11 running example

  11. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Platform specific model 3 layers GUI layer Swing uses Event handling layer Session bean uses Persistence layer Hibernate 12

  12. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Generating the persistence layer GUI layer Event handling layer Persistence layer • Transforming the class diagram and operations (columns of OET) • Transforming the finite state machines 13

  13. Leuven Institute for Research on Information Systems (LIRIS) Transforming the class diagram and operations (columns of OET) 14

  14. Leuven Institute for Research on Information Systems (LIRIS) Transforming the finite state machines 15

  15. Leuven Institute for Research on Information Systems (LIRIS) Partial generated persistence layer = transformed class = transformed FSM 16

  16. Leuven Institute for Research on Information Systems (LIRIS) Partial generated persistence layer = transformed class = transformed FSM 17

  17. Leuven Institute for Research on Information Systems (LIRIS) Transformed FSM 18

  18. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Generating the event handling layer GUI layer Event handling layer Persistence layer • Transforming the events (rows of OET) • Standard collaboration pattern for generation of an event handler 19

  19. Leuven Institute for Research on Information Systems (LIRIS) Transforming the events (rows of OET) into event handlers How do these generated event handlers work? Standard collaboration pattern required! (see next slide) 20

  20. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern for generation of an event handler • Pattern consists of 4 steps – Step 1 Checking event preconditions in every participating object – Step 2 Checking state conditions in every participating object – Step 3 Processing the event in every participating object – Step 4 Changing state in every participating object 21

  21. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern (step 1) 22

  22. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern (step 1 and 2) 23

  23. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern (step 1 and 2) 24

  24. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern (step 3) 25

  25. Leuven Institute for Research on Information Systems (LIRIS) Standard collaboration pattern (step 3 and 4) 26

  26. Leuven Institute for Research on Information Systems (LIRIS) PIM PSM Transformation rules Generating the GUI layer Main Window: GUI layer Select Domain Object Event handling layer Persistence layer DO Window: •Select Business Event •List of Instances • Also strongly based on the defined events • Details are beyond Business Event Window: •Event Attributes scope of this •Select Participating Instances presentation… 27

  27. Leuven Institute for Research on Information Systems (LIRIS) Standard Generated event collaboration pattern handling layer applied for a specific event handler SessionBean handle_cr_OrderLine() Involved object types: OrderLine, Order, Product (all event handlers) // checking preconditions (step 1) ����������������������� orderLine.check_preconditions_for_cr_OrderLine() order.check_preconditions_for_cr_OrderLine() product.check_preconditions_for_cr_OrderLine() // checking state conditions (step 2) ��������������������� orderLine.getState().check_state_for_cr_OrderLine() ���������������������� order.getState().check_state_for_cr_OrderLine() �������������������� product.getState().check_state_for_cr_OrderLine() // event processing (step 3) ��������������������� orderLine.method_for_cr_OrderLine() ����������������� order.method_for_cr_OrderLine() ���������������� product.method_for_cr_OrderLine() // state modifications (step 4) ������ orderLine.getState().change_state_for_cr_OrderLine() ���������������������� order.getState().change_state_for_cr_OrderLine() ������ 29 product.getState().change_state_for_cr_OrderLine()

  28. Leuven Institute for Research on Information Systems (LIRIS) Presentation overview • Introduction • Solution – Platform Independent Model (PIM) – Platform Specific Model (PSM) – Transformation Rules • Conclusion 30

  29. Leuven Institute for Research on Information Systems (LIRIS) Conclusions • If a generated application doesn’t work as expected, students are wondering what’s wrong? Model (PIM) or Transformation rules • MDA can only be manageable with error-free transformation rules • How can we support the student’s process of making a high-quality PIM? 31

  30. Leuven Institute for Research on Information Systems (LIRIS) Conclusions (cont.) • Realisation of error-free transformation � central role of ‘business events’ in our transformation • Supporting students to make a high-quality PIM � advanced consistency techniques implemented in the modelling tool (by construction, monitoring, analysis, etc.) 32

  31. Leuven Institute for Research on Information Systems (LIRIS) Conclusions (cont.) • Inheritance in OET can yield complex models � hard to translate in PSM in an automated way (future research) • Still difficult to discover transformation rules that are in general robust to arbitrary combinations of PIM concepts 33

  32. Leuven Institute for Research on Information Systems (LIRIS) Questions, comments, reflections, … 34

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend