This document provides an overview of basic concepts in software engineering. It discusses that computer science focuses on theory while software engineering focuses on practical development and delivery. The software process involves activities like specification, development, validation and evolution. Process models represent the software process from different perspectives. Roughly 60% of costs are development costs and 40% are testing costs, with evolution costs often exceeding development costs. Structured approaches to software development include models, rules, recommendations and process guidance. CASE tools provide automated support for software process activities. Good software should have required functionality and be maintainable, dependable, usable and efficient. Professional responsibilities include behaving ethically and upholding principles like confidentiality, competence, intellectual property rights and avoiding computer misuse