1 Software and Software Engineering Part One The Software Process 2 Process Models 3 Agile Development Part Two Modeling 4 Principles that Guide Practice 5 Understanding Requirements 6 Requirements Modeling: Scenarios, Information, and Analysis Classes 7 Requirements Modeling: Flow, Behavior, Patterns, and WebApps 8 Design Concepts 9 Architectural Design 10 Component-Level Design 11 User Interface Design 12 Pattern-Based Design 13 WebApp Design Part Three Quality Management 14 Quality Concepts 15 Review Techniques 16 Software Quality Assurance 17 Software Testing Strategies 18 Testing Conventional Applications 19 Testing Object-Oriented Applications 20 Testing Web Applications 21 Formal Modeling and Verification 22 Software Configuration Management 23 Product Metrics Part Four Project Management 24 Project Management Concepts 25 Process and Project Metrics 26 Estimation for Software Projects 27 Project Scheduling 28 Risk Management 29 Maintenance and Reengineering Part Five Advanced Topics 30 Software Process Improvement 31 Emerging Trends in Software Engineering 32 Concluding Comments Appendix I-An Introduction to UML Appendix II-Object-Oriented Concepts.
Software Engineering: a Practitioner's Approach