This document provides an introduction to software engineering. It defines software engineering as a discipline concerned with all aspects of software development. It notes that software engineering is important because complex software systems need to be developed and managed in a disciplined way. The document discusses some examples of software failures that demonstrate the need for engineering practices. It also outlines some key software engineering concepts like the software development process, process models, and attributes of high-quality software.