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

using domain specific languages for software process
SMART_READER_LITE
LIVE PREVIEW

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,


slide-1
SLIDE 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

slide-2
SLIDE 2

Problem Domain Proposal Discussion

Outline

1

Problem Domain

2

Proposal

3

Discussion

DSM-07 Slide 2

slide-3
SLIDE 3

Problem Domain Proposal Discussion Domain Challenges Objectives Definitions

Problem Domain Software Process Modeling Activities Control Flow

DSM-07 Slide 3

slide-4
SLIDE 4

Problem Domain Proposal Discussion Domain Challenges Objectives Definitions

Business Process Modeling

Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns

DSM-07 Slide 4

slide-5
SLIDE 5

Problem Domain Proposal Discussion Domain Challenges Objectives Definitions

Business Process Modeling

Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns

DSM-07 Slide 4

slide-6
SLIDE 6

Problem Domain Proposal Discussion Domain Challenges Objectives Definitions

Business Process Modeling

Defining and Maintaining a Process Definition is a Complex task Multiple activities Multiple stakeholders Multiple concerns

DSM-07 Slide 4

slide-7
SLIDE 7

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-8
SLIDE 8

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-9
SLIDE 9

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-10
SLIDE 10

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-11
SLIDE 11

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-12
SLIDE 12

Problem Domain Proposal Discussion Domain Challenges Objectives Definitions

Key Definitions

Target Process A target process (TAP) is a business process selected for improvement inside an organization.

DSM-07 Slide 7

slide-13
SLIDE 13

Problem Domain Proposal Discussion Domain Challenges Objectives 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

slide-14
SLIDE 14

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 4. Implementation
  • 5. Experimentation

Our Strategy is organized in the following way

1

Target processes definition using process models

2

Viewpoint definition using a Domain-Specific language

3

Target process and Viewpoints Integration

DSM-07 Slide 9

slide-15
SLIDE 15

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-16
SLIDE 16

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-17
SLIDE 17

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-18
SLIDE 18

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-19
SLIDE 19

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 4. Implementation
  • 5. Experimentation
  • 2. Viewpoint Definition (Example)

DSM-07 Slide 13

slide-20
SLIDE 20

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 4. Implementation
  • 5. Experimentation
  • 2. Viewpoint Definition (Example)

DSM-07 Slide 14

slide-21
SLIDE 21

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 4. Implementation
  • 5. Experimentation
  • 2. Viewpoint Definition (Example)

DSM-07 Slide 15

slide-22
SLIDE 22

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 4. Implementation
  • 5. Experimentation
  • 3. Target Process and Viewpoints Integration

DSM-07 Slide 16

slide-23
SLIDE 23

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-24
SLIDE 24

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-25
SLIDE 25

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-26
SLIDE 26

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-27
SLIDE 27

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

slide-28
SLIDE 28

Problem Domain Proposal Discussion

  • 1. Target Process Models
  • 2. Viewpoint Definition
  • 3. Target Process and Viewpoints Integration
  • 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

  • btained the expected processes.

DSM-07 Slide 18

slide-29
SLIDE 29

Problem Domain Proposal Discussion Conclusions

Conclusions

1

We reduced the complexity of changing process models

We provided a Domain-Specific model for representing stakeholder’s concerns In a Modular and non-intrusive way

2

Stakeholders and process designers improved their communications using the AspectViewpoint language

DSM-07 Slide 19

slide-30
SLIDE 30

Problem Domain Proposal Discussion Conclusions

Discussion Questions Comments

DSM-07 Slide 20

slide-31
SLIDE 31

Problem Domain Proposal Discussion Conclusions

Bibliography I

BPMi. Business Process Modeling Initiative (bpmi). Web Site, 2006. http://www.bpmi.org/. Mary Beth Chrissis, Mike Konrad, and Sandy Shrum. CMMI Guidlines for Process Integration and Product Improvement, 2nd ed. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2006. Jorge Villalobos. Cumbia-xpm: Model specification draft version 0.1. Technical report, Universidad de Los Andes, 2006.

  • J. Jimenez.

Traceability over business process model transformations. Technical report, University of Los Andes, 2007.

DSM-07 Slide 21

slide-32
SLIDE 32

Problem Domain Proposal Discussion Conclusions

Bibliography II

Yuehua Lin, Jeff Gray, and Jing Zhang. The embedded constraint language: A transformation language for visual models. Submitted for publication, 2006. Kapsammer Elisabeth Retschitzegger Werner Wimmer Manuel Schauerhuber Andrea, Schwinger Wieland. Towards a common reference architecture for aspect-oriented modeling. In 8th International Workshop on Aspect-Oriented Modeling, in conjunction with AOSD’06, Bonn,Germany, March 21., 2006. SoftCom. C-saw. Web Site, 2007. http://www.gray-area.org/Research/C-SAW/. SoftCom. OpenArchitectureware Web Site, 2007. http://www.openarchitectureware.org/.

DSM-07 Slide 22

slide-33
SLIDE 33

Problem Domain Proposal Discussion Conclusions

Bibliography III

Akos Ledeczi. The generic modeling environment. In WISP’2001, Budapest, Hungary. IEEE, May 2001. Ian Sommerville, Gerald Kotonya, Steve Viller, and Peter Sawyer. Process viewpoints. In European Workshop on Software Process Technology, pages 2–8, 1995.

  • W. M. P

. Van Der Aalst, A. H. M. Ter Hofstede, B. Kiepuszewski, and A. P . Barros. Workflow patterns.

  • Distrib. Parallel Databases, 14(1l):5–51, 2003.

DSM-07 Slide 23