Mengapa ini disebut Software Configuration Management (SCM)?

9

Ketika saya memikirkan konfigurasi perangkat lunak, saya memikirkan file yang dibaca oleh runtime - kata file akan berisi hal-hal seperti port yang mungkin digunakan server, apakah akan menggunakan enkripsi, dan jalur berbagai sumber daya.

Ketika saya pertama kali menemukan "Manajemen Konfigurasi Perangkat Lunak", saya pikir itu berarti pengelolaan file konfigurasi saja, tetapi saya segera menyadari alat SCM tidak hanya menyangkut file konfigurasi, tetapi juga kode perangkat lunak, perangkat lunak yang dapat dieksekusi / biner, dan sumber daya juga.

Jadi mengapa kita menggunakan istilah "Manajemen Konfigurasi Perangkat Lunak"? Bukankah "Manajemen Perangkat Lunak" lebih mencakup? Atau apakah pemahaman saya tentang apa yang dianggap sebagai "konfigurasi" kurang?

flow2k
sumber

Jawaban:

13

Manajemen konfigurasi istilah milik kosakata teknik umum.

Tujuannya adalah untuk mencatat karakteristik semua bagian / komponen sistem yang kompleks (misalnya mobil, rudal, perangkat elektronik), dan tentu saja perubahan karakteristik ini ketika komponen diganti dengan komponen yang sama. Konfigurasi menggambarkan dengan tepat produk tertentu.

Dengan kata lain, manajemen konfigurasi adalah manajemen versi untuk produk industri. Setiap saat memungkinkan untuk merakit versi produk sebelumnya.

Dalam perangkat lunak tidak ada katalog industri komponen yang dapat memungkinkan untuk mengidentifikasi secara unik bagian dari perangkat lunak dan versi berturut-turut dan menemukannya kembali di gudang untuk merakit (mengkonfigurasi) versi produk yang lebih lama. Bagian / komponen perangkat lunak paling baik dijelaskan oleh kodenya secara keseluruhan. Jadi manajemen konfigurasi untuk perangkat lunak berarti mengelola versi kode sumber. Inilah sebabnya mengapa istilah manajemen konfigurasi perangkat lunak digunakan untuk manajemen versi kode sumber.

Namun perlu dicatat bahwa SCM lebih besar dari hanya versi kode sumber. Ini juga dapat mencakup pengelolaan dependensi eksternal (mis. Perpustakaan pihak ketiga atau kerangka kerja dengan versi yang dikelola di tempat lain), sumber daya eksternal (mis. Binary pihak ketiga atau dll atau definisi API untuk berinteroperasi dengan sistem eksternal), serta aset digital (misalnya gambar atau video menjadi paket dengan produk akhir).

Christophe
sumber