Software adalah program komputer dan teknik untuk mengontrol sistem komputer. Terdapat dua jenis software utama yaitu sistem operasi yang mengontrol perangkat keras komputer dan bahasa pemrograman yang digunakan untuk membuat program aplikasi. Bahasa pemrograman diklasifikasikan berdasarkan generasi dan tingkatannya seperti tingkat rendah, menengah, dan tinggi.