This document discusses key topics in software engineering including its importance, costs, methods, challenges and professional responsibilities. It begins by outlining the objectives of understanding what software engineering is, its importance, and ethical issues. It then discusses that software costs, especially maintenance, often exceed development costs. Software engineering aims to improve cost-effectiveness. The document poses several frequently asked questions about software engineering and provides concise answers, covering topics such as the definition of software and differences between computer science, software engineering and system engineering. It also discusses software processes, costs, methods, CASE tools, attributes of good software and challenges in the field.