本書探討了軟件工程的真正含義,匯集了一些重要的軟件開發(fā)基本原則,將它們緊密結合成一個一致的模型,旨在幫助讀者有效、快速地構建軟件。全書共4個部分:第1部分探討軟件工程的真正含義,以及如何將工程的原則和原理應用到軟件開發(fā)中;第2部分講述運用科學思想優(yōu)化軟件開發(fā)過程的方法,包括迭代式、增量式工作,獲得并利用快速、高質量的反饋,采用實驗性和經驗主義的科學方法;第3部分介紹管理軟件復雜性的方法,深入探討模塊化、內聚力、關注點分離、信息隱藏和抽象、管理耦合等原則;第4部分介紹支持軟件工程的工具,以及一些貫穿本書的軟件開發(fā)理念,包括可測試性、可部署性、速度、控制變量、持續(xù)交付等。