Analisis Sistem dan System Development Life Cycle (SDLC)




Siklus hidup pengembangan sistem adalah adalah tahapan aktivitas yang harus dikerjakan oleh pengembang sistem untuk menghasilkan sebuah sistem yang dapat dioperasikan pada organisasi pemakai sistem. 

Siklus Hidup Pengembangan Sistem juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: 
1. Analisis sistem, yaitu membuat analisis aliran kerja manajemen yang sedang berjalan
2. Spesifikasi kebutuhan sistem, yaitu melakukan perincian mengenai apa saja yang dibutuhkan dalam pengembangan sistem dan membuat perencanaan yang berkaitan dengan proyek sistem
3. Perancangan sistem, yaitu membuat desain aliran kerja manajemen dan desain pemrograman yang diperlukan untuk pengembangan sistem informasi
4. Pengembangan sistem, yaitu tahap pengembangan sistem informasi dengan menulis program yang diperlukan
5. Pengujian sistem, yaitu melakukan pengujian terhadap sistem yang telah dibuat
6. Implementasi dan pemeliharaan sistem, yaitu menerapkan dan memelihara sistem yang telah dibuat.

Sebuah siklus hidup pengembangan sistem bertujuan untuk menghasilkan keluaran sistem berkualitas tinggi yang memenuhi atau melebihi harapan pelanggan berdasarkan kebutuhan pelanggan, dengan memberikan sistem yang bergerak melalui setiap tahap yang jelas, dalam jangka waktu yang dijadwalkan dan menggunakan perkiraan biaya bila ada. Sedangkan maksud dari proses Siklus hidup pengembangan sistem adalah untuk membantu menghasilkan produk yang hemat biaya, efektif dan berkualitas tinggi.  Ada banyak sekali metode yang digunakan dalam melakukan SDLC, salah satu yang paling terkenal adalah metode waterfall. 

analisis/ana·li·sis/ n 1 penyelidikan terhXadap suatu peristiwa (karangan, perbuatan, dan sebagainya) untuk mengetahui keadaan yang sebenarnya (sebab-musabab, duduk perkaranya, dan sebagainya); 2 Man penguraian suatu pokok atas berbagai bagiannya dan penelaahan bagian itu sendiri serta hubungan antarbagian untuk memperoleh pengertian yang tepat dan pemahaman arti keseluruhan; 3 Kim penyelidikan kimia dengan menguraikan sesuatu untuk mengetahui zat bagiannya dan sebagainya; 4 penjabaran sesudah dikaji sebaik-baiknya; 5 pemecahan persoalan yang dimulai dengan dugaan akan kebenarannya. (KBBI) 

Dalam SDLC analisis berrtujuan untuk memahami suatu sistem yang akan dibuat kemudian memodifikasinya untuk  menjadi lebih baik. Analisis sistem sendiri dilakukan oleh sorang yang menjabat sebagai System Analyst, yang memiliki tugas natara lain: mempelajari atau mengidentifikasi masalah dalam suatu oranisasi atau perusahaan serta mempelajari kebutuhannya. Ada beberapa skill yang harus dimiliki oleh seorang System Analyst misalnya keahlian analisa, teknis, managerial, dan juga interpersonal skill.

Setelah membahas mengenai SDLC dan jug analisis sistem di dalamnya, maka kita sekarang akan membahas salah satu model dari SDLC. Pada postingan kali ini kita akan membahas mengenai metode spiral. Apa sih yang dimaksud dengan metode spiral dan bagaimana sih cara menggunakannya? mari kita ulas sama- sama.

Metode Spiral


Metode spiral adalah salah satu bentuk evolusi dari SDLC yang menggunakan metode iterasi natural yang dimiliki oleh metode prototyping dan kemudian digabungkan dengan aspek sistematis yang dikembangkan dengan model waterfall. Metode ini sendiri baru ditemukan ada tahun 1988 ketika Barry Boehm menulis sebuah artikel yang berjudul "A Spiral Model of Software Develpment and Enchanment". Barry Boehm menjelaskan bahawa model spiral merupakan model yang sangat berguna untuk melakukan pembangunan proyek-proyek besar dan prosesnya dilakukan dengan memperhatikan resiko proyek sehingga pada akhirnya akan menghasilkan model proses yang tepat sesuai kebutuhan pengguna.

Model spiral merupakan penggabungan dari model prototyping dan model waterfall. Model prototyping yang fokus pada penyajian atau presentasi kepada user dengan format input dan output kemudian perangkat lunak akan dievaluasi. Model waterfall yang fokus kepada proses pengembangan perangkat lunak yang sistematis atau berurutan. Model spiral menekankan pada Analisa resiko setiap tahapannya. Fungsi model spiral adalah untuk melakukan perubahan, penambahan dan pengembangan perangkat lunak dengan memaksimalkan aspek kecepatan dan ketepatan berdasarkan keinginan dan kebutuhan penggunanya.
Metode ini merupakan salah satu metode paling penting dalam SDLC karena metode ini menyediakan support untuk manajemen resiko. Pada representasi diagram biasanya metode spiral terlihat seperti sebuah spiral dengan banyak loop. Jumlah loop yang ada dalam spiral tidak diketahui dengan jelas dan dapat bevariasi dari project satu ke project lainnya. Setiap loop dalam spiral dinamakan fase (phase) dari proses pengembangan perangkat lunak. Jumlah pasti dari fase yang dibutuhkan untuk mengembangkan suatu produk dapat divariasikan oleh project manager tergantung dari resiko dari project itu sendiri. 
Model ini biasanya digunakan dalam pembuatan software dengan skala yang besar dan kompleks karena model inimerupakan proses hasil dari kombinasi antara desain dan prototyping, serta top-down dan bottom-up yang juga diaplikasikan pada model waterfall dan prototype. Top-down desain menetapkan sistem global terlebih dahulu baru diteruskan dengn detail sistemnya, sedangkan bottom-up desain biasanya diaplikasikan pada model waterfall dengan sequential-nya sedangkan bottom-up desain biasanya diaplikasikan pada model prototyping dengan feedback yang diperoleh.
Satu lingkaran dari bentuk spiral pada spiral model dibagi menjadi beberapa daerah yang disebut dengan region. Region tersebut dibagi sesuai dengan jumlah aktivitas yang dilakukan dalam spiral model. Tentunya lingkup tugas untuk project yang kecil dan besar berbeda. Untuk project yang besar, setiap region berisi sejumlah tugas-tugas yang tentunya lebih banyak dan kompleks daripada untuk project yang kecil. SE berjalan dari inti spiral berjalan mengitari sirkuit per sirkuit. Sebagai contoh untuk sirkuit pertama dilakukan untuk pembangunan dari spesifikasi dari software dengan mencari kebutuhan dari customer. Untuk sirkuit pertama harus menjalani semua aktivitas yang didefinisikan. Setelah 1 sirkuit terlewati lanjut ke tugas selanjutnya misalnya membangun prototype. Tugas ini juga harus mengitari 1 sirkuit dan begitu terus selanjutnya sampai project selesai.

Tahap dalam Spiral Model:


Spiral model dibagi menjadi beberapa framework aktivitas, yang disebut dengan task regions. Kebanyakan aktivitas-aktivitas tersebut dibagi antara tiga sampai enam aktivitas. Berikut adalah aktivitas-aktivitas yang dilakukan dalam spiral model :

  1. Tahap Liason (Komunikasi Pelanggan), Tahap ini berhubungan dengan komunikasi antara pihak-pihak yang terlibat dalam pengembangan softaware (seperti: system analyst) dengan pelanggan (user). Tujuannya adalah memperbaiki dan mengembangan software sesuai kebutuhan dan keinginan hingga memuaskan pelanggan.
  2. Tahap Perencanaan, Tahap perencanaan meliputi estimasi biaya yang digunakan, batas waktu, pengaturan jadwal, identifikasi lingkungan kerja, sumber-sumber informasi untuk melakukan iterasi (Teknik perulangan). Hasil dari tahapan ini adalah dokumen spesifikasi kebutuhan sistem dan bisnis.
  3. Tahap Analisis Resiko, Tahap analisis resiko berfungsi untuk mengidentifikasi resiko yang berpotensi akan terjadi dan menghasilkan solusi alternatif secara teknis dan manajemen saat strategi mitigasi (upaya untuk mengurangi resiko bencana) direncanakan dan diselesaikan.
  4. Tahap Rekayasa, Pada tahap rekayasa, beberapa kegiatan ini yang akan dilakukan, yaitu: menguji coding dan mengembangkan software, menginstal software, membuat prototype,mendesain dokumen, meringkas suatu pengujian software, membuat laporan atas kekurangan dari software agar segera diperbaiki.
  5. Tahap Konstruksi dan Pelepasan, pada tahap ini dilakukan pembangunan perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan tambahan untuk keberhasilan proyek.
  6. Tahap Evaluasi, Pada tahap evaluasi, system analyst membutuhkan masukan dan tanggapan dari para user dalam mengevaluasi perangkat/produk yang diuji dan memastikan bahwa produk dibutuhkan sesuai ketentuan yang telah dibicarakan diawal dengan user. System analyst memastikan pelanggan puas dengan produk yang akan dihasilkan untuk menjawab persoalan bisnis mereka. Selain itu, system analyst harus tetap memantau resiko yang akan terjadi seperti faktor-faktor yang dapat menyebabkan cost overrun (pembengkakan biaya). Proyek direview dan seuah keputusan dibuat apakah akan melanjutkan dengan loop selanjutnya dalam spiral atau tidak. Jika iya, maka rencana dibuat untuk fase selanjutnya dalam proyek.

Kelebihan dalam menggunakan model spiral :
  1. Pembangunan dan perubahan perangkat lunak yang terjadi dapat diselesaikan secara sistematis
  2. Mudah dalam mengestimasi biaya karena proses pembuatan prototype yang jelas dan terencana dalam tahapan yang sistematis
  3. Manajemen dan analisa risiko yang lebih cepat dan mudah
  4. Mudah dalam melakukan perubahan kebutuhan dan dokumentasi
  5. Produksi software bisa terjadi lebih cepat
Kekurangan dalam menggunakan model spiral :
  1. Tidak cocok dan sulit diimplementasikan dalam projek kecil
  2. Memakan waktu yang cukup lama
  3. Membutuhkan best practice atau pengalaman sebelumnya karena proses yang sangat kompleks
  4. Resiko dalam tahap planning cukup besar. Misalnya terjadi perbedaan dalam jadwal pengembangan dan anggaran belanja.

Referensi: