An Integrated Approach to Software Engineering introduces software engineering to advanced-level undergraduate and graduate students of computer science. It emphasizes a case-study approach whereby a project is developed through the course of the book, illustrating the different activities of software development. The sequence of chapters is essentially the same as the sequence of activities performed during a typical software project. All activities, including quality assurance and control activities, are described in each chapter as integral activities for that phase of development. Similarly, the author carefully introduces appropriate metrics for controlling and assessing the software process.
Chapters in this revised edition, updated for today’s standards, include these new features:
Software Process: a discussion on the timeboxing model for iterative development and on inspection process
Requirements Analysis and Specification: a description of Use Cases
Software Architecture: an additional chapter for this edition
Project Planning: some practical techniques for estimation, scheduling, tracking, and risk management
Object Oriented Design: a discussion on UML and on concepts such as cohesion, coupling and open-closed principle
Coding: sections on refactoring, test driven development, pair programming, common coding defects, coding standards, and some useful coding practices
Testing: a presentation on pair-wise testing as an approach for functional testing, defect tracking, and defect analysis and prevention
The text, bolstered by numerous examples and chapter summaries, imparts to the reader the knowledge, skills, practices and techniques needed to successfully execute a software project.