Software engineering is a systematic and disciplined approach to developing software. It concerns the application of computer science and engineering principles and practices to the development and maintenance of high quality software, delivered on time and within budget.