| Preface |
|
xi | |
|
Why Software Engineering? |
|
|
1 | (44) |
|
What Is Software Engineering? |
|
|
2 | (3) |
|
How Successful Have We Been? |
|
|
5 | (4) |
|
|
|
9 | (5) |
|
Who Does Software Engineering? |
|
|
14 | (2) |
|
|
|
16 | (5) |
|
|
|
21 | (4) |
|
Members of the Development Team |
|
|
25 | (2) |
|
How Has Software Engineering Changed? |
|
|
27 | (9) |
|
Information Systems Example |
|
|
36 | (1) |
|
|
|
37 | (2) |
|
What this Chapter Means for You |
|
|
39 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
40 | (1) |
|
What this Chapter Means for Researchers |
|
|
40 | (1) |
|
|
|
40 | (2) |
|
|
|
42 | (1) |
|
|
|
43 | (2) |
|
Modeling the Process and Life Cycle |
|
|
45 | (37) |
|
|
|
45 | (3) |
|
|
|
48 | (15) |
|
Tools and Techniques for Process Modeling |
|
|
63 | (7) |
|
Practical Process Modeling |
|
|
70 | (3) |
|
Information System Example |
|
|
73 | (2) |
|
|
|
75 | (1) |
|
What this Chapter Means for You |
|
|
76 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
76 | (1) |
|
What this Chapter Means for Researchers |
|
|
77 | (1) |
|
|
|
77 | (1) |
|
|
|
77 | (3) |
|
|
|
80 | (2) |
|
Planning and Managing the Project |
|
|
82 | (59) |
|
|
|
82 | (13) |
|
|
|
95 | (9) |
|
|
|
104 | (15) |
|
|
|
119 | (4) |
|
|
|
123 | (2) |
|
Process Models and Project Management |
|
|
125 | (8) |
|
Information System Example |
|
|
133 | (2) |
|
|
|
135 | (1) |
|
What this Chapter Means for You |
|
|
136 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
136 | (1) |
|
What this Chapter Means for Researchers |
|
|
137 | (1) |
|
|
|
137 | (1) |
|
|
|
137 | (1) |
|
|
|
138 | (3) |
|
Capturing the Requirements |
|
|
141 | (82) |
|
|
|
142 | (2) |
|
|
|
144 | (4) |
|
|
|
148 | (7) |
|
Characteristics of Requirements |
|
|
155 | (1) |
|
|
|
156 | (31) |
|
Requirements and Specification Languages |
|
|
187 | (4) |
|
|
|
191 | (2) |
|
Requirements Documentation |
|
|
193 | (5) |
|
Validation and Verification |
|
|
198 | (6) |
|
|
|
204 | (2) |
|
Choosing a Specification Technique |
|
|
206 | (3) |
|
Information Systems Example |
|
|
209 | (2) |
|
|
|
211 | (4) |
|
|
|
215 | (3) |
|
|
|
218 | (1) |
|
|
|
219 | (4) |
|
|
|
223 | (63) |
|
|
|
223 | (3) |
|
Decomposition and Modularity |
|
|
226 | (3) |
|
Architectural Styles and Strategies |
|
|
229 | (8) |
|
Issues in Design Creation |
|
|
237 | (11) |
|
Characteristics of Good Design |
|
|
248 | (11) |
|
Techniques for Improving Design |
|
|
259 | (8) |
|
Design Evaluation and Validation |
|
|
267 | (11) |
|
|
|
278 | (1) |
|
Information System Example |
|
|
279 | (2) |
|
|
|
281 | (1) |
|
What this Chapter Means for you |
|
|
282 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
282 | (1) |
|
What this Chapter Means for Researchers |
|
|
283 | (1) |
|
|
|
283 | (1) |
|
|
|
283 | (1) |
|
|
|
284 | (2) |
|
|
|
286 | (51) |
|
|
|
286 | (5) |
|
The OO Development Process |
|
|
291 | (3) |
|
|
|
294 | (4) |
|
Representing OO: An Example Using UML |
|
|
298 | (2) |
|
|
|
300 | (15) |
|
|
|
315 | (7) |
|
|
|
322 | (10) |
|
Information Systems Example |
|
|
332 | (2) |
|
|
|
334 | (1) |
|
What this Chapter Means for You |
|
|
334 | (1) |
|
What this Chapter Means for your Development Team |
|
|
335 | (1) |
|
What this Chapter Means for Researchers |
|
|
335 | (1) |
|
|
|
335 | (1) |
|
|
|
335 | (1) |
|
|
|
336 | (1) |
|
|
|
337 | (28) |
|
Programming Standards and Procedures |
|
|
337 | (3) |
|
|
|
340 | (11) |
|
|
|
351 | (4) |
|
|
|
355 | (4) |
|
Information Systems Example |
|
|
359 | (2) |
|
|
|
361 | (1) |
|
What this Chapter Means for You |
|
|
362 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
362 | (1) |
|
What this Chapter Means for Researchers |
|
|
362 | (1) |
|
|
|
363 | (1) |
|
|
|
363 | (1) |
|
|
|
363 | (2) |
|
|
|
365 | (52) |
|
Software Faults and Failures |
|
|
365 | (6) |
|
|
|
371 | (5) |
|
|
|
376 | (14) |
|
|
|
390 | (7) |
|
Testing Object-Oriented Systems |
|
|
397 | (3) |
|
|
|
400 | (2) |
|
|
|
402 | (3) |
|
|
|
405 | (5) |
|
Information Systems Example |
|
|
410 | (1) |
|
|
|
411 | (1) |
|
What this Chapter Means for You |
|
|
412 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
412 | (1) |
|
What this Chapter Means for Researchers |
|
|
413 | (1) |
|
|
|
413 | (1) |
|
|
|
413 | (1) |
|
|
|
414 | (3) |
|
|
|
417 | (66) |
|
Principles of System Testing |
|
|
417 | (13) |
|
|
|
430 | (6) |
|
|
|
436 | (2) |
|
Reliability, Availability, and Maintainability |
|
|
438 | (9) |
|
|
|
447 | (3) |
|
|
|
450 | (1) |
|
|
|
450 | (1) |
|
|
|
451 | (11) |
|
Testing Safety-Critical Systems |
|
|
462 | (11) |
|
Information Systems Example |
|
|
473 | (2) |
|
|
|
475 | (2) |
|
What this Chapter Means for You |
|
|
477 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
477 | (1) |
|
What this Chapter Means for Researchers |
|
|
477 | (1) |
|
|
|
478 | (1) |
|
|
|
478 | (1) |
|
|
|
479 | (4) |
|
|
|
483 | (16) |
|
|
|
483 | (5) |
|
|
|
488 | (7) |
|
Information Systems Example |
|
|
495 | (1) |
|
|
|
496 | (1) |
|
What this Chapter Means for You |
|
|
496 | (1) |
|
What this Chapter Means for your Development Team |
|
|
496 | (1) |
|
What this Chapter Means for Researchers |
|
|
497 | (1) |
|
|
|
497 | (1) |
|
|
|
497 | (1) |
|
|
|
497 | (2) |
|
|
|
499 | (45) |
|
|
|
499 | (8) |
|
The Nature of Maintenance |
|
|
507 | (3) |
|
|
|
510 | (8) |
|
Measuring Maintenance Characteristics |
|
|
518 | (6) |
|
Maintenance Techniques and Tools |
|
|
524 | (8) |
|
|
|
532 | (6) |
|
Information Systems Example |
|
|
538 | (1) |
|
|
|
539 | (1) |
|
What this Chapter Means for You |
|
|
540 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
540 | (1) |
|
What this Chapter Means for Researchers |
|
|
541 | (1) |
|
|
|
541 | (1) |
|
|
|
541 | (1) |
|
|
|
542 | (2) |
|
Evaluating Products, Processes, and Resources |
|
|
544 | (56) |
|
|
|
544 | (5) |
|
Selecting an Evaluation Technique |
|
|
549 | (4) |
|
Assessment vs. Prediction |
|
|
553 | (6) |
|
|
|
559 | (15) |
|
|
|
574 | (16) |
|
|
|
590 | (5) |
|
Information Systems Example |
|
|
595 | (1) |
|
|
|
596 | (1) |
|
What this Chapter Means for You |
|
|
596 | (1) |
|
What this Chapter Means for Your Development Team |
|
|
597 | (1) |
|
What this Chapter Means for Researchers |
|
|
597 | (1) |
|
|
|
597 | (1) |
|
|
|
598 | (1) |
|
|
|
598 | (2) |
|
Improving Predictions, Products, Processes, and Resources |
|
|
600 | (29) |
|
|
|
601 | (8) |
|
|
|
609 | (4) |
|
|
|
613 | (8) |
|
|
|
621 | (3) |
|
General Improvement Guidelines |
|
|
624 | (1) |
|
Information Systems Example |
|
|
625 | (1) |
|
|
|
626 | (1) |
|
What this Chapter Means For You |
|
|
626 | (1) |
|
What this Chapter Means for your Development Team |
|
|
626 | (1) |
|
What this Chapter Means for Researchers |
|
|
627 | (1) |
|
|
|
627 | (1) |
|
|
|
628 | (1) |
|
|
|
628 | (1) |
|
The Future of Software Engineering |
|
|
629 | (44) |
|
|
|
629 | (3) |
|
|
|
632 | (9) |
|
Decision-Making in Software Engineering |
|
|
641 | (12) |
|
The Professionalization of Software Engineering: Licensing, Certification, and Ethics |
|
|
653 | (18) |
|
|
|
671 | (1) |
|
|
|
671 | (1) |
|
|
|
672 | (1) |
| Annotated Bibliography |
|
673 | (32) |
| Index |
|
705 | |