E-Book, Englisch, 349 Seiten
Casteleyn / Daniel / Dolog Engineering Web Applications
1. Auflage 2009
ISBN: 978-3-540-92201-8
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
E-Book, Englisch, 349 Seiten
Reihe: Data-Centric Systems and Applications
ISBN: 978-3-540-92201-8
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
Nowadays, Web applications are almost omnipresent. The Web has become a platform not only for information delivery, but also for eCommerce systems, social networks, mobile services, and distributed learning environments. Engineering Web applications involves many intrinsic challenges due to their distributed nature, content orientation, and the requirement to make them available to a wide spectrum of users who are unknown in advance. The authors discuss these challenges in the context of well-established engineering processes, covering the whole product lifecycle from requirements engineering through design and implementation to deployment and maintenance. They stress the importance of models in Web application development, and they compare well-known Web-specific development processes like WebML, WSDM and OOHDM to traditional software development approaches like the waterfall model and the spiral model. .
Sven Casteleyn is a post-doc researcher at the Computer Science Department of the Faculty of Science at the Vrije Universiteit Brussel, Belgium. His research interests lie primarily within the field of Web Engineering and the Semantic Web technologies. Florian Daniel is a post-doc researcher at the University of Trento, Italy. His main research interests are in Web engineering, UI integration, mashups, and business process intelligence. Peter Dolog is an associate professor of computer science in the Information Systems Unit at the Department of Computer Science, Aalborg University, Denmark, where he leads the IWIS: Intelligent Web and Information Systems group. His research interests are in intelligent web and information systems, which includes adaptive hypertext and hypermedia, user modelling, personalization, web based systems, web services, software product lines and technology enhanced learning. Maristella Matera is assistant professor at the Dipartimento di Elettronica e Informazione, Politecnico di Milano, Italy. Her current research focuses on Web Engineering, with particular emphasis on design methods and tools for Web application development, and concentrates on context-awareness, Web-based cooperative processes for e-learning, component integration at the presentation level, Web usage analysis, usability and accessibility.
Autoren/Hrsg.
Weitere Infos & Material
1;Preface;6
2;Contents;8
3;1 Introduction;13
3.1;1.1 The Web Engineering Scenario;14
3.2;1.2 Structure of the Book;17
3.3;1.3 Intended Audience;19
4;2 Technologies;21
4.1;2.1 The HyperText Transfer Protocol (HTTP);22
4.2;2.2 The HyperText Markup Language (HTML);23
4.2.1;2.2.1 Cascading Style Sheets (CSSs);25
4.3;2.3 The eXtensible Markup Language (XML);26
4.3.1;2.3.1 Well-Formed XML Documents;27
4.3.2;2.3.2 Valid XML Documents;28
4.3.3;2.3.3 Namespaces;30
4.3.4;2.3.4 Presenting XML Documents;32
4.3.5;2.3.5 An XML Application: XHTML;34
4.4;2.4 Dynamic HTML and Client-Side Business Logic;35
4.4.1;2.4.1 Common Scripting Languages;35
4.4.2;2.4.2 Dynamic HTML;36
4.4.3;2.4.3 Client-Side Business Logic and AJAX;37
4.4.4;2.4.4 Embedded Applications;39
4.4.5;2.4.5 Embedded Multimedia Objects;40
4.5;2.5 Dynamic Web Pages and Server-Side Business Logic;41
4.5.1;2.5.1 Common Gateway Interface (CGI);41
4.5.2;2.5.2 Web Server Extensions;45
4.5.3;2.5.3 Multitiered Architectures;56
4.5.4;2.5.4 How to Access Data;58
4.6;2.6 Web Services and Remote Business Logic;61
4.6.1;2.6.1 The Web Service Description Language (WSDL);62
4.6.2;2.6.2 The Simple Object Access Protocol (SOAP);62
4.6.3;2.6.3 The Service-Oriented Architecture (SOA);63
4.6.4;2.6.4 Service Orchestration and Choreography;64
4.6.5;2.6.5 RESTful Services;65
4.7;2.7 Summary;66
4.8;2.8 Further Readings;66
5;3 The Development Process;68
5.1;3.1 Decomposing the Software Development Process;69
5.1.1;3.1.1 Activities in Software Development;69
5.1.2;3.1.2 Actors in Software Development;71
5.2;3.2 Structuring the Software Development Process;72
5.2.1;3.2.1 The Waterfall Model;72
5.2.2;3.2.2 The Spiral Model;72
5.2.3;3.2.3 The Unified Model;74
5.2.4;3.2.4 Other Models;75
5.3;3.3 Web-Specific Software Development Processes;75
5.3.1;3.3.1 The Online Evolution Model;76
5.3.2;3.3.2 Web-Specific Actors;78
5.4;3.4 Examples of Web-Specific Development Processes;79
5.4.1;3.4.1 The WebML Model;79
5.4.2;3.4.2 WSDM;82
5.4.3;3.4.3 The OOHDM Model;86
5.5;3.5 Summary;88
5.6;3.6 Further Readings;89
6;4 Requirements Engineering;91
6.1;4.1 Web Requirements Engineering Concepts;92
6.1.1;4.1.1 Software Requirements with Relevance to the Web;92
6.1.2;4.1.2 Requirements Engineering Processes;95
6.2;4.2 Organization Requirements Analysis;98
6.2.1;4.2.1 Value-Based Requirements Analysis;99
6.2.2;4.2.2 Business Information Flow Analysis;102
6.2.3;4.2.3 Goals Analysis;104
6.2.4;4.2.4 Business Process and Task Analysis;107
6.2.5;4.2.5 Audience Analysis;112
6.3;4.3 Application Domain Analysis;116
6.4;4.4 Navigation and Interaction Analysis;119
6.4.1;4.4.1 Navigation Relationships;119
6.4.2;4.4.2 High-Level Interaction and Navigation Units;121
6.5;4.5 Summary;123
6.6;4.6 Further Readings;123
7;5 Web Application Design;125
7.1;5.1 Design Concepts;126
7.1.1;5.1.1 Design Principles;127
7.1.2;5.1.2 Design Process;129
7.2;5.2 Workow Design;130
7.3;5.3 Data Design;133
7.3.1;5.3.1 Information integration engineering;136
7.4;5.4 Navigation Design;137
7.4.1;5.4.1 Site Structure Design;137
7.4.2;5.4.2 Navigation Behavior Design;146
7.4.3;5.4.3 Web Service Interaction;154
7.5;5.5 Presentation Design;156
7.5.1;5.5.1 Abstract Presentation Design;157
7.5.2;5.5.2 Concrete Presentation Design;164
7.6;5.6 Architecture Design;165
7.6.1;5.6.1 Conallen's Web Application Extension for UML;165
7.6.2;5.6.2 Web Software Architecture (WebSA);167
7.7;5.7 Extensions for Rich Internet Applications;171
7.7.1;5.7.1 WebML extensions;173
7.7.2;5.7.2 ADRIA extensions;175
7.7.3;5.7.3 The RUX method;175
7.7.4;5.7.4 OOH4RIA;176
7.8;5.8 Model-Driven Engineering and Web Engineering;176
7.9;5.9 Hypertext Models;178
7.9.1;5.9.1 Hyperbase Models;179
7.9.2;5.9.2 Layered Hypermedia Models;179
7.10;5.10 Summary;182
7.11;5.11 Further Readings;183
8;6 Adaptation;185
8.1;6.1 Localization and Internationalization;186
8.1.1;6.1.1 Terminology;187
8.1.2;6.1.2 History and Problems Involved;187
8.1.3;6.1.3 Hofstede's Cross-Cultural Theory;189
8.1.4;6.1.4 Web Design Methods and Localization/Internationalization;191
8.2;6.2 Personalization, Adaptation, and Context-Awareness;195
8.2.1;6.2.1 Terminology;195
8.2.2;6.2.2 Methods and Techniques;197
8.2.3;6.2.3 Web Design Methods and Adaptation/Personalization;198
8.3;6.3 Accessibility and Users with Disabilities;207
8.3.1;6.3.1 Enabling Accessibility;208
8.3.2;6.3.2 The Web Content Accessibility Guidelines;209
8.3.3;6.3.3 The Dante Approach;213
8.3.4;6.3.4 Web Design Methods and Accessibility;214
8.4;6.4 Product Line Engineering and Feature Modeling;215
8.4.1;6.4.1 Software Product Line Engineering;215
8.4.2;6.4.2 Adaptive Web Applications and Software Product Lines;218
8.4.3;6.4.3 Domain Analysis in Detail;220
8.5;6.5 Summary;230
8.6;6.6 Further Readings;231
9;7 Implementation, Deployment, and Maintenance;233
9.1;7.1 Implementing the Presentation Layer;234
9.1.1;7.1.1 Template-Based Layout;234
9.1.2;7.1.2 XSLT at Runtime;237
9.1.3;7.1.3 Model-View-Controller Pattern;238
9.2;7.2 Web Application Frameworks and Engineering Tools;240
9.2.1;7.2.1 Web Application Frameworks;240
9.2.2;7.2.2 Web Engineering Tools;242
9.2.3;7.2.3 Model-driven Engineering and Model Transformation;248
9.3;7.3 Deployment and Installation;250
9.3.1;7.3.1 Choosing a Web Server;251
9.3.2;7.3.2 Hosting, Housing, or Own Web Server?;253
9.3.3;7.3.3 Registering a Domain Name;254
9.3.4;7.3.4 Deploying a Web Application;255
9.4;7.4 Maintenance and Evolution;255
9.4.1;7.4.1 Maintenance of Web Applications;256
9.4.2;7.4.2 Evolution of Web Applications;258
9.5;7.5 The Role of Model-Driven Design and Industry Solutions;259
9.6;7.6 Summary;261
9.7;7.7 Further Readings;263
10;8 Quality Assessment;264
10.1;8.1 The Need for Quality Models;265
10.1.1;8.1.1 Quality Perspectives;267
10.1.2;8.1.2 Quality Factors Characterizing Web Applications;269
10.2;8.2 Testing Web Applications;271
10.2.1;8.2.1 Functional Testing;272
10.2.2;8.2.2 Performance testing;276
10.3;8.3 Usability Evaluation;281
10.3.1;8.3.1 User Testing;282
10.3.2;8.3.2 Inspection Methods;284
10.3.3;8.3.3 Web Usage Analysis;286
10.4;8.4 Web Design Methods and Quality Assessment;288
10.4.1;8.4.1 Early Assessment of Navigation Models;288
10.4.2;8.4.2 Web Application Testing;293
10.4.3;8.4.3 Web Usage Analysis;293
10.5;8.5 Automatic Tools;297
10.5.1;8.5.1 Testing Tools;297
10.5.2;8.5.2 Usability Evaluation Tools;298
10.6;8.6 Summary;299
10.7;8.7 Further Readings;300
11;9 Semantic Web and Web 2.0;302
11.1;9.1 The Semantic Web;303
11.1.1;9.1.1 Semantic Web Technologies;305
11.1.2;9.1.2 The Friend Of A Friend Project;308
11.1.3;9.1.3 Web Design Methods and the Semantic Web;309
11.2;9.2 Web 2.0/3.0;314
11.2.1;9.2.1 Social Involvement/Participation;315
11.2.2;9.2.2 Technologies for Web 2.0;317
11.2.3;9.2.3 New Technologies and Accessibility;320
11.2.4;9.2.4 Web Design Methods and Web 2.0;320
11.2.5;9.2.5 Web 3.0;322
11.3;9.3 Summary;323
11.4;9.4 Further Readings;324
12;References;326
13;Index;350
14;Nomenclature;355




