1 / 20

A Synthesis-based Approach to Transformations in an MDA Software Development Process

A Synthesis-based Approach to Transformations in an MDA Software Development Process Ivan Kurtev, Klaas van den Berg University of Twente. Outline. Alternative Transformations in MDA; Synthesis-based Software Development Applied to MDA Transformations;

lukas
Download Presentation

A Synthesis-based Approach to Transformations in an MDA Software Development Process

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Synthesis-based Approach to Transformations in an MDA Software Development Process Ivan Kurtev, Klaas van den Berg University of Twente

  2. Outline • Alternative Transformations in MDA; • Synthesis-based Software Development Applied to MDA Transformations; • Example: Transforming UML class models to XML schemas; • Alternative Space Analysis Activity; • Construction of Transformation Space; • Reduction of Transformation Space;

  3. Basic MDA Concepts • Models: • CIM, PIM, PSM; • Transformations • The MDA Pattern (from “MDA Guide”)

  4. Alternatives in MDA Transformations

  5. Example: UML to XML Schema Transformation

  6. The Problem with AlternativesGeneration and Selection • Problem 1: Lack of support for identification of alternative transformations • Transformation to the desired model may not always be obvious and trivial; • Problem 2: Selection among Alternatives • Alternatives differ in their Quality properties such as Extensibility, Adaptability, Performance; • Alternative Transformations Analysis must be addressed explicitly in the MDA software development process!

  7. Alternatives Analysis in Current Software Development Processes: RUP

  8. RUP: Analysis and Design Workflow

  9. RUP: Activities, Steps and Artifacts

  10. Synthesis-based SoftwareDevelopment Process • Unified Process does not address the alternatives analysis problem; • Synthesis-based Software Development Process; • Activities in Synthesis-based Process: • Technical Problem Analysis; • Solution Domain Analysis; • Alternative Space Analysis; • We focus on the third activity: Alternative Space Analysis;

  11. MDA Transformational Problem

  12. Example UML Source Model We aim at deriving an Extensible XML schema. New specializations of ExamItem are expected.

  13. Two of many Alternative XML Schemas <element name=’examItem’> <complexType> <choice> <element name=’open’ type=’…’/> <element name=’mutipleChoice’ type=’…’/> </choice> </complexType> </element> <element name=’examItem’ type=’examItemType’ abstract=’true’/> ……………….. </complexType> <complexType name=’multipleChoiceType’> <complexContent> <extension base=’examItemType’> ……. </extension> </complexContent> </complexType> <element name=’multipleChoice’ type=’multipleChoiceType’ substitutionGroup=’examItem’/>

  14. Alternative Space Analysis as part ofthe Synthesis Process Alternative Space Analysis Activity Workflow of the Alternative Space Analysis Activity

  15. Step 1: Constructing Transformation Space CT – Complex Type E – Element MG – Model Group AG – Attribute Group Der – Derivation Subst – Substitution Cont – Containment Ref – Reference (Derived from XML Schema Meta-model) • Set of dimensions: one dimension for every (relevant) element from the source model; • A coordinate set for every dimension; 4 x 4 x 5=80 alternatives

  16. Step 2: Reducing Transformation Space after selection: after exclusion: (ExamItem.E or ExamItem.CT) and (Open.E or Open.CT) ExamItem_Open.E or ExamItem_Open.Ref 12 alternatives 20 alternatives

  17. Step 3: Reducing Transformation Space based onQuality Requirements • In this example the Quality Model is the model of Extensibility; • Model elements are: • Extensible (Exts); • Inextensible (InExts); • Our technique allows merging of quality properties with a transformation space;

  18. Set of Alternative Transformations After applying some reduction steps and taking into account the quality properties, two alternative transformations from the space are selected: Dimension Alternative Transformation Coordinate

  19. Conclusions • We presented an Activity of Alternative Space Analysis as a part of Synthesis-based Software Development Process for MDA transformations; • Transformation Space: • Is NOT a transformer; • Is NOT a transformation specification; • Not all alternatives in the Transformation Space are explicitly generated;

  20. Future Work • Study the full synthesis-based process; • Experiments with more complex mappings (not only 1:1 as in the example); • Experiments with more complex quality models; • Tool support;

More Related