|
|
1 | (10) |
|
|
1 | (3) |
|
|
4 | (2) |
|
1.3 Model-Driven Engineering |
|
|
6 | (1) |
|
1.4 Unified Modeling Language |
|
|
7 | (1) |
|
1.5 Aspect-Oriented Paradigm |
|
|
8 | (1) |
|
|
9 | (2) |
|
2 Unified Modeling Language |
|
|
11 | (12) |
|
2.1 Why Unified Modeling Language? |
|
|
11 | (1) |
|
|
12 | (1) |
|
2.3 UML Views and Concepts |
|
|
13 | (2) |
|
|
15 | (3) |
|
2.5 UML Extension Mechanisms |
|
|
18 | (1) |
|
2.5.1 Stereotypes and Tagged Values |
|
|
18 | (1) |
|
|
18 | (1) |
|
2.6 Object-Constraint Language |
|
|
18 | (1) |
|
|
19 | (3) |
|
|
19 | (2) |
|
2.7.2 Action Language for Foundational UML |
|
|
21 | (1) |
|
|
22 | (1) |
|
3 Aspect-Oriented Paradigm |
|
|
23 | (12) |
|
|
24 | (3) |
|
3.1.1 Pointcut-Advice Model |
|
|
24 | (2) |
|
3.1.2 Multi-Dimensional Separation of Concerns Model |
|
|
26 | (1) |
|
3.1.3 Adaptive Programming Model |
|
|
26 | (1) |
|
|
27 | (1) |
|
3.3 Basic Constructs of the Pointcut-Advice Model |
|
|
28 | (4) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
28 | (3) |
|
|
31 | (1) |
|
|
32 | (1) |
|
3.4 Aspect-Oriented Modeling |
|
|
32 | (1) |
|
|
33 | (2) |
|
4 Model-Driven Architecture and Model Transformations |
|
|
35 | (12) |
|
|
37 | (1) |
|
4.1.1 Computation Independent Model (CIM) |
|
|
37 | (1) |
|
4.1.2 Platform Independent Model (PIM) |
|
|
37 | (1) |
|
4.1.3 Platform Specific Model (PSM) |
|
|
37 | (1) |
|
4.1.4 Implementation Specific Model (ISM) |
|
|
38 | (1) |
|
|
38 | (1) |
|
|
39 | (1) |
|
4.4 Applications of Model Transformations |
|
|
40 | (2) |
|
4.5 Model Transformation Languages and Tools |
|
|
42 | (2) |
|
4.5.1 Query/View/Transformation Language |
|
|
42 | (1) |
|
4.5.2 Atlas Transformation Language |
|
|
43 | (1) |
|
4.5.3 Open Architecture Ware |
|
|
43 | (1) |
|
4.5.4 IBM Model Transformation Framework |
|
|
43 | (1) |
|
|
43 | (1) |
|
4.6 Comparative Study of Model Transformation Languages |
|
|
44 | (1) |
|
|
45 | (2) |
|
|
47 | (22) |
|
5.1 Security Specification for UML Design |
|
|
47 | (6) |
|
5.1.1 Security Specification Using UML Artifacts |
|
|
47 | (5) |
|
5.1.2 Security Specification by Extending UML Meta-language |
|
|
52 | (1) |
|
5.1.3 Security Specification by Creating New Meta-languages |
|
|
52 | (1) |
|
|
53 | (4) |
|
|
53 | (1) |
|
5.2.2 Security Specification Using UML Artifacts |
|
|
54 | (2) |
|
5.2.3 Extending UML Meta-language |
|
|
56 | (1) |
|
5.2.4 Creating a New Meta-language |
|
|
57 | (1) |
|
5.3 Model-Based Security Hardening Mechanisms |
|
|
57 | (2) |
|
5.3.1 Security Design Patterns |
|
|
58 | (1) |
|
5.3.2 Mechanism-Directed Meta-languages |
|
|
58 | (1) |
|
5.3.3 Aspect-Oriented Modeling |
|
|
58 | (1) |
|
|
59 | (1) |
|
5.4 Related Work on Model-Based Security |
|
|
59 | (8) |
|
5.4.1 Security Design Patterns |
|
|
60 | (1) |
|
5.4.2 Mechanism-Directed Meta-languages |
|
|
61 | (2) |
|
5.4.3 Aspect-Oriented Modeling |
|
|
63 | (2) |
|
|
65 | (2) |
|
|
67 | (2) |
|
6 Security Aspect Specification |
|
|
69 | (16) |
|
6.1 Proposed AOM Approach for Security Hardening |
|
|
70 | (1) |
|
6.2 A UML Profile for Aspect-Oriented Modeling |
|
|
71 | (11) |
|
|
72 | (2) |
|
6.2.2 Aspect Adaptation Rules |
|
|
74 | (1) |
|
|
75 | (7) |
|
|
82 | (2) |
|
|
84 | (1) |
|
7 Security Aspect Weaving |
|
|
85 | (52) |
|
|
86 | (1) |
|
7.2 Security Aspect Specialization |
|
|
87 | (1) |
|
|
88 | (1) |
|
7.4 Security Aspect Weaving |
|
|
89 | (17) |
|
7.4.1 Weaver Architecture |
|
|
89 | (3) |
|
7.4.2 Transformation Definitions |
|
|
92 | (10) |
|
7.4.3 Transformation Rules |
|
|
102 | (4) |
|
|
106 | (5) |
|
|
106 | (1) |
|
|
107 | (4) |
|
|
111 | (21) |
|
7.6.1 Service Provider Application |
|
|
111 | (8) |
|
|
119 | (9) |
|
7.6.3 Replacing Deprecated Functions in OpenSAF |
|
|
128 | (4) |
|
7.7 Related Work on Model Weaving |
|
|
132 | (4) |
|
|
136 | (1) |
|
8 Static Matching and Weaving Semantics in Activity Diagrams |
|
|
137 | (26) |
|
|
138 | (4) |
|
8.1.1 Activity Diagrams Syntax |
|
|
138 | (2) |
|
|
140 | (2) |
|
8.2 Matching and Weaving Semantics |
|
|
142 | (6) |
|
|
142 | (4) |
|
|
146 | (2) |
|
8.3 Completeness and Correctness of the Weaving |
|
|
148 | (13) |
|
|
148 | (3) |
|
8.3.2 Completeness and Correctness |
|
|
151 | (10) |
|
|
161 | (2) |
|
9 Dynamic Matching and Weaving Semantics in A-Calculus |
|
|
163 | (30) |
|
|
164 | (8) |
|
|
165 | (2) |
|
9.1.2 Denotational Semantics |
|
|
167 | (1) |
|
9.1.3 Continuation-Passing Style |
|
|
168 | (2) |
|
9.1.4 Defunctionalization |
|
|
170 | (2) |
|
9.2 Syntax and Denotational Semantics |
|
|
172 | (2) |
|
9.3 Continuation-Passing Style Semantics |
|
|
174 | (4) |
|
9.3.1 Representation of Continuations as Functions |
|
|
174 | (1) |
|
9.3.2 Representation of Continuations as Frames |
|
|
174 | (4) |
|
9.4 Aspect Syntax and Semantics |
|
|
178 | (6) |
|
|
179 | (1) |
|
|
179 | (2) |
|
|
181 | (3) |
|
9.5 Semantics of Flow-Based Pointcuts |
|
|
184 | (6) |
|
9.5.1 Control Flow Pointcut |
|
|
184 | (1) |
|
|
185 | (4) |
|
|
189 | (1) |
|
9.6 Related Work on AOP Semantics |
|
|
190 | (2) |
|
|
192 | (1) |
|
10 Dynamic Matching and Weaving Semantics in Executable UML |
|
|
193 | (22) |
|
|
194 | (1) |
|
|
195 | (1) |
|
10.3 Denotational Semantics |
|
|
196 | (3) |
|
10.3.1 Denotational Semantics of Activity Diagrams |
|
|
197 | (2) |
|
10.3.2 Denotational Semantics of Alf Language |
|
|
199 | (1) |
|
10.4 Continuation-Passing Style Semantics |
|
|
199 | (4) |
|
10.4.1 Representation of Continuations as Functions |
|
|
199 | (1) |
|
10.4.2 Representation of Continuations as Frames |
|
|
200 | (3) |
|
10.5 Aspect Syntax and Semantics |
|
|
203 | (4) |
|
|
204 | (1) |
|
10.5.2 Matching Semantics |
|
|
204 | (1) |
|
|
205 | (2) |
|
10.6 Semantics of the Dataflow Pointcut |
|
|
207 | (4) |
|
10.7 Related Work on Aspect Semantics in xUML |
|
|
211 | (1) |
|
|
212 | (3) |
|
|
215 | (6) |
References |
|
221 | (12) |
Index |
|
233 | |