Web Engineering
The Discipline of Systematic Development of Web Applications
Häftad, Engelska, 2006
Av Kappel, Pröll, Gerti Kappel, Birgit Pröll, Siegfried Reich, Werner Retschitzegger
959 kr
Beställningsvara. Skickas inom 7-10 vardagar
Fri frakt för medlemmar vid köp för minst 249 kr.The World Wide Web has a massive and permanent influence on our lives. Economy, industry, education, healthcare, public administration, entertainment – there is hardly any part of our daily lives which has not been pervaded by the Internet. Accordingly, modern Web applications are fully-fledged, complex software systems, and in order to be successful their development must be thorough and systematic. This book presents a new discipline called Web Engineering taking a rigorous interdisciplinary approach to the development of Web applications, covering Web development concepts, methods, tools and techniques. It highlights the need to examine and re-use the body of knowledge found within software engineering and demonstrates how to use that knowledge within the Web environment, putting emphasize on current practices, experiences and pitfalls.The book is ideal for undergraduate and graduate students on Web-focused or Software Engineering courses, as well as Web software developers, Web designers and project managers.
Produktinformation
- Utgivningsdatum2006-05-12
- Mått191 x 239 x 20 mm
- Vikt652 g
- FormatHäftad
- SpråkEngelska
- Antal sidor384
- FörlagJohn Wiley & Sons Inc
- ISBN9780470015544
Tillhör följande kategorier
Gerti Kappel is full professor of Business Informatics at Vienna University of Technology. Birgit Pröll teaches and researches at Johannes Kepler University (JKU), Linz, Austria.Siegfried Reich is director of Salzburg Research, the non-profit research organization owned by the County of Salzburg.Werner Retschitzegger is head of Department of Information Systems at JKU.
- Preface xvForeword xvii1 An Introduction to Web Engineering 1Gerti Kappel, Birgit Pröll, Siegfried Reich, Werner Retschitzegger1.1 Motivation 11.2 Categories of Web Applications 41.3 Characteristics of Web Applications 71.3.1 Product-related Characteristics 81.3.2 Usage-related Characteristics 121.3.3 Development-related Characteristics 141.3.4 Evolution 161.4 Objectives and Structure of the Book 172 Requirements Engineering for Web Applications 23Paul Grünbacher2.1 Introduction 232.2 Fundamentals 242.2.1 Where Do Requirements Come From? 242.2.2 Requirements Engineering Activities 252.3 RE Specifics in Web Engineering 262.4 Principles for RE of Web Applications 302.5 Adapting RE Methods to Web Application Development 322.5.1 Requirement Types 322.5.2 Notations 342.5.3 Tools 362.6 Outlook 373 Modeling Web Applications 39Wieland Schwinger, Nora Koch3.1 Introduction 393.2 Fundamentals 403.3 Modeling Specifics in Web Engineering 413.3.1 Levels 413.3.2 Aspects 423.3.3 Phases 423.3.4 Customization 433.4 Modeling Requirements 433.5 Content Modeling 453.5.1 Objectives 453.5.2 Concepts 453.6 Hypertext Modeling 463.6.1 Objectives 473.6.2 Hypertext Structure Modeling Concepts 473.6.3 Access Modeling Concepts 493.6.4 Relation to Content Modeling 503.7 Presentation Modeling 513.7.1 Objectives 513.7.2 Concepts 513.7.3 Relation to Hypertext Modeling 523.8 Customization Modeling 533.8.1 Objectives 543.8.2 Concepts 543.8.3 Relation to Content, Hypertext, and Presentation Modeling 583.9 Methods and Tools 583.9.1 Modeling Methods: An Overview 583.9.2 Model-Driven Development 613.9.3 Tool Support 613.10 Outlook 634 Web Application Architectures 65Christian Eichinger4.1 Introduction 654.2 Fundamentals 664.2.1 What is an Architecture? 664.2.2 Developing Architectures 674.2.3 Categorizing Architectures 694.3 Specifics of Web Application Architectures 704.4 Components of a Generic Web Application Architecture 714.5 Layered Architectures 724.5.1 2-Layer Architectures 724.5.2 N-Layer Architectures 734.6 Data-aspect Architectures 794.6.1 Database-centric Architectures 804.6.2 Architectures for Web Document Management 804.6.3 Architectures for Multimedia Data 814.7 Outlook 845 Technology-aware Web Application Design 85Gerhard Austaller, Andreas Hartl, Markus Lauff, Fernando Lyardet, Max Mühlhaüser5.1 Introduction 865.2 Web Design from an Evolutionary Perspective 895.2.1 Background 895.2.2 Information Design: An Authoring Activity 905.2.3 Software Design: A Programming Activity 925.2.4 Merging Information Design and Software Design 935.2.5 Problems and Restrictions in Integrated Web Design 945.2.6 A Proposed Structural Approach 955.3 Presentation Design 955.3.1 Presentation of Nodes and Meshes 965.3.2 Device-independent Development Approaches 975.4 Interaction Design 985.4.1 User Interaction 985.4.2 User Interface Organization 1005.4.3 Navigation Design 1015.4.4 Designing a Link Representation: The Anchor 1015.4.5 Designing Link Internals: The URL 1025.4.6 Navigation and Orientation 1025.4.7 Structured Dialog for Complex Activities 1035.4.8 Interplay with Technology and Architecture 1045.5 Functional Design 1055.5.1 Integration 1055.5.2 Communication Paradigms and Middleware 1055.5.3 Distributed Cross-corporate Web Applications 1065.6 Outlook 1075.6.1 Context-aware Applications 1075.6.2 Device-independent Applications 1085.6.3 Reusability 1095.7 Summary 1106 Technologies for Web Applications 111Martin Nussbaumer, Martin Gaedke6.1 Introduction 1116.2 Fundamentals 1126.2.1 Markup 1126.2.2 Hypertext and Hypermedia 1126.3 Client/Server Communication on the Web 1136.3.1 SMTP – Simple Mail Transfer Protocol. 1136.3.2 RTSP – Real Time Streaming Protocol 1136.3.3 HTTP – HyperText Transfer Protocol 1136.3.4 Session Tracking 1146.4 Client-side Technologies 1166.4.1 Helpers and Plug-ins 1166.4.2 Java Applets 1166.4.3 ActiveX Controls 1166.5 Document-specific Technologies 1176.5.1 HTML – Hypertext Markup Language 1176.5.2 SVG – Scalable Vector Graphics 1176.5.3 SMIL – Synchronized Multimedia Integration Language 1186.5.4 XML – eXtensible Markup Language 1186.5.5 XSL – eXtensible Stylesheet Language 1226.6 Server-side Technologies 1266.6.1 URI Handlers 1266.6.2 Web Services 1296.6.3 Middleware Technologies 1306.7 Outlook 1327 Testing Web Applications 133Christoph Steindl, Rudolf Ramler, Josef Altmann7.1 Introduction 1337.2 Fundamentals 1347.2.1 Terminology 1347.2.2 Quality Characteristics 1357.2.3 Test Objectives 1367.2.4 Test Levels 1367.2.5 Role of the Tester 1377.3 Test Specifics in Web Engineering 1387.4 Test Approaches 1407.4.1 Conventional Approaches 1407.4.2 Agile Approaches 1407.5 Test Scheme 1427.5.1 Three Test Dimensions 1427.5.2 Applying the Scheme to Web Applications 1437.5.3 Examples of Using the Test Scheme 1457.6 Test Methods and Techniques 1457.6.1 Link Testing 1477.6.2 Browser Testing 1477.6.3 Usability Testing 1487.6.4 Load, Stress, and Continuous Testing 1487.6.5 Testing Security 1497.6.6 Test-driven Development 1507.7 Test Automation 1507.7.1 Benefits and Drawbacks of Automated Tests 1507.7.2 Test Tools 1517.7.3 Selecting Test Tools 1527.8 Outlook 1528 Operation and Maintenance of Web Applications 155Arno Ebner, Birgit Pröll, Hannes Werthner8.1 Introduction 1558.2 Challenges Following the Launch of a Web Application 1568.3 Promoting a Web Application 1578.3.1 Newsletters 1588.3.2 Affiliate Marketing 1588.3.3 Search Engine Marketing 1598.3.4 Content-related Marketing 1628.3.5 Domain Management 1628.4 Content Management 1638.4.1 Content Update Rate and Demand on Currency 1648.4.2 Content Syndication 1658.5 Usage Analysis 1658.5.1 Usage Analysis Techniques 1658.5.2 Statistical Indicators 1678.5.3 User Behavior Analysis 1688.6 Outlook 1699 Web Project Management 171Herwig Mayr9.1 From Software Project Management to Web Project Management 1719.1.1 Objectives of Software Project Management 1719.1.2 The Tasks of Software Project Management 1729.1.3 Conflicting Areas in Projects 1739.1.4 Specifics of Web Project Management 1739.2 Challenges in Web Project Management 1759.2.1 General Challenges in Software Development 1759.2.2 Development-related Challenges in Web Projects 1769.2.3 Product-related Challenges in Web Projects 1799.3 Managing Web Teams 1829.3.1 Software Development: A Human-centered Task 1829.3.2 The Web Project Team 1839.3.3 The Web Project Manager 1849.4 Managing the Development Process of a Web Application 1859.4.1 Deploying the Tools 1859.4.2 Measuring Progress 1889.4.3 Project Risks 1909.4.4 Risk Management 1939.5 Outlook 19410 The Web Application Development Process 197Gregor Engels, Marc Lohmann, Annika Wagner10.1 Motivation 19710.2 Fundamentals 19810.3 Requirements for a Web Application Development Process 20110.3.1 Handling Short Development Cycles 20110.3.2 Handling Changing Requirements 20110.3.3 Releases with Fixed Deadlines and Flexible Contents 20310.3.4 Parallel Development of Different Releases 20310.3.5 Reuse and Integration 20410.3.6 Adapting to Web Application’s Complexity Level 20410.3.7 Summary 20510.4 Analysis of the Rational Unified Process 20510.4.1 Introduction 20510.4.2 General Suitability for Web Application Development 20810.4.3 Does RUP meet the Requirements of Web Applications? 20910.5 Analysis of Extreme Programming 21110.5.1 Introduction 21110.5.2 Does XP meet the Requirements of Web Application Development? 21410.6 Outlook 21611 Usability of Web Applications 219Martin Hitz, Gerhard Leitner, Rudolf Melcher11.1 Motivation 21911.2 What is Usability? 22011.3 What Characterizes the Usability of Web Applications? 22211.4 Design Guidelines 22511.4.1 Response Times 22511.4.2 Interaction Efficiency 22511.4.3 Colors 22611.4.4 Text Layout 22711.4.5 Page Structure 22811.4.6 Navigation Structure 22811.4.7 Multiculturality 23011.4.8 Confidence-generating Measures 23111.4.9 Other Design Criteria 23211.5 Web Usability Engineering Methods 23211.5.1 Requirements Analysis 23411.5.2 Design 23711.5.3 Implementation 23811.5.4 Operation 23811.6 Web Usability Engineering Trends 23911.6.1 Usability Patterns 23911.6.2 Mobile Usability 24111.6.3 Accessibility 24311.7 Outlook 24512 Performance of Web Applications 247Gabriele Kotsis12.1 Introduction 24712.2 What Is Performance? 24812.3 What Characterizes the Performance of Web Applications? 25012.4 System Definition and Indicators 25112.5 Characterizing the Workload 25212.6 Analytical Techniques 25412.6.1 Operational Analysis 25412.6.2 Queuing Networks and Simulation Models 25512.6.3 Measuring Approaches 25712.7 Representing and Interpreting Results 25812.8 Performance Optimization Methods 25912.8.1 Acceleration Within a Web Application 26012.8.2 Reducing Transmission Time 26112.8.3 Server Tuning 26312.9 Outlook 26313 Security for Web Applications 265Martin Wimmer, Alfons Kemper, Stefan Seltzsam13.1 Introduction 26513.2 Aspects of Security 26613.3 Encryption, Digital Signatures and Certificates 26813.3.1 Symmetric Cryptography 26813.3.2 Asymmetric Cryptography 27013.3.3 Digital Signatures 27113.3.4 Certificates and Public Key Infrastructure 27213.4 Secure Client/Server-Interaction 27213.4.1 Point-to-Point Security 27213.4.2 End-to-End Security 27413.4.3 User Authentication and Authorization 27613.4.4 Electronic Payment Systems 27813.5 Client Security Issues 27913.5.1 Preserving Privacy 27913.5.2 Mobile Code Security 28113.5.3 Phishing and Web Spoofing 28213.5.4 Desktop Security 28313.6 Service Provider Security Issues 28513.6.1 Cross-Site Scripting 28513.6.2 SQL Injection 28713.6.3 Security of CGI Programs 28913.6.4 Service Availability 29013.6.5 Host Security 29113.7 Outlook 29214 The Semantic Web – The Network of Meanings in the Network of Documents 293Wernher Behrendt, Nitin Arora14.1 Fundamentals of the Semantic Web 29314.1.1 The Role of Software Agents 29414.1.2 The Role of Semantic Markup 29614.1.3 The Role of Ontologies 29714.2 Technological Concepts 29814.2.1 Agents According to the FIPA Standard 29814.2.2 Ontologies 30014.2.3 Semantic Markup on the Web 30314.3 Specifics of Semantic Web Applications 30814.3.1 Semantic Markup 30814.3.2 Agents 30914.3.3 Ontologies 30914.3.4 Semantic Web Services 31014.3.5 Integration into Web Engineering 31314.4 Tools 31414.5 Outlook 315Glossary 317Author Biographies 329Bibliography 337Credits 357Index 359
Hoppa över listan