Software Engineering : Modern Approaches, 2/e (Hardcover)
Eric J. Braude, Michael E. Bernstein
Presenting the most comprehensive and practical introduction to the principles of software engineering and how to apply them, this updated edition follows an object-oriented perspective
Includes new and expanded material on agile and emerging methods, metrics, quality assurance security, real-world case studies, refactoring, test-driving development, and testing
Case studies help readers learn the importance of quality factors, appropriate design, and project management techniques
Object-oriented. Students learn to think using modern OO and component methods. This makes the connection to the phases of the software engineering process much easier to teach, since almost all contemporary implementation languages are object-oriented.
Longitudinal case study using IEEE standards and Java. An application video game is used to hold the students' interest, while providing them with a direct way to understand the concepts. Instructors can cover conceptual and more difficult topics, such as formal methods, in class in greater detail.
Text body relates throughout to the longitudinal case study. Instructor can illustrate the meaning of system testing more easily, since a full example is available.
Longitudinal reference to PSP and TSP. Introduces student to the essence of individual software engineering competence.
Emphasis on quality and measurement. Produces professional, measurable software engineering skills.
Incorporates the Unified Modeling Language (UML) and Unified Software Development Process (USDP). Keeps student up-to-date with contemporary methods.
Extensive use of Design Patterns. Gives students sophisticated, eminently practical tools and adds a much-needed technical edge to software engineering.
Original color PowerPoint slides freely available. Complex design is simplified by color-coding and transition from the basic components to the fully detailed diagram. Slides track and match the text.
New to this Edition
Up-to-date: covers agile practices and develops open source practices
Two new open source case studies
Several cases studies are included at the end of each major part of the book to illustrate the practical application of software engineering concepts
Gives how-to information for building application in team settings
PART I INTRODUCTION TO SOFTWARE ENGINEERING
Chapter 1 The Goals and Terminology of Software Engineering
Chapter 2 Introduction to Quality and Metrics in Software Engineering
PART II SOFTWARE PROCESS
Chapter 3 Software Process
Chapter 4 Agile Software Processes
Chapter 5 Quality in the Software Process
Chapter 6 Software Configuration Management
PART III PROJECT MANAGEMENT
Chapter 7 Principles of Software Project Management I: Organization, Tools, and Risk Management
Chapter 8 Principles of Software Project Management II: Estimation, Scheduling, and Planning
Chapter 9 Quality and Metrics in Project Management
PART IV REQUIREMENTS ANALYSIS
Chapter 10 Principles of Requirements Analysis
Chapter 11 Analyzing High-Level Requirements
Chapter 12 Analyzing Detailed Requirements
Chapter 13 Quality and Metrics in Requirements Analysis
Chapter 14 Online Chapter - Formal and Emerging Methods in Requirements Analysis as follows: An Introduction
PART V SOFTWARE DESIGN
Chapter 15 Principles of Software Design
Chapter 16 The Unified Modeling Language
Chapter 17 Software Design Patterns
Chapter 18 Software Architecture
Chapter 19 Detailed Design
Chapter 20 Design Quality and Metrics
Chapter 21 Online Chapter - Advanced and Emerging Methods in Software Design
PART VI IMPLEMENTATION
Chapter 22 Principles of Implementation
Chapter 23 Quality and Metrics in Implementation
Chapter 24 Refactoring
PART VII TESTING AND MAINTENANCE
Chapter 25 Introduction to Software Testing
Chapter 26 Unit Testing
Chapter 27 Module and Integration Testing
Chapter 28 Testing at the System Level
Chapter 29 Software Maintenance