Software Configuration Management


Software Configuration Management

Misalnya, dalam setiap proyek perangkat lunak, terdapat pihak pengembang (developer) yang bekerja dengan cara membuat kode (coding) agar perangkat lunak yang dikembangkan sesuai dengan apa yang disepakati para stakeholder. Jumlah para pengembang yang bekerja dalam suatu proyek, dapat terdiri dari beberapa orang bahkan beberapa grup pengembang,  dengan tools yang berbeda-beda sesuai dengan bidang keahlian dan tugasnya masing-masing. Dalam melaksanakan tugasnya, para pengembang bekerja secara bersamaan duduk didepan komputer mereka, mengerjakan satu perangkat lunak dengan satu "working place" atau "source code" yang sama. Setiap perubahan yang dilakukan oleh satu pengembang tidak dapat secara langsung merubah "source code" yang dikerjakan oleh pengembang lainnya, padahal mereka bekerja untuk perangkat lunak yang sama. Kecuali proyek yang dikerjakan berupa skala kecil dan hanya membutuhkan beberapa orang pengembang dan bersedia untuk "copy paste" dengan rekan setiap perubahan baru terjadi. Namun jika pihak pengembang terdiri dari banyak orang dan tersebar di beberapa kota bahkan negara, maka akan banyak perubahan yang terjadi selama proses pengembangan proyek dan hal tersebut tidak dapat dihindari dan akan meningkatkan tingkat kebingungan di antara para software engineer yang berkerja pada proyek tersebut.

Kebingungan dalam sebuah proyek akan muncul apabila setiap perubahan-perubahan yang terjadi tidak dianalisis sebelum perubahan tersebut dilaksanakan; dicatat sebelum diimplementasi, dilaporkan kepada yang ingin mengetahui, atau dikontrol dengan suatu cara yang akan meningkatkan kualitas & mengurangi error. Maka disinilah letak peran dan kegunaan dari Software Configuration Management (SCM) yang mengelola konfigurasi dari file "work place" sehingga dapat dikerjakan oleh setiap pengembang dengan berbagai software dan versi software yang berbeda-beda.

SCM merupakan serangkaian kegiatan tracking & control yang dimulai ketika suatu proyek perangkat lunak dimulai dan berakhir ketika perangkat lunak sudah tidak beroperasi lagi.

Karena perubahan dapat terjadi kapan saja, maka kegiatan SCM dibuat untuk;

  • mengidentifikasi perubahan,
  • mengontrol perubahan,
  • mengimplementasikan perubahan dengan benar, dan
  • melaporkan perubahan kepada pihak-pihak yang mempunyai kepentingan.

SCM adalah sekumpulan kegiatan yang telah dikembangkan untuk menangani perubahan-perubahan selama siklus hidup dari perangkat lunak komputer. SCM adalah sebuah elemen penting dari SQA (Software Quality Assurance). Tanggung jawab utamanya adalah mengontrol perubahan. SCM juga bertanggung jawab untuk :
  • mengidentifikasi individual Software Configuration Items (SCI) & berbagai versi perangkat lunak,
  • meng-audit software configuration untuk memastikan bahwa dia telah dikembangkan dengan benar, dan
  • melaporkan semua perubahan yang telah dilakukan pada konfigurasi tersebut.
Ranah tugas (task) dari SCM mencakup dari 5 hal, yaitu identifikasi, kontrol versi, kontrol perubahan, auditing konfigurasi, dan pelaporan.

Tidak ada komentar:

Posting Komentar

Manajemen Resiko Proyek

 MANAJEMEN RESIKO PROYEK         Manajemen resiko pada proyek meliputi langkah memahami dan mengidentifikasi masalah potensial yang mungkin ...