Bab 1 memberikan penjelasan tentang rekayasa perangkat lunak, termasuk definisi, karakteristik, tujuan, dan masalah-masalah yang mendorong kehadiran rekayasa perangkat lunak. Rekayasa perangkat lunak bertujuan menghasilkan perangkat lunak berkualitas dengan biaya efisien dan tepat waktu serta mengatasi masalah krisis perangkat lunak seperti kesalahan, ketidakmampuan memprediksi biaya, dan kual