1.2.2. Model Proses Microsoft Solution Framework (MSF).

Model ini menggabungkan dua macam model proses terdahulu dengan menerapkan prinsip-prinsip terbaik dari masing-masing model yaitu pada model waterfall dimana titik transisi yang jelas pada setiap tahap pengembangan sistem, maka akan memudahkan tim pengembang perangkat lunak dalam memonitor penjadwalan proyek, menetapkan tanggung jawab dan akuntabilitas peran personal dalam proyek perangkat lunak, sedangkan pada model spiral berbasiskan pada kebutuhan keberlanjutan untuk menyaring kebutuhan-kebutuhan sistem dan estimasi proyek secara keseluruhan. Selain itu model ini menerapkan perancangan model proses yang lebih dinamis dengan terus beradaptasi terhadap kebutuhan proses bisnis dimasa yang akan datang sehingga aplikasi memiliki versi yang berbeda dengan fitur-fitur yang mengalami peningkatan dari waktu kewaktu.

Model proses Microsoft Solution Framework akan menguraikan urutan aktivitas untuk membangun dan menyebarkan solusi perusahaan (enterprise), fleksibel dan dapat mengakomodasi pengembangan dan desain yang luas, berbasiskan fase (tahapan) seperti pada model waterfall, dan diterapkan untuk pengembangan perangkat lunak dengan versioning.

Model proses MSF memiliki tahapan-tahapan yang berbeda dengan model proses waterfall dan spiral. MSF mengenal lima tahapan yang disebut dengan Envisioning Phase, Planning Phase, Developing Phase, Stabilizing Phase, dan Deploying Phase. Pada setiap phase merupakan tahapan-tahapan yang berbeda dan mencapai kulminasi pada sebuah milestone dan mengasilkan derivelable.

gb61

Gambar 6. Tahapan Pada Model Proses MSF. (Microsoft, 2003)

Model Proses MSF memiliki tahapan-tahapan berikut :

1. Envisioning Phase.

Tim pengembang menguraikan secara lengkap mengenai tujuan dan batasan proyek, mengidentifikasi anggota tim dan apa yang harus dipenuhi oleh tim proyek kepada pemakai. Tujuan pada fase ini adalah membangun visi bersama proyek perangkat lunak yang melibatkan semua stake holder.

Milestone (titik pencapaian) pada fase envisioning yaitu

1. Tim inti proyek perangkat lunak telah di diorganisasikan.

2. Ruang lingkup proyek telah didefinisikan.

Deliverables (hasil yang diberikan) pada fase envisioning yaitu :

1. Ruang lingkup proyek : meliputi uraian masalah bisnis dan sasaran bisnis, definisi lengkap kebutuhan pemakai, profile pemakai, konsep pendekatan dan strategi mendesain solusi.

2. Struktur proyek : meliputi peran masing-masing anggota tim proyek, daftar anggota tim, struktur proyek, dan standar proses bagi anggota tim.

3. Memperkirakan resiko proyek : meliputi persiapan, mengidentifikasi resiko-resiko utama, rencana mengurangi dan mengeliminasi resiko yang telah dikenali.

2. Planning Phase.

Tim proyek menetapkan aplikasi apa yang akan dikembangkan dan perencanaan pembuatan solusi perangkat lunak dengan menyiapkan spesifikasi fungsional, desain perangkat lunak, rencana kerja, perkiraan biaya, penjadwalan proyek dan melakukan analisa terhadap kebutuhan bisnis, kebutuhan pemakai, kebutuhan operasi dan kebutuhan sistem. Dimana semua aktivitas tersebut akan dirangkum dalam tahapan-tahapan berikut :

a) Desain Konseptual : dimana permasalahan bisnis dilihat dari perspektif pemakai dan kebutuhan bisnis. Mendefinisikan masalah dan solusi didalam terminologi usage scenario (suatu sekenario pemakaian yaitu bagaimana sebuah usecase / fungsionalitas sistem di jalankan).

b) Desain Logikal : dimana solusi dipandang dari perspektif tim proyek dan bagaimana tim proyek mendifinisikan solusi sebagai sekumpulan layanan.

c) Desain Fisikal : dimana solusi dipandang dari perspektif developers (para pengembang) dan bagaimana mendefinisikan teknologi, antarmuka komponen, dan layanan dari solusi.

Milestone pada fase planning :

a) Validasi teknologi lengkap, meliputi produk dan teknologi yang akan digunakan untuk membuat dan menyebarkan solusi, spesifikasi hardware dan software, topologi jaringan dan konfigurasi komputer server dan komputer client.

b) Spesifikasi fungsional lengkap, spesifikasi ini telah di sampaikan kepada pemakai dan stakehoder untuk di tinjau kembali.

c) Rencana induk lengkap, dimana rencana induk merupakan kombinasi dari perencanaan dan berbagai peran-peran dalam tim.

d) Penjadwalan induk proyek lengkap, meliputi penjadwalan proyek, tanggal release solusi, mengkombinasikan dan mengintegrasikan informasi-informasi dari setiap peran dalam tim.

e) Aturan pengembangan dan lingkungan pengujian, meliputi lingkungan kerja untuk pengembangan dan pengujian yang tepat, menghindari hal negatif yang berdapak pada sistem.

Deliverables pada fase planning yaitu :

a) Spesifikasi fungsional.

b) Rencana menajemen resiko.

c) Rencana induk dan jadwal induk proyek.

3. Developing Phase

Tim proyek akan mulai membuat solusi aplikasi dengan melakukan pengkodean dan dokumentasi program, sebagai aktivitas tambahan tim juga mengembangkan infrastruktur dari solusi.

Milestone pada fase developing yaitu :

a) Bukti dari konsep aplikasi telah lengkap : meliputi bukti elemen kunci mengujian solusi aplikasi pada lingkungan pengujian, dan tim memimpin operasi bagi tim sendiri dan pemakai untuk memvalidasi kebutuhan mereka.

b) Internal-build lengkap : oleh karena solusi aplikasi di dikembangkan dalam bagian-bagian maka diperlukan sinkronisasi bagian solusi pada level produk. Frekwensi internal-buikd tergantung pada ukuran dan kompleksitas proyek.

Deliverables pada fase developing yaitu :

a) File-file source code and executable files.

b) Skrip instalasi and seting konfigurasi untuk penyebaran.

c) Spesifikasi fungsional telah final.

d) Elemen-elemen pendukung unjuk kerja.

e) Spesifikasi pengujian dan pengujian kasus.

4. Stabilizing fase

Pada fase stabilizing tim melakukan integrasi dan pengujian beta (test beta) dari solusi, skenario penyebaran/distribusi solusi aplikasi, dan tim fokus bagaimana mengidentifikasi, memprioritaskan, memecahkan persoalan sehingga solusi disiapkan untuk pelepasan (release).

Milestone pada fase stabilizing yaitu :

a) Memusatkan perhatian pada bug (error program).

b) Release zero-bug, dimana bug-bug yang muncul telah tertangani.

c) Kandidat Release, mengkomparasi sejumlah bug yang tertangani dengan zero-bug release.

d) Golden Release, ukuran kriteria keberhasilan dan zero-defect.

Deliverables pada fase stabilizing yaitu :

a) Release Final.

b) Catatan-catatan Release.

c) Elemen-elemen pendukung unjuk kerja.

d) Hasil test dan perangkat pengujian.

e) Kode sumber dan file executable.

f) Dokumen proyek.

g) Peninjauan milestone.

5. Deployment Phase

Pada fase ini tim proyek mulai menyebarkan / mendistribusikan solusi teknologi, menstabilkan penyebaran,  pengoperasian dan dukungan solusi, dan memperoleh persetujuan dari pemakai. Setelah penyebaran solusi, tim melakukan peninjauan proyek dan melakukan survey kepuasan pemakai.

Milestone pada fase ini yaitu :

a) Komponen-komponen utama telah tersebar.

b) Lokasi penyebaran telah lengkap.

c) Penyebaran stabil.

d) Penyebaran keseluruhan telah lengkap.

Deliverables pada fase ini yaitu :

a) Sistem informasi pengoperasian aplikasi dan dukungan yang terdiri dari prosedur dan proses, basis pengetahuan, pelaporan, log-book.

b) Dokumentasi tempat penyimpanan semua versi kode dan dokumen yang telah dikembangkan selama proyek.

c) Rencana training penggunaan solusi.

d) Laporan penyelesaian proyek, mencakup : versi final semua dokumen proyek, data kepuasan pelanggan, definisi tentang langkah-langkah selanjutnya.