Manajemen versi adalah proses melacak/mengidentifikasi versi
yang berbeda dari komponen software / item konfigurasi sistem di mana komponen
ini digunakan. Hal ini juga memastikan bahwa perubahan yang dibuat oleh berbagai
pengembang untuk versi ini tidak saling mengganggu. Untuk proses manajemen
versi terdapat proses pengelolaan codelines dan baseline.
Pada
dasarnya, codeline adalah urutan versi source code dengan versi yang berasal
dari versi sebelumnya. Codelines biasanya berlaku untuk komponen sistem
sehingga ada versi yang berbeda dari masing-masing komponen. Baseline dapat
ditentukan menggunakan bahasa konfigurasi, yang memungkinkan kita untuk
menentukan komponen apa yang termasuk dalam versi sistem tertentu. Hal ini
dimungkinkan untuk menentukan versi komponen tertentu. Baseline penting karena
Anda sering harus membuat ulang versi tertentu dari sistem yang lengkap.
Misalnya, lini produk dapat diturunkan sehingga ada versi sistem individual
untuk pelanggan yang berbeda. Anda mungkin harus membuat ulang versi yang dikirimkan
ke pelanggan tertentu jika terdapat laporan bug di sistem yang harus
diperbaiki.
Untuk
mendukung manajemen versi, Anda harus selalu menggunakan alat manajemen versi (sistem
kontrol sumber kode). Alat-alat ini mengidentifikasi, menyimpan, dan
mengontrol akses ke versi yang berbeda dari komponen. Ada banyak sistem manajemen
versi yang tersedia seperti CVS dan Subversion
Sistem
manajemen versi biasanya memberikan berbagai fitur:
1. Identifikasi versi dan rilis. Versi yang telah berhasil akan diidentifikasi
ketika mereka diserahkan ke sistem. Beberapa sistem CM juga memungkinkan
asosiasi atribut dengan versi (misalnya, ponsel, smallscreen), yang juga dapat
digunakan untuk identifikasi versi. Sebuah sistem identifikasi yang konsisten
penting karena menyederhanakan masalah mendefinisikan konfigurasi. Itu membuat
lebih mudah untuk menggunakan referensi singkatan
2. manajemen penyimpanan. Untuk mengurangi ruang penyimpanan versi dari komponen yang berbeda,
sistem manajemen versi biasanya menawarkan fasilitas manajemen penyimpanan. Fitur
manajemen penyimpanan di sistem kontrol versi mengurangi ruang disk yang
diperlukan untuk mempertahankan semua versi sistem. Ketika versi baru dibuat,
sistem hanya menyimpan delta (daftar perbedaan) antara versi baru dan versi
yang lebih tua yang digunakan untuk membuat versi baru.
3. Rekaman Perubahan. Semua perubahan yang dibuat ke kode dari sistem atau komponen dicatat
dan terdaftar. Dalam beberapa sistem, perubahan ini dapat digunakan untuk
memilih versi sistem tertentu. Ini melibatkan komponen penandaan dengan kata
kunci yang menjelaskan perubahan yang dilakukan.
4. Pembangunan Independent. pengembang yang berbeda dapat bekerja pada komponen yang sama pada
waktu yang sama. Sistem manajemen versi melacak komponen yang telah diperiksa
untuk mengedit dan memastikan bahwa perubahan yang dibuat untuk komponen oleh
pengembang yang berbeda tidak mengganggu. Kebanyakan pengembangan perangkat
lunak adalah kegiatan tim, sehingga situasi sering timbul di mana anggota tim
yang berbeda bekerja pada komponen yang sama pada waktu yang sama.
5. Dukungan Project. Sebuah sistem manajemen versi dapat mendukung pengembangan beberapa
proyek, yang berbagi komponen. Dalam sistem pendukung proyek, seperti CVS
(Vesperman, 2003), adalah dapat memungkinkan untuk check in dan check out pada semua
file yang terkait dengan proyek daripada harus bekerja dengan satu file atau
direktori pada suatu waktu.
Pembangunan sistem adalah proses menciptakan sistem executable
lengkap dengan menyusun dan menghubungkan komponen sistem, komponen eksternal,
file konfigurasi, dll. Pembangunan Sistem dan manajemen versi harus
berkomunikasi agar proses pembangunan dapat memeriksa versi komponen dari
repositori yang dikelola oleh sistem manajemen versi.
Ada banyak tool
dan pembangunan sistem tersedia yang dapat memberikan beberapa atau berbagai
fitur berikut:
1. Membangun generasi skrip. Jika perlu, membangun sistem harus menganalisis program yang sedang
dibangun, mengidentifikasi komponen terkait, dan secara otomatis menghasilkan
skrip (kadang-kadang disebut file konfigurasi). Sistem ini juga harus mendukung
terciptanya manual dan pengeditan membangun script.
2. Sistem integrasi manajemen versi. Pembanguan Sistem harus
memeriksa versi yang diperlukan komponen dari sistem manajemen versi.
3. Rekompilasi Minimal. Pembanguan Sistem harus bekerja dan apakah kode sumber perlu
dikompilasi ulang dan mengatur kompilasi jika diperlukan.
4. Pembuatan Sistem Executable membangun sistem harus menghubungkan file kode objek dikompilasi dengan
satu sama lain dan dengan file lainnya yang diperlukan, seperti perpustakaan
dan file konfigurasi, untuk menciptakan sebuah sistem executable.
5. Uji otomatisasi Beberapa Pembanguan sistem otomatis dapat menjalankan tes menggunakan
alat tes otomatisasi seperti JUnit otomatis. Ini memeriksa bahwa membangun
belum 'rusak' oleh perubahan.
6. Pelaporan
membangun sistem harus memberikan laporan tentang keberhasilan atau kegagalan
membangun dan tes yang telah dijalankan.
7. Generasi Dokumentasi membangun sistem mungkin dapat
menghasilkan catatan rilis tentang membangun dan sistem halaman bantuan.
Berikut video singkat tentang penjelasan manajemen versi yang saya buat :
Berikut video singkat tentang penjelasan manajemen versi yang saya buat :
EmoticonEmoticon