using domain specific languages for software process
play

Using Domain Specific Languages for Software Process Modeling Daro - PowerPoint PPT Presentation

Problem Domain Proposal Discussion Using Domain Specific Languages for Software Process Modeling Daro Correal Rubby Casallas {dcorreal,rcasalla@uniandes.edu.co} The 7th OOPSLA Workshop on Domain-Specific Modeling Montreal - Canada,


  1. Problem Domain Proposal Discussion Using Domain Specific Languages for Software Process Modeling Darío Correal Rubby Casallas {dcorreal,rcasalla@uniandes.edu.co} The 7th OOPSLA Workshop on Domain-Specific Modeling Montreal - Canada, October 21-22, 2007 DSM-07 Slide 1

  2. Problem Domain Proposal Discussion Outline Problem Domain 1 Proposal 2 Discussion 3 DSM-07 Slide 2

  3. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Problem Domain Software Process Modeling Activities Control Flow DSM-07 Slide 3

  4. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Business Process Modeling Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns DSM-07 Slide 4

  5. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Business Process Modeling Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns DSM-07 Slide 4

  6. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Business Process Modeling Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns DSM-07 Slide 4

  7. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Example Design and Codification of a Software Component There are multiple concerns defined around this process Stakeholders expect this resulting process !!! DSM-07 Slide 5

  8. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Example Design and Codification of a Software Component There are multiple concerns defined around this process Stakeholders expect this resulting process !!! DSM-07 Slide 5

  9. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Example Design and Codification of a Software Component There are multiple concerns defined around this process Stakeholders expect this resulting process !!! DSM-07 Slide 5

  10. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Main Objectives: To make process definitions explicit with the use of models To reduce the complexity of changing process models DSM-07 Slide 6

  11. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Main Objectives: To make process definitions explicit with the use of models To reduce the complexity of changing process models DSM-07 Slide 6

  12. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Key Definitions Target Process A target process (TAP) is a business process selected for improvement inside an organization. DSM-07 Slide 7

  13. Domain Problem Domain Challenges Proposal Objectives Discussion Definitions Key Definitions Viewpoint A viewpoint [10] is the perspective from which a particular stakeholder interacts with a TAP in terms of the concerns relevant to him. DSM-07 Slide 8

  14. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation Our Strategy is organized in the following way Target processes definition using process models 1 Viewpoint definition using a Domain-Specific language 2 Target process and Viewpoints Integration 3 DSM-07 Slide 9

  15. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 1. Target Process Definition We defined a Business Process Metamodel Based on the Business Process Modeling Notation (BPMN) specification proposed by the OMG [1] DSM-07 Slide 10

  16. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition We designed and defined the AspectViewpoint Language A Domain-Specific Aspect Language (DSAL) To create Viewpoint models (Concerns) Uses the Workflow Control Patterns [11] as part of its vocabulary DSM-07 Slide 11

  17. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition (Cont.) With AspectViewpoint we can express Where the viewpoint affects the target process How the viewpoint modifies the target process DSM-07 Slide 12

  18. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition (Cont.) With AspectViewpoint we can express Where the viewpoint affects the target process How the viewpoint modifies the target process DSM-07 Slide 12

  19. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition (Example) DSM-07 Slide 13

  20. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition (Example) DSM-07 Slide 14

  21. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 2. Viewpoint Definition (Example) DSM-07 Slide 15

  22. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 3. Target Process and Viewpoints Integration DSM-07 Slide 16

  23. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 4. Technologies Used Generic Modeling Environment (GME) [9] - BPMN metamodel OpenArchitectureware framework [8] AspectViewpoint grammar definition AspectViewpoint Metamodel generation Transformation of Viewpoint models into ECL code Embedded Constraint Language (ECL) [5] - Express Process Model transformations C-SAW weaving engine [7] to transform process models DSM-07 Slide 17

  24. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 4. Technologies Used Generic Modeling Environment (GME) [9] - BPMN metamodel OpenArchitectureware framework [8] AspectViewpoint grammar definition AspectViewpoint Metamodel generation Transformation of Viewpoint models into ECL code Embedded Constraint Language (ECL) [5] - Express Process Model transformations C-SAW weaving engine [7] to transform process models DSM-07 Slide 17

  25. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 4. Technologies Used Generic Modeling Environment (GME) [9] - BPMN metamodel OpenArchitectureware framework [8] AspectViewpoint grammar definition AspectViewpoint Metamodel generation Transformation of Viewpoint models into ECL code Embedded Constraint Language (ECL) [5] - Express Process Model transformations C-SAW weaving engine [7] to transform process models DSM-07 Slide 17

  26. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 4. Technologies Used Generic Modeling Environment (GME) [9] - BPMN metamodel OpenArchitectureware framework [8] AspectViewpoint grammar definition AspectViewpoint Metamodel generation Transformation of Viewpoint models into ECL code Embedded Constraint Language (ECL) [5] - Express Process Model transformations C-SAW weaving engine [7] to transform process models DSM-07 Slide 17

  27. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 4. Technologies Used Generic Modeling Environment (GME) [9] - BPMN metamodel OpenArchitectureware framework [8] AspectViewpoint grammar definition AspectViewpoint Metamodel generation Transformation of Viewpoint models into ECL code Embedded Constraint Language (ECL) [5] - Express Process Model transformations C-SAW weaving engine [7] to transform process models DSM-07 Slide 17

  28. 1. Target Process Models Problem Domain 2. Viewpoint Definition Proposal 3. Target Process and Viewpoints Integration Discussion 4. Implementation 5. Experimentation 5. Experimentation We work with a Software Development Company Technical solution process area - CMMi level 1 (Continuous Representation) We created a Target Process model to represent this process The objective was to modify the process to achieve level 2 The test cases in this scenario showed how the generic practices (concerns) were easily modeled using our viewpoint language After the integration of the TAP and the Viewpoints we obtained the expected processes. DSM-07 Slide 18

Recommend


More recommend