1 Introduction |
|
1 | (14) |
|
1.1 Concepts and Definitions |
|
|
1 | (3) |
|
|
4 | (3) |
|
1.3 Benefits and Benefiters |
|
|
7 | (2) |
|
1.4 The Research Perspective |
|
|
9 | (2) |
|
|
11 | (4) |
Part I Fundamentals |
|
|
2 Data and Application Integration |
|
|
15 | (26) |
|
|
15 | (2) |
|
2.2 The Integration Problem: A Scenario |
|
|
17 | (1) |
|
|
18 | (9) |
|
2.3.1 Materialized Versus Virtual Data Integration |
|
|
18 | (1) |
|
2.3.2 The Mediator-Wrapper Architecture |
|
|
19 | (4) |
|
2.3.3 Peer-to-Peer Data Management Systems |
|
|
23 | (1) |
|
2.3.4 Ontology-Based Data Integration |
|
|
24 | (1) |
|
2.3.5 Lightweight Data Integration |
|
|
25 | (2) |
|
2.4 Application Integration |
|
|
27 | (9) |
|
2.4.1 Middleware and Application Integration |
|
|
27 | (2) |
|
2.4.2 Workflow Management Systems |
|
|
29 | (2) |
|
|
31 | (1) |
|
2.4.4 Service-Oriented Computing |
|
|
32 | (4) |
|
|
36 | (3) |
|
|
37 | (1) |
|
2.5.2 Cloud Architectures |
|
|
38 | (1) |
|
2.6 Summary and Bibliographic Notes |
|
|
39 | (2) |
|
|
41 | (30) |
|
|
41 | (3) |
|
|
44 | (3) |
|
|
44 | (1) |
|
3.2.2 The TCP/IP Protocol Stack |
|
|
45 | (1) |
|
|
46 | (1) |
|
3.3 The Hypertext Markup Language |
|
|
47 | (4) |
|
|
50 | (1) |
|
3.4 Cascading Style Sheets |
|
|
51 | (2) |
|
3.5 Client-Side Scripting |
|
|
53 | (2) |
|
3.6 Client-Side Business Logic and AJAX |
|
|
55 | (2) |
|
3.7 Server-Side Business Logic |
|
|
57 | (7) |
|
|
58 | (1) |
|
3.7.2 Server-Side Scripting |
|
|
58 | (3) |
|
3.7.3 Multitiered Web Architectures |
|
|
61 | (3) |
|
3.8 Model-View-Controller Pattern |
|
|
64 | (2) |
|
3.9 Data Representation Formats |
|
|
66 | (2) |
|
3.9.1 eXtensible Markup Language |
|
|
66 | (1) |
|
3.9.2 JavaScript Object Notation |
|
|
67 | (1) |
|
3.10 Summary and Bibliographic Notes |
|
|
68 | (3) |
|
4 Model-Driven Software Development |
|
|
71 | (26) |
|
|
71 | (3) |
|
|
74 | (5) |
|
4.2.1 Conceptual Modeling |
|
|
74 | (2) |
|
4.2.2 Model-Driven Architecture |
|
|
76 | (2) |
|
4.2.3 Architecture-Centric MDSD |
|
|
78 | (1) |
|
|
79 | (8) |
|
|
79 | (2) |
|
4.3.2 Metamodels, MOF, and UML Profiles |
|
|
81 | (4) |
|
|
85 | (2) |
|
4.4 From the Model to the Application |
|
|
87 | (4) |
|
4.4.1 Model-to-Model Transformations |
|
|
87 | (1) |
|
|
88 | (3) |
|
4.4.3 Model Interpretation |
|
|
91 | (1) |
|
4.5 Summary and Bibliographic Notes |
|
|
91 | (6) |
Part II Mashups |
|
|
|
97 | (40) |
|
|
97 | (1) |
|
|
98 | (9) |
|
5.2.1 Basic Component Model |
|
|
99 | (1) |
|
5.2.2 Component Characteristics |
|
|
100 | (7) |
|
|
107 | (9) |
|
|
107 | (3) |
|
5.3.2 RESTful Web Services |
|
|
110 | (3) |
|
5.3.3 JavaScript APIs and Libraries |
|
|
113 | (1) |
|
|
114 | (1) |
|
|
115 | (1) |
|
|
116 | (8) |
|
5.4.1 Really Simple Syndication |
|
|
116 | (2) |
|
|
118 | (1) |
|
5.4.3 XML, JSON, CSV, and Similar |
|
|
119 | (1) |
|
5.4.4 Web Data Extraction |
|
|
120 | (1) |
|
5.4.5 Microformats and Linked Data |
|
|
121 | (3) |
|
5.5 User Interface Components |
|
|
124 | (7) |
|
5.5.1 Code Snippets and JavaScript UI Libraries |
|
|
124 | (1) |
|
|
125 | (2) |
|
5.5.3 Widgets and Gadgets |
|
|
127 | (3) |
|
5.5.4 Web Clipping and UI Component Extraction |
|
|
130 | (1) |
|
5.6 Real-Time Streaming Components |
|
|
131 | (3) |
|
5.6.1 Multimedia Resources |
|
|
131 | (1) |
|
|
132 | (2) |
|
5.7 Summary and Bibliographic Notes |
|
|
134 | (3) |
|
|
137 | (46) |
|
|
137 | (3) |
|
|
140 | (8) |
|
|
141 | (1) |
|
6.2.2 Mashup Characteristics |
|
|
142 | (6) |
|
|
148 | (7) |
|
6.3.1 Point-to-Point Data Mashups |
|
|
151 | (1) |
|
6.3.2 Centrally Mediated Data Mashups |
|
|
152 | (2) |
|
6.3.3 Data Mashups with External Data Processing Logic |
|
|
154 | (1) |
|
|
155 | (5) |
|
6.4.1 Stateless Logic Mashups |
|
|
158 | (1) |
|
6.4.2 Long-Living Logic Mashups |
|
|
159 | (1) |
|
6.5 User Interface Mashups |
|
|
160 | (14) |
|
|
163 | (2) |
|
|
165 | (2) |
|
6.5.3 Container-Based UI Mashups |
|
|
167 | (7) |
|
|
174 | (6) |
|
6.7 Summary and Bibliographic Notes |
|
|
180 | (3) |
|
|
183 | (18) |
|
|
183 | (2) |
|
|
185 | (6) |
|
7.2.1 Concurrent Mashup Components |
|
|
185 | (1) |
|
|
186 | (2) |
|
|
188 | (3) |
|
|
191 | (3) |
|
|
194 | (2) |
|
|
196 | (4) |
|
7.6 Summary and Bibliographic Notes |
|
|
200 | (1) |
|
8 Tool-Aided Mashup Development |
|
|
201 | (36) |
|
|
201 | (3) |
|
8.2 Mashup Modeling Concerns |
|
|
204 | (2) |
|
8.3 Abstracting Components |
|
|
206 | (3) |
|
|
209 | (8) |
|
|
209 | (3) |
|
|
212 | (2) |
|
|
214 | (3) |
|
|
217 | (4) |
|
8.5.1 Enterprise Mashup Markup Language |
|
|
217 | (2) |
|
8.5.2 Open Mashup Description Language |
|
|
219 | (2) |
|
8.6 Developing Mashup Languages |
|
|
221 | (4) |
|
8.6.1 Conceptual Development |
|
|
222 | (1) |
|
|
223 | (2) |
|
|
225 | (9) |
|
|
226 | (4) |
|
8.7.2 Mashup Execution and Operation |
|
|
230 | (3) |
|
|
233 | (1) |
|
8.8 Summary and Bibliographic Notes |
|
|
234 | (3) |
|
9 Mashups and End-User Development |
|
|
237 | (32) |
|
|
237 | (2) |
|
9.2 User-Driven Innovation |
|
|
239 | (1) |
|
|
240 | (3) |
|
9.4 Lightweight Development Process |
|
|
243 | (2) |
|
9.4.1 Component Discovery and Selection |
|
|
244 | (1) |
|
|
244 | (1) |
|
9.4.3 Usage and Maintenance |
|
|
245 | (1) |
|
9.5 EUD Dimensions for Mashup Tools |
|
|
245 | (20) |
|
|
246 | (5) |
|
|
251 | (6) |
|
9.5.3 Assistance Capability |
|
|
257 | (8) |
|
9.6 Guidelines for EUD of Mashups |
|
|
265 | (2) |
|
9.7 Summary and Bibliographic Notes |
|
|
267 | (2) |
|
10 Quality in Mashup Development |
|
|
269 | (24) |
|
|
269 | (2) |
|
|
271 | (8) |
|
|
272 | (5) |
|
10.2.2 Component Data Quality |
|
|
277 | (1) |
|
10.2.3 Presentation Quality |
|
|
278 | (1) |
|
|
279 | (11) |
|
10.3.1 Characterizing the Integration Sets |
|
|
281 | (1) |
|
10.3.2 Roles of Mashup Components |
|
|
282 | (2) |
|
10.3.3 Composition Quality |
|
|
284 | (3) |
|
10.3.4 Information Quality |
|
|
287 | (2) |
|
10.3.5 Presentation Quality |
|
|
289 | (1) |
|
10.4 Summary and Bibliographic Notes |
|
|
290 | (3) |
|
|
293 | (6) |
|
|
293 | (1) |
|
|
294 | (3) |
|
|
294 | (1) |
|
|
295 | (1) |
|
|
296 | (1) |
|
|
297 | (2) |
References |
|
299 | (14) |
Index |
|
313 | |