Mehdi Bagherzadeh Hridesh Rajan Gary T. Leavens
Iowa State Univeristy Iowa State University University of Central Florida mbagherz@cs.iastate.edu hridesh@cs.iastate.edu leavens@eecs.ucf.edu
Translucid Contracts for Aspect-oriented Interfaces 9th Workshop on - - PowerPoint PPT Presentation
Mehdi Bagherzadeh Hridesh Rajan Gary T. Leavens Iowa State Univeristy Iowa State University University of Central Florida mbagherz@cs.iastate.edu hridesh@cs.iastate.edu leavens@eecs.ucf.edu Translucid Contracts for Aspect-oriented
Iowa State Univeristy Iowa State University University of Central Florida mbagherz@cs.iastate.edu hridesh@cs.iastate.edu leavens@eecs.ucf.edu
Background Motivation Translucid Contracts summary
http://www.cs.iastate.edu/~ptolemy/ 2 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
http://www.cs.iastate.edu/~ptolemy/ 3 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
1 Fig event Changed { 2
3 }
http://www.cs.iastate.edu/~ptolemy/ 4 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
1
2
3
4 class Fig { } 5 class Point{ 6
7
8
9
10
11
12 }
http://www.cs.iastate.edu/~ptolemy/ 5 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
1 Fig event Changed{ 2
3 } 13 class Update { 14
15
16
17
18
19
20
21
22
23
http://www.cs.iastate.edu/~ptolemy/ 6 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
1 Fig event Changed { 2
3
4
5 }
http://www.cs.iastate.edu/~ptolemy/ 7 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
Background Motivation Translucid Contracts summary
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 Fig event Changed { 2
3
4
5
6
7
8
9 }
◮ event announcement and invoke expressions
◮ event announcement and invoke expressions
http://www.cs.iastate.edu/~ptolemy/ 10 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
http://www.cs.iastate.edu/~ptolemy/ 11 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
http://www.cs.iastate.edu/~ptolemy/ 12 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1
2
3
4
5
6
7
http://www.cs.iastate.edu/~ptolemy/ 13 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1
2
3
4
5
6
7
8
9
http://www.cs.iastate.edu/~ptolemy/ 14 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
◮ Rinard et al.’s classification [FSE ’04 ] ◮ augmentation, replacement, narrowing, combination ◮ Properties beyond this classification
◮ Apply it to other AO interfaces ◮ XPI [Sullivan et al ’05, ’09] ◮ AAI [Kiczales & Mezini ’05] ◮ Open Modules [Aldrich ’05] http://www.cs.iastate.edu/~ptolemy/ 15 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 Fig event Changed { 2
3
4
5
6
7
8
9 }
http://www.cs.iastate.edu/~ptolemy/ 16 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 class Fig {int fixed;} 2 Fig event Changed { 3
4
5
6
7
8
9
10 }
http://www.cs.iastate.edu/~ptolemy/ 17 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 Fig event Moved { 2
3
4
5
6
7
8
9 }
http://www.cs.iastate.edu/~ptolemy/ 18 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1
2
3
4
5
6
7
http://www.cs.iastate.edu/~ptolemy/ 19 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 class Point extends Fig{ 2
3
4
5
6
7
8
9
10
11 Fig event Moved{ 12
13
14
15
16
17
18
19
20 class Scaling { 21
22
23
24
25
26
27
28
29
30
31
http://www.cs.iastate.edu/~ptolemy/ 20 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
http://www.cs.iastate.edu/~ptolemy/ 21 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
1 module FigModule { 2
3
4
5
6
7
8
9
10
11
12
13
14
15 aspect Enforce { 16
17
18
19
20
21
22
23
24
25
26
27 } http://www.cs.iastate.edu/~ptolemy/ 22 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary Solution Expressiveness Applicability Related Work
http://www.cs.iastate.edu/~ptolemy/ 23 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
http://www.cs.iastate.edu/~ptolemy/ 24 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
Background Motivation Translucid Contracts summary
http://www.cs.iastate.edu/~ptolemy/ 26 Translucid Contracts for Aspect-oriented Interfaces
Background Motivation Translucid Contracts summary
http://www.cs.iastate.edu/~ptolemy/ 27 Translucid Contracts for Aspect-oriented Interfaces