A Comparison of Aspectoriented Approaches to Model Driven Engineering - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

A Comparison of Aspectoriented Approaches to Model Driven Engineering

Description:

none – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 19
Provided by: devonms
Category:

less

Transcript and Presenter's Notes

Title: A Comparison of Aspectoriented Approaches to Model Driven Engineering


1
A Comparison of Aspect-oriented Approaches to
Model Driven Engineering
Devon M. Simmonds, Computer Science
Department University of North Carolina,
Wilmington simmondsd_at_uncw.edu
Y. Raghu Reddy, Department of Software
Engineering Rochester Institute of Technology
Eunjee Song, Department of Computer
Science Baylor University
Emanuel Grant, Department of Computer
Science, University of North Dakota
2
A Comparison of Aspect-oriented Approaches to
Model Driven Engineering
  • Outline
  • Overview of model driven engineering
  • Challenges in model driven engineering
  • Overview of AOMDE approaches
  • Generate-Then-Weave Approaches
  • Lessons Learned and Future Work

3
Model Driven Engineering
  • xxxx

4
MDE Challenges
  • Model specification
  • Model transformation
  • Model analysis
  • Model evolution and reuse
  • Model debugging

5
MDE is difficult in the presence of crosscutting
functionality
Tangling!!
6
Crosscutting Functionality
An Aspect-Oriented Approach is beneficial
  • In AOSD crosscutting functionality is isolated in
    modular units called aspects.

6
7
Overview of AOMDE Approaches
  • Weave Then Generate
  • Generate Then Weave


Primary Model Code/Binary
Aspect Models Code/Binary
8
Weave Then Generate Approach
Application Integration
Primary Model Development
Primary Model Customization
createError
morePM
enhanceError
weavePMError
Analysis
Enhance
PIM
Create Primary Model
Weave
else
Requirements Specification
Composed Design Model
else
Enhanced PIM
else
else
weaveAsp Error
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
mapping Error
else
Complete Application
aspectDesignError
moreAspects
enhance AspError
codePM Error
else
Aspect Models Development
Aspect Models Customization
codeAspError
Code Generation
9
Generate Then Weave Approaches(1)
Application Integration
Code Generation
Primary Model Development
Primary Model Customization
1
createError
morePM
Analysis
Enhance
codePMError
PIM
enhanceError
Create Primary Model
else
2
Requirements Specification
else
Weave
Generate Code
else
Enhanced PIM
else
3
5
4
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
mapping Error
else
else
weave PMError
codeAspError
aspectDesignError
more Aspects
enhance AspError
weaveAsp Error
Aspect Models Development
Aspect Models Customization
Code Generation
Enhance-Generate Enhance-Instantiate Approach
(1-2-3-4-5)
10
Generate Then Weave Approaches(2)
Application Integration
Code Generation
Primary Model Development
Primary Model Customization
1
createError
morePM
Analysis
Enhance
codePMError
PIM
enhanceError
Create Primary Model
else
2
Requirements Specification
else
Weave
Generate Code
else
Enhanced PIM
else
3
4
5
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
enhance AspError
mapping Error
else
else
weave PMError
aspectDesignError
more Aspects
CodeAsp Error
weaveAsp Error
Code Generation
Aspect Models Development
Aspect Models Customization
Enhance-Generate Generate-Enhance Approach
(1-2-5-3-4)
11
Generate Then Weave Approaches(3)
Primary Model Customization
Application Integration
Primary Model Development
Code Generation
createError
morePM
enhanceError
2
Analysis
codePMError
PIM
else
Create Primary Model
Generate Code
else
Enhance
else
Requirements Specification
Weave
1
else
3
5
4
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
mapping Error
else
else
weave PMError
codeAspError
aspectDesignError
more Aspects
enhance AspError
weaveAsp Error
Aspect Models Customization
Aspect Models Development
Code Generation
Generate-Enhance Enhance-Instantiate Approach
(2-1-3-4-5)
12
Generate Then Weave Approaches(4)
Application Integration
Code Generation
Primary Model Development
Primary Model Customization
createError
morePM
enhanceError
2
Analysis
codePMError
PIM
else
Create Primary Model
Generate Code
else
Enhance
else
Requirements Specification
Weave
1
else
3
4
5
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
enhance AspError
mapping Error
else
else
weave PMError
aspectDesignError
more Aspects
CodeAsp Error
weaveAsp Error
Code Generation
Aspect Models Development
Aspect Models Customization
Generate-Enhance Generate-Enhance Approach
(1-2-5-3-4)
13
Summary Generate Then Weave Approaches
Application Integration
Code Generation
Primary Model Development
Primary Model Customization
E
createError
morePM
Analysis
Enhance
codePMError
PIM
enhanceError
Create Primary Model
else
G
W
Requirements Specification
else
Weave
Generate Code
else
Enhanced PIM
else
E
G
I
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
mapping Error
else
else
weave PMError
codeAspError
aspectDesignError
more Aspects
enhance AspError
weaveAsp Error
Aspect Models Development
Aspect Models Customization
Code Generation
Computation may then be represented as
permutation P(2,2)P(3,3) which means there are
2!3! or 12 valid combinations.
14
Instantiation unlikely to precede Enhancement
15
(No Transcript)
16
Lessons Learned
  • AOMDE requires an understanding of how AOSD
    affect MDE lifecycle.
  • MDE is not a unary model-to-code process
  • A variety of approaches are available.
  • Further research needed to explore AOMDE in both
    initial development and evolution

17
Future Work
Application Integration
Code Generation
Primary Model Development
Primary Model Customization
createError
morePM
Analysis
Enhance
codePMError
PIM
enhanceError
Create Primary Model
else
Requirements Specification
else
Weave
Generate Code
else
Enhanced PIM
else
Complete Application
Acquire Aspect Models
else
Enhance
Instantiate
Generate Code
Generic Design Aspects
else
mapping Error
else
else
  • Evaluating approaches using case studies
  • Initial development
  • Evolution

weave PMError
codeAspError
aspectDesignError
more Aspects
enhance AspError
weaveAsp Error
Aspect Models Development
Aspect Models Customization
Code Generation
18
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com