In-depth coverage of the latest advances in software engineering Aimed at defining inherent problems and providing appropriate solutions when constructing large software systems, the study of software engineering is an essential practice in order to create and maintain successful software development. This new edition shows you how to appreciate the issues, design trade-offs, and teamwork required for successful software development. With a special...