Software Engineering: Theory and Practice, 4th edition
Published by Pearson (February 17, 2009) © 2010
- Shari Lawrence Pfleeger
- Joanne M. Atlee
Price Reduced From: $226.65
Details
- A print text
This product is expected to ship within 3-6 business days for US and 5-10 business days for Canadian customers.
For introductory courses in Software Engineering.
This introduction to software engineering and practice addresses both procedural and object-oriented development. The book applies concepts consistently to two common examples — a typical information system and a real-time system. It combines theory with real, practical applications by providing an abundance of case studies and examples from the current literature. This revision has been thoroughly updated to reflect significant changes in software engineering, including modeling and agile methods.Preface       Â
1         Why Software Engineering?        Â
1.1    What Is Software Engineering?     Â
1.2    How Successful Have We Been?    Â
1.3    What Is Good Software?    Â
1.4    Who Does Software Engineering?  Â
1.5Â Â Â Â A Systems Approach
1.6    An Engineering Approach    Â
1.7Â Â Â Â Members of the Development Team
1.8    How Has Software Engineering Changed? Â
1.9    Information Systems Example       Â
1.10   Real-Time Example  Â
1.11   What this Chapter Means for You  Â
1.12   What this Chapter Means for Your Development Team   Â
1.13Â Â Â What this Chapter Means for ResearchersÂ
1.14Â Â Â Term ProjectÂ
1.15   Key References      Â
1.16   Exercises     Â
2         Modeling the Process and Life Cycle     Â
2.1    The Meaning of Process     Â
2.2    Software Process Models   Â
2.3Â Â Â Â Tools and Techniques for Process Modeling
2.4    Practical Process Modeling Â
2.5Â Â Â Â Information System Example
2.6    Real-Time Example  Â
2.7    What this Chapter Means for You  Â
2.8    What this Chapter Means for Your Development Team   Â
2.9Â Â Â Â What this Chapter Means for ResearchersÂ
2.10Â Â Â Term ProjectÂ
2.11   Key References      Â
2.12   Exercises     Â
3         Planning and Managing the Project       Â
3.1    Tracking Progress   Â
3.2    Project Personnel    Â
3.3    Effort Estimation     Â
3.4    Risk Management    Â
3.5    The Project Plan     Â
3.6    Process Models and Project Management Â
3.7Â Â Â Â Information System Example
3.8    Real-Time Example  Â
3.9    What this Chapter Means for You  Â
3.10   What this Chapter Means for Your Development Team   Â
3.11Â Â Â What this Chapter Means for ResearchersÂ
3.12Â Â Â Term ProjectÂ
3.13   Key References      Â
3.14   Exercises     Â
4         Capturing the Requirements       Â
4.1    The Requirements Process  Â
4.2    Requirements Elicitation     Â
4.3    Types of Requirements      Â
4.4    Characteristics of Requirements    Â
4.5    Modeling Notations  Â
4.6Â Â Â Â Requirements and Specification Languages
4.7    Prototyping Requirements   Â
4.8    Requirements Documentation        Â
4.9    Validation and Verification  Â
4.10   Measuring Requirements     Â
4.11Â Â Â Choosing a Specification Technique
4.12   Information Systems Example       Â
4.13   Real-Time Example  Â
4.14Â Â Â Term ProjectÂ
4.15   Key References      Â
4.16   Exercises     Â
5         Designing the Architecture          Â
5.1    The Design Process Â
5.2    Decomposition and Views   Â
5.3    Modeling Architectures      Â
5.4Â Â Â Â Architectural Styles and Strategies
5.5Â Â Â Â Achieving Quality Attributes
5.6Â Â Â Â Collaborative DesignÂ
5.7    Architecture Evaluation and Refinement   Â
5.8Â Â Â Â Documenting Software Architectures
5.9 Â Â Â Architecture Design Review
5.10   Software Product Lines      Â
5.11Â Â Â Information System Example
5.12   Real-Time Example  Â
5.13   What this Chapter Means for you  Â
5.14   What this Chapter Means for Your Development Team   Â
5.15Â Â Â What this Chapter Means for ResearchersÂ
5.16Â Â Â Term ProjectÂ
5.17   Key References      Â
5.18   Exercises     Â
6         Designing the Modules     Â
6.1Â Â Â Â Design MethodologyÂ
6.2    Design Principles     Â
6.3    Object-Oriented Design     Â
6.4Â Â Â Â Representing Object-Oriented Designs in the UMLÂ Â Â Â Â Â Â Â Â Â
6.5    Object-Oriented Design Patterns   Â
6.6Â Â Â Â Other Design Considerations
6.7Â Â Â Â Object-Oriented Measurement
6.8    Design Documentation                 Â
6.9    Information Systems Example       Â
6.10   Real-Time Example  Â
6.11   What this Chapter Means for You  Â
6.12   What this Chapter Means for your Development Team    Â
6.13Â Â Â What this Chapter Means for ResearchersÂ
6.14Â Â Â Term ProjectÂ
6.15   Key References      Â
6.16   Exercises     Â
7         Writing the Programs        Â
7.1    Programming Standards and Procedures   Â
7.2    Programming Guidelines      Â
7.3    Documentation       Â
7.4    The Programming Process   Â
7.5    Information Systems Example       Â
7.6    Real-Time Example  Â
7.7    What this Chapter Means for You  Â
7.8    What this Chapter Means for Your Development Team   Â
7.9Â Â Â Â What this Chapter Means for ResearchersÂ
7.10Â Â Â Term ProjectÂ
7.11   Key References      Â
7.12   Exercises     Â
8         Testing the Programs       Â
8.1Â Â Â Â Software Faults and Failures
8.2    Testing Issues        Â
8.3    Unit Testing Â
8.4    Integration Testing Â
8.5    Testing Object-Oriented Systems  Â
8.6Â Â Â Â Test Planning
8.7    Automated Testing Tools   Â
8.8    When to Stop Testing       Â
8.9    Information Systems Example       Â
8.10   Real-Time Example  Â
8.11   What this Chapter Means for You  Â
8.12   What this Chapter Means for Your Development Team   Â
8.13Â Â Â What this Chapter Means for ResearchersÂ
8.14Â Â Â Term ProjectÂ
8.15   Key References      Â
8.16   Exercises     Â
9Â Â Â Â Â Â Â Â Â Testing the System
9.1Â Â Â Â Principles of System Testing
9.2    Function Testing     Â
9.3Â Â Â Â Performance TestingÂ
9.4    Reliability, Availability, and Maintainability Â
9.5Â Â Â Â Acceptance TestingÂ
9.6    Installation Testing Â
9.7Â Â Â Â Automated System TestingÂ
9.8Â Â Â Â Test DocumentationÂ
9.9    Testing Safety-Critical Systems    Â
9.10   Information Systems Example       Â
9.11   Real-Time Example  Â
9.12   What this Chapter Means for You  Â
9.13   What this Chapter Means for Your Development Team   Â
9.14Â Â Â What this Chapter Means for ResearchersÂ
9.15Â Â Â Term ProjectÂ
9.16   Key References      Â
9.17   Exercises     Â
10       Delivering the System      Â
10.1   Training       Â
10.2   Documentation       Â
10.3   Information Systems Example       Â
10.4   Real-Time Example  Â
10.5   What this Chapter Means for You  Â
10.6   What this Chapter Means for your Development Team    Â
10.7Â Â Â What this Chapter Means for ResearchersÂ
10.8Â Â Â Term ProjectÂ
10.9   Key References      Â
10.10 Exercises     Â
11       Maintaining the System   Â
11.1   The Changing System        Â
11.2Â Â Â The Nature of MaintenanceÂ
11.3   Maintenance Problems       Â
11.4   Measuring Maintenance Characteristics    Â
11.5Â Â Â Maintenance Techniques and Tools
11.6   Software Rejuvenation      Â
11.7   Information Systems Example       Â
11.8   Real-Time Example  Â
11.9   What this Chapter Means for You  Â
11.10 What this Chapter Means for Your Development Team   Â
11.11Â What this Chapter Means for ResearchersÂ
11.12Â Term ProjectÂ
11.13 Key References      Â
11.14 Exercises     Â
12       Evaluating Products, Processes, and Resources        Â
12.1   Approaches to Evaluation   Â
12.2Â Â Â Selecting an Evaluation TechniqueÂ
12.3   Assessment vs. Prediction  Â
12.4   Evaluating Products Â
12.5Â Â Â Evaluating Processes
12.6Â Â Â Evaluating Resources
12.7   Information Systems Example       Â
12.8   Real-Time Example  Â
12.9   What this Chapter Means for You  Â
12.10 What this Chapter Means for Your Development Team   Â
12.11Â What this Chapter Means for ResearchersÂ
12.12Â Term ProjectÂ
12.13 Key References      Â
12.14 Exercises     Â
13       Improving Predictions, Products, Processes, and Resources          Â
13.1Â Â Â Improving PredictionÂ
13.2   Improving Products Â
13.3Â Â Â Improving ProcessesÂ
13.4Â Â Â Improving ResourcesÂ
13.5   General Improvement Guidelines    Â
13.6   Information Systems Example       Â
13.7   Real-Time Example  Â
13.8   What this Chapter Means For You Â
13.9   What this Chapter Means for your Development Team    Â
13.10Â What this Chapter Means for ResearchersÂ
13.11Â Term ProjectÂ
13.12 Key References      Â
13.13 Exercises     Â
14       The Future of Software Engineering      Â
14.1Â Â Â How Have We Done?
14.2Â Â Â Technology TransferÂ
14.3   Decision-Making in Software Engineering  Â
14.4   The Professionalization of Software Engineering: Licensing, Certification, and Ethics  Â
14.5Â Â Â Term ProjectÂ
14.6   Key References      Â
14.7   Exercises     Â
Annotated Bibliography      Â
IndexÂ
Â
Need help? Get in touch