search for books and compare prices
Tables of Contents for Designing Data-Intensive Web Applications
Chapter/Section Title
Page #
Page Count
Foreword
vii
 
Adam Bosworth
Preface
xxi
 
PART ONE Technology Overview
1
58
Technologies for Web Applications
3
56
Introduction
3
1
HTTP and HTML: The Foundation of Web Technology
4
17
Accessing Remote Resources: The Hypertext Transfer Protocol
5
3
Writing Web Documents: The Hypertext Markup Language
8
3
Client-Side Scripting for Enhancing Page Interactivity
11
4
Client-Side Components for Enhancing Client Functionality
15
3
The Evolution of HTML: HTML 4 and Cascading Style Sheets
18
3
XML: eXtensible Markup Language
21
11
User-Defined Tags
21
6
Presenting XML Documents Using XSL
27
5
SQL: The Structured Query Language for Relational Databases
32
4
Beyond HTTP: Building Web Pages on the Fly
36
23
Common Gateway Interface
37
3
Web Server Extensions
40
3
Implementing Application State over HTTP
43
3
Server-Side Scripting
46
2
Server-Side Executable Tags
48
2
Increasing Scalability with Application Servers
50
4
Three-Tier Architectures
54
1
Multi-Device Content Publishing with XML
55
2
Summary
57
1
Bibliographic Notes
57
2
PART TWO Models for Designing Web Applications
59
132
Data Model
61
16
Introduction
61
1
Entities
62
5
Attributes
62
1
Identification and Primary Key
63
1
Attribute Types
64
2
Generalization Hierarchies
66
1
Relationships
67
4
N-ary Relationships and Relationships with Attributes
69
2
Derived Information
71
2
Running Example
73
1
Modeling Data Using UML
74
3
Summary
75
1
Bibliographic Notes
76
1
Hypertext Model
77
60
Introduction
77
2
Units
79
12
Data Units
80
2
Multidata Units
82
1
Index Units
83
5
Scroller Units
88
1
Entry Units
89
2
Pages
91
1
Links
92
14
Specification of Links
92
2
Link Parameters and Parametric Selectors
94
10
Automatic and Transport Links
104
2
Global Parameters
106
4
Hypertext Organization
110
7
Site Views
110
1
Areas, Landmarks, and Home Pages
111
3
Nested Pages
114
3
Patterns for Content Publishing
117
10
Cascaded Index
117
1
Filtered Index
118
1
Filtered Scrolled Index
119
1
Guided Tour
120
1
Indexed Guided Tour
121
1
Object Viewpoints
122
1
Nested Data
123
1
Hierarchical Index with Alternative Sub-Pages
124
1
Reusable Units
125
2
Running Example
127
2
Representing WebML Hypertexts Using UML
129
8
Summary
134
1
Bibliographic Notes
135
2
Content Management Model
137
38
Introduction
137
1
Operations
138
1
Predefined Operations
139
17
Object Creation
140
3
Object Deletion
143
3
Object Modification
146
3
Relationship Creation
149
3
Relationship Deletion
152
4
Transactions
156
1
Content Management Patterns
157
3
Create-Connect Pattern
157
1
Cascaded Delete
158
2
Operations for Access Control and for Sending E-mail
160
3
Login Operation
160
1
Logout Operation
161
1
Sendmail Operation
161
2
Generic Operations
163
2
Credit Card Charge
163
2
Running Example
165
5
Representing WebML Operations Using UML
170
5
Summary
174
1
Bibliographic Notes
174
1
Advanced Hypertext Model
175
16
Introduction
175
1
Computation of a Page
176
15
Examples of Page Computation
181
2
Preserving Input of Units Across Pages
183
3
Non-Computable and Nondeterministic Hypertexts
186
3
Summary
189
1
Bibliographic Notes
189
2
PART THREE Design of Web Applications
191
136
Overview of the Development Process
193
10
Introduction
193
1
Inputs and Outputs
194
1
Development Roles
195
1
Development Lifecycle
196
7
Requirements Specification
197
1
Data Design
198
1
Hypertext Design
198
1
Deployment of the Web Application
199
2
Bibliographic Notes
201
2
Requirements Specifications
203
46
Introduction
203
1
Requirements Collection
204
6
Identification of Users
205
1
Functional Requirements
205
1
Data Requirements
206
1
Personalization Requirements
206
2
Device-Specific Customization Requirements
208
1
Nonfunctional Requirements
208
2
Requirements Analysis
210
11
Group Specification
211
1
Use Case Specification
212
3
Data Dictionary Specification
215
2
Site View Specification
217
4
Style Guidelines Specification
221
1
Acceptance Tests Specification
221
1
The Acer-Euro Running Case
221
28
Business Requirements
222
1
User Groups
222
4
Functional Requirements
226
5
Data Dictionary
231
6
Site View Identification
237
1
Style Guidelines and Page Mock-ups
238
3
Acceptance Tests
241
6
Summary
247
1
Bibliographic Notes
247
2
Data Design
249
24
Introduction
249
3
Characterizing Entities in the Data Schema
252
1
The Process of Data Design
253
11
Designing the Core Sub-schema
255
1
Designing an Interconnection Sub-schema
256
1
Designing an Access Sub-schema
256
3
Designing a Personalization Sub-schema
259
5
Running Example
264
9
Identification of Core Entities
264
1
Design of Core Sub-schemas
264
2
Definition of the Access Sub-schema
266
2
Definition of Interconnection Sub-schemas
268
1
Design of Personalization Sub-schema
269
2
Summary
271
1
Bibliographic Notes
271
2
Hypertext Design
273
54
Introduction
273
2
Coarse Design
275
4
Detailed Design
279
2
Page Specification using Hypertext Sub-schemas
281
15
Access Hypertext Sub-schema
282
3
Core Hypertext Sub-schema
285
1
Interconnection Hypertext Sub-schema
286
1
Personalization Sub-schema
287
5
Content Management Hypertext Sub-schema
292
1
Factoring Out Replicated Units Using Or Sub-pages
293
3
Running Example
296
14
External Users Site View
296
14
Designing Usable Hypertexts
310
11
Choice of Access and Core Patterns
311
3
Navigation Aids
314
2
Orientation Aids
316
1
Search
317
2
Consistency
319
2
Hypertext Modeling for Multi-Device Applications
321
6
Summary
323
1
Bibliographic Notes
324
3
PART FOUR Implementation of Web Applications
327
192
Architecture Design
329
32
Introduction
329
2
Dimensions of Architecture Design
331
2
Goals of Architecture Design
331
1
Constraints of Architecture Design
332
1
Scenarios of Architecture Deployment
332
1
Designing the Hardware and Network Architecture
333
11
Single Server Configuration
333
3
Separation of the Database Server
336
1
Exploiting Replication and Parallelism
337
4
Separation of the Web Server and Scripting Engine
341
1
Configuration with an Application Server
342
2
Techniques for Testing and Improving Performance
344
7
Estimating the Workload
344
1
Setting Up the Test Environment
345
1
Verifying Performance
346
1
Identifying and Removing Bottlenecks
347
4
Web Caching
351
10
What to Cache
352
1
Where to Cache
353
1
When to Cache and to Refresh the Cache
354
2
Caching Dynamic Content Using a Server Accelerator and Caching Directives
356
2
Summary
358
1
Bibliographic Notes
359
2
Data Implementation
361
34
Introduction
361
3
Standard Mapping
364
16
Mapping Entities
364
1
Mapping BLOB Attributes
365
2
Mapping Relationships
367
4
Mapping Generalization Hierarchies
371
3
Mapping Derived Data Using Views
374
3
Physical Design Tips
377
1
Running Example
378
2
Data Management Issues and Architecture
380
15
Schema Integration
381
2
Data Integration
383
1
Implementation of the Replicated Database Architecture
383
5
Implementation of Online Database Architectures
388
4
Summary
392
1
Bibliographic Notes
392
3
Hypertext Implementation
395
62
Introduction
395
1
Overview of the Page Computation Steps
396
4
Implementing Pages, Content Units, and Links
400
27
Standalone Pages
400
4
Inter-page Links
404
7
Intra-page Links
411
5
Entry Units
416
3
Multi-Choice Index Unit Linked to a Multidata Unit
419
5
Areas, Landmark Pages, and Nested Sub-pages
424
3
Implementing Operations
427
19
General Schema of Operation Implementation
428
3
Deletion of an Object Chosen from an Index
431
1
Entry Unit Linked to a Create Unit
432
7
Create and Connect Pattern
439
5
Login, Logout, and Global Parameters for the Current User and Group
444
2
Implementing Set and Get Units and Complex Pages
446
11
Summary
453
1
Bibliographic Notes
454
3
Advanced Hypertext Implementation
457
42
Introduction
457
1
Improving the Software Architecture
458
3
Model-View-Controller Architecture
461
5
Model-View-Controller Architecture Applied to Web Applications
463
3
Mapping WebML to the MVC Architecture
466
13
Mapping WebML Pages to the MVC Architecture
466
5
Mapping Content Units to the MVC Architecture
471
2
Mapping Entry Units to the MVC Architecture
473
2
Mapping Operations to the MVC Architecture
475
4
Managing Very Large Applications
479
2
Using Enterprise JavaBeans to Implement the Business Logic
481
10
Wrapping Persistent Data with Entity Beans
485
4
Implementing Page Services and Content Unit Services as Enterprise Java Beans
489
1
Implementing Operation Units as Enterprise Java Beans
490
1
Using CSS and XSL to Manage Presentation
491
8
Summary
496
1
Bibliographic Notes
496
3
Tools for Model-Based Development of Web Applications
499
20
Introduction
499
3
Data and Hypertext Design
502
2
Data Mapping
504
2
Presentation Design
506
2
Code Generation
508
1
Other Features
509
10
Correctness Checking
509
1
Cooperative Work
510
1
Automatic Documentation
511
1
WebML Extensibility with Custom Units
511
4
Summary
515
1
Bibliographic Notes
515
4
Appendix A Summary of WebML Elements
519
6
Appendix B WebML Syntax
525
8
Appendix C OCL Syntax
533
4
Appendix D Summary of WebML Elements Implementation
537
6
References
543
8
Index
551