本書按照典型的軟件開發過程來組織內容,旨在培養讀者的軟件工程思想及實際軟件開發的能力。全書共分6部分,分別是軟件工程概述、可行性研究與專案開發計畫、結構化分析與設計、物件導向分析與設計、軟件實現與測試、軟件維護與軟件工程管理。本書共分為13章,內容涉及軟件與軟件工程、軟件過程、敏捷軟件開發、可行性研究與專案開發計畫、結構化分析、結構化設計、物件導向方法與UML、物件導向分析、軟件體系結構與設計模式、物件導向設計、軟件實現、軟件測試、軟件維護與軟件工程管理。本書理論與實踐相結合,內容翔實,可操作性強。本書是高等院校計算機科學與技術、軟件工程及相關專業“軟件工程”課程的推薦教材。