|
Preface |
7 |
|
|
Table of Contents |
9 |
|
|
List of Contributors |
15 |
|
|
1 The Need for Web Engineering: An Introduction |
20 |
|
|
1.1 Introduction |
20 |
|
|
1.2 Web Applications Versus Conventional Software |
22 |
|
|
1.2.1 Web Hypermedia, Web Software, or Web Application? |
22 |
|
|
1.2.2 Web Development vs. Software Development |
23 |
|
|
1.3 The Need for an Engineering Approach |
32 |
|
|
1.4 Empirical Assessment |
36 |
|
|
1.5 Conclusions |
43 |
|
|
Acknowledgements |
43 |
|
|
References |
43 |
|
|
Authors’ Biographies |
45 |
|
|
2 Web Effort Estimation |
48 |
|
|
2.1 Introduction |
48 |
|
|
2.2 Effort Estimation Techniques |
49 |
|
|
2.2.1 Expert Opinion |
50 |
|
|
2.2.2 Algorithmic Techniques |
51 |
|
|
2.2.3 Artificial Intelligence Techniques |
53 |
|
|
2.3 Measuring Effort Prediction Power and Accuracy |
58 |
|
|
2.3.1 Measuring Predictive Power |
58 |
|
|
2.3.2 Measuring Predictive Accuracy |
59 |
|
|
2.4 Which Is the Most Accurate Prediction Technique? |
60 |
|
|
2.5 Case Study |
61 |
|
|
2.5.1 Data Validation |
63 |
|
|
2.5.2 Variables and Model Selection |
66 |
|
|
2.5.3 Extraction of effort Equation |
86 |
|
|
2.5.4 Model Validation |
86 |
|
|
2.6 Conclusions |
88 |
|
|
References |
89 |
|
|
Authors’ Biographies |
92 |
|
|
3 Web Productivity Measurement and Benchmarking |
94 |
|
|
3.1 Introduction |
94 |
|
|
3.2 Productivity Measurement Method |
95 |
|
|
3.3 Case Study |
96 |
|
|
3.3.1 Productivity Measure Construction |
98 |
|
|
3.3.2 Productivity Analysis |
115 |
|
|
3.4 Conclusions |
123 |
|
|
References |
124 |
|
|
Acknowledgements |
124 |
|
|
Authors’ Biographies |
124 |
|
|
4 Web Quality |
128 |
|
|
4.1 Introduction |
128 |
|
|
4.2 Different Perspectives of Quality |
131 |
|
|
4.2.1 Standards and Quality |
131 |
|
|
4.2.2 Quality Versus Quality in Use |
135 |
|
|
4.2.3 Quality and User Standpoints |
138 |
|
|
4.2.4 What is Web Quality? |
139 |
|
|
4.3 Evaluating Web Quality using WebQEM |
142 |
|
|
4.3.1 Quality Requirements Definition and Specification |
144 |
|
|
4.3.2 Elementary Measurement and Evaluation |
144 |
|
|
4.3.3 Global Evaluation |
147 |
|
|
4.3.4 Conclusions and Recommendations |
148 |
|
|
4.3.5 Automating the Process using WebQEM_Tool |
148 |
|
|
4.4 Case Study: Evaluating the Quality of Two Web Applications |
149 |
|
|
4.4.1 External Quality Requirements |
149 |
|
|
4.4.2 Designing and Executing the Elementary Evaluation |
150 |
|
|
4.4.3 Designing and Executing the Partial/Global Evaluation |
153 |
|
|
4.4.4 Analysis and Recommendations |
155 |
|
|
4.5 Concluding Remarks |
158 |
|
|
Acknowledgements |
159 |
|
|
References |
159 |
|
|
Authors’ Biographies |
161 |
|
|
5 Web Usability: Principles and Evaluation Methods |
162 |
|
|
5.1 Introduction |
162 |
|
|
5.1.1 Usability in the Software Lifecycle |
163 |
|
|
5.1.2 Chapter Organisation |
164 |
|
|
5.2 Defining Web Usability |
165 |
|
|
5.2.1 Usability and Accessibility |
166 |
|
|
5.3 Web Usability Criteria |
168 |
|
|
5.3.1 Content Visibility |
170 |
|
|
5.3.2 Ease of Content Access |
172 |
|
|
5.3.3 Ease of Content Browsing |
174 |
|
|
5.4 Evaluation Methods |
175 |
|
|
5.4.1 User Testing |
176 |
|
|
5.4.2 Inspection Methods |
178 |
|
|
5.5 Automatic Tools To Support Evaluations |
184 |
|
|
5.6 Evaluation of the DEI Application |
185 |
|
|
5.6.1 Design Inspection |
186 |
|
|
5.6.2 Web Usage Analysis |
189 |
|
|
5.7 Concluding Remarks |
192 |
|
|
References |
194 |
|
|
Authors’ Biographies |
198 |
|
|
6 Web System Reliability and Performance: |
200 |
|
|
6.1 Introduction |
200 |
|
|
6.2 Web Application Services |
202 |
|
|
6.2.1 Web Resource Classification |
203 |
|
|
6.2.2 Web Application’s Bearing on System Resources |
205 |
|
|
6.2.3 Workload Models and Performance Requirements |
206 |
|
|
6.3 Applications Predominantly Dynamic |
208 |
|
|
6.3.1 Dynamic Request Service |
208 |
|
|
6.3.2 Software Technologies for the Application Logic |
209 |
|
|
6.3.3 System Platforms |
212 |
|
|
6.4 Testing Loop Phase |
216 |
|
|
6.4.1 Representation of the Workload Model |
217 |
|
|
6.4.2 Traffic Generation |
218 |
|
|
6.4.3 Data Collection and Analysis |
218 |
|
|
6.5 Performance Improvements |
222 |
|
|
6.5.1 System Tuning |
222 |
|
|
6.5.2 System Scale-up |
223 |
|
|
6.5.3 System Scale-out |
223 |
|
|
6.6 Case Study |
224 |
|
|
6.6.1 Service Characterisation and Design |
224 |
|
|
6.6.2 Testing Loop Phase |
227 |
|
|
6.6.3 System Consolidation and Performance Improvement |
231 |
|
|
6.7 Conclusions |
233 |
|
|
Acknowledgements |
233 |
|
|
References |
233 |
|
|
Authors’ Biographies |
236 |
|
|
7 Web Application Testing |
238 |
|
|
7.1 Introduction |
238 |
|
|
7.2 Web Application Testing: Challenges and Perspectives |
240 |
|
|
7.2.1 Testing the Non-functional Requirements of a Web Application |
241 |
|
|
7.2.2 Testing the Functional Requirements of a Web Application |
244 |
|
|
7.3 Web Application Representation Models |
246 |
|
|
7.4 Unit Integration and System Testing of a Web Application |
249 |
|
|
7.4.1 Unit Testing |
249 |
|
|
7.4.2 Integration Testing |
251 |
|
|
7.4.3 System Testing |
252 |
|
|
7.5 Strategies for Web Application Testing |
252 |
|
|
7.5.1 White Box Strategies |
253 |
|
|
7.5.2 Black Box Strategies |
256 |
|
|
7.5.3 Grey Box Testing Strategies |
260 |
|
|
7.5.4 User Session Based Testing |
261 |
|
|
7.6 Tools for Web Application Testing |
262 |
|
|
7.7 A Practical Example of Web Application Testing |
265 |
|
|
7.8 Conclusions |
276 |
|
|
References |
277 |
|
|
Authors’ Biographies |
279 |
|
|
8 An Overview of Process Improvement in Small Settings |
280 |
|
|
8.1 Introduction |
280 |
|
|
8.1.1 Why Do Organisations Initiate SPI Efforts? |
281 |
|
|
8.1.2 Process Improvement Cycle |
284 |
|
|
8.1.3 Process Assessments |
286 |
|
|
8.2 Implementation in Small Settings |
288 |
|
|
8.2.1 Availability of Funds |
288 |
|
|
8.2.2 Resources For Process Improvement |
288 |
|
|
8.2.3 Process Model |
289 |
|
|
8.2.4 Training |
289 |
|
|
8.2.5 Relevance of Practices in Assessment Models |
290 |
|
|
8.2.6 Changing Behaviour |
290 |
|
|
8.2.7 Piloting Practices |
291 |
|
|
8.2.8 Where To Start |
291 |
|
|
8.3 Conclusions |
293 |
|
|
References |
293 |
|
|
Author’s Biography |
294 |
|
|
9 Conceptual Modelling of Web Applications: The OOWS Approach |
296 |
|
|
9.1 Introduction |
296 |
|
|
9.2 A Method to Model Web Applications |
297 |
|
|
9.2.1 OO-Method Conceptual Modelling |
298 |
|
|
9.2.2 OOWS: Extending Conceptual Modelling to Web Environments |
299 |
|
|
9.3 A Strategy To Develop the Web Solution |
305 |
|
|
9.4 Case Study: |
306 |
|
|
9.4.1 Valencia CF Web Conceptual Model |
307 |
|
|
9.4.2 Implemented Valencia CF Web Application |
316 |
|
|
9.5 Conclusions |
319 |
|
|
References |
319 |
|
|
Authors’ Biographies |
320 |
|
|
10 Model-Based Web Application Development |
322 |
|
|
10.1 The OOHDM approach – An Overview |
322 |
|
|
10.1.1 Requirements Gathering |
323 |
|
|
10.1.2 Conceptual Design |
324 |
|
|
10.1.3 Navigational Design |
324 |
|
|
10.1.4 Abstract Interface Design |
325 |
|
|
10.1.5 Implementation |
325 |
|
|
10.2 Building an Online CD Store with OOHDM |
326 |
|
|
10.2.1 Requirements Gathering |
326 |
|
|
10.2.2 Conceptual Modelling |
332 |
|
|
10.2.3 Navigation Design |
334 |
|
|
10.2.4 Abstract Interface Design |
340 |
|
|
10.3 From Design to Implementation |
346 |
|
|
10.4 Discussion and Lessons Learned |
350 |
|
|
10.5 Concluding Remarks |
351 |
|
|
Acknowledgements |
351 |
|
|
References |
351 |
|
|
Authors’ Biography |
352 |
|
|
11 W2000: A Modelling Notation for Complex Web Applications |
354 |
|
|
11.1 Introduction |
354 |
|
|
11.2 Modelling Elements |
356 |
|
|
11.3 Models |
360 |
|
|
11.3.1 Adaptability |
362 |
|
|
11.3.2 Tool Support |
365 |
|
|
11.4 Example Application |
365 |
|
|
11.4.1 Information Model |
367 |
|
|
11.4.2 Navigation Model |
372 |
|
|
11.4.3 Presentation Model |
375 |
|
|
11.4.4 Service Model |
377 |
|
|
11.5 Conclusions and Future Work |
381 |
|
|
References |
381 |
|
|
Authors’ Biographies |
382 |
|
|
12 What You Need To Know About Statistics |
384 |
|
|
12.1 Describing Individual Variables |
384 |
|
|
12.1.1 Types of Variables |
384 |
|
|
12.1.2 Descriptive Statistics |
386 |
|
|
12.2 The Normal Distribution |
393 |
|
|
12.3 Overview of Sampling Theory |
394 |
|
|
12.4 Other Probability Distributions |
397 |
|
|
12.5 Identifying Relationships in the Data |
398 |
|
|
12.5.1 Chi-Square Test for Independence |
399 |
|
|
12.5.2 Correlation Analysis |
403 |
|
|
12.5.3 Regression Analysis |
409 |
|
|
12.5.4 Analysis of Variance (ANOVA) |
419 |
|
|
12.5.5 Comparing Two Estimation Models |
424 |
|
|
12.5.6 Final Comments |
426 |
|
|
Author’s Biography |
426 |
|
|
13 Empirical Research Methods in Web and Software Engineering |
428 |
|
|
13.1 Introduction |
428 |
|
|
13.2 Overview of Empirical Methods |
430 |
|
|
13.3 Empirical Methods in an Improvement Context |
434 |
|
|
13.4 Controlled Experiments |
435 |
|
|
13.4.1 Introduction |
435 |
|
|
13.4.2 Design |
436 |
|
|
13.4.3 Operation |
438 |
|
|
13.4.4 Analysis and Interpretation |
439 |
|
|
13.5 Case Study |
441 |
|
|
13.5.1 Introduction |
441 |
|
|
13.5.2 Case Study Arrangements |
442 |
|
|
13.5.3 Confounding Factors and Other Aspects |
442 |
|
|
13.6 Survey |
443 |
|
|
13.6.1 Survey Characteristics |
443 |
|
|
13.6.2 Survey Purposes |
444 |
|
|
13.6.3 Data Collection |
445 |
|
|
13.7 Post-mortem Analysis |
445 |
|
|
13.8 Summary |
447 |
|
|
References |
447 |
|
|
Authors Biographies |
448 |
|
|
Index |
450 |
|
|
More eBooks at www.ciando.com |
0 |
|