Yazılım Mühendisliği, kullanıcı gereksinimlerini karşılamak amacıyla yazılım ürünlerinin sistematik, disiplinli, ölçülebilir ve mühendislik prensipleri çerçevesinde tasarlanması, geliştirilmesi, test edilmesi ve bakımının yapılması sürecidir.

Sadece kod yazmaktan ibaret olmayıp; proje yönetimi, sistem analizi, veri tabanı tasarımı ve yazılım kalitesi güvencesini de kapsar. Karmaşık ve büyük yazılım projelerinin bütçe ve zaman sınırları içinde hatasız ve ölçeklenebilir olarak üretilebilmesini sağlayan metodolojik disiplindir.