Là việc áp dụng một cách có hệ thống, kỷ luật và định lượng để phát triển, sử dụng và bảo trì phần mềm, bao gồm các quy trình từ thiết kế, xây dựng, kiểm thử đến vận hành, đảm bảo tạo ra sản phẩm chất lượng, đáng tin cậy, đáp ứng nhu cầu người dùng, khác với Khoa học máy tính tập trung vào lý thuyết cơ bản