Apa yang dimaksud dengan Model Spiral dalam pengembangan perangkat lunak?

Model spiral

Model spiral adalah model proses software yang evolusioner yang merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari model sekuensial linier. Model pengembangan perangkat lunak dengan metode spiral memiliki dua model yaitu prototyping dan waterfall. Model ini dikenal dengan sebutan Spiral Boehm.

Tahap-tahap model ini dapat dijelaskan secara ringkas sebagai berikut :

  • Tahap Liason: pada tahap ini dibangun komunikasi yang baik dengan calon pengguna/pemakai.
  • Tahap Planning (perencanaan): pada tahap ini ditentukan sumber-sumber informasi, batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
  • Tahap Analisis Resiko: mendefinisikan resiko, menentukan apa saja yang menjadi resiko baik teknis maupun manajemen.
  • Tahap Rekayasa (engineering): pembuatan prototipe.
  • Tahap Konstruksi dan Pelepasan (release): pada tahap ini dilakukan pembangunan perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan tambahan untuk keberhasilan proyek.
  • Tahap Evaluasi: Pelanggan/pemakai/pengguna biasanya memberikan masukan berdasarkan hasil yang didapat dari tahap engineering dan instalasi.
Referensi

Pressman RS. 1997. Rekayasa Perangkat Lunak. Edisi ke-2. LN Harnaningrum, penerjemah: Yogyakarta: Andi. Terjemahan dari: Software Engineering, a Practitioner’s Approach, Edisi ke-4. McGraw-Hill Companies, Inc

Apa yang dimaksud dengan Model Spiral dalam pengembangan perangkat lunak ?

Model Spiral (spiral model) adalah salah satu bentuk dari Metode Pengembangan Perangkat Lunak atau yang disebut SDLC (Software Development Life Cycle), yang sangat populer digunakan dalam bidang teknologi informasi. Model Spiral adalah gabungan dari Model Prototyping dan Model Waterfall dengan penekanan yang tinggi pada analisis risiko tiap tahapannya. [1]

Bentuk ini bersifat iteratif atau berulang dengan mengontrol aspek yang teratur dari sekuensial linier. Fungsi Model Spiral ini adalah untuk melakukan perubahan, penambahan dan pengembangan suatu software dengan deretan pertambahan menjadi lebih baik secara cepat dan tepat berdasarkan keinginan dan kebutuhan penggunanya.

sumber : https://dreamztech.com/wp-content/uploads/2016/03/Spiral_model.jpg

Sejarah Spiral Model


Tahun 1986, model ini dikenalkan pertama kali oleh Barry Boehm pada makalahnya yang berjudul “A Spiral Model of Software Development and Enhancement”. [6] Makalah tersebut menjelaskan tentang sebuah diagram yang dihasilkan dari berbagai publikasi yang mendiskusikan tentang Model Spiral ini. Model ini merupakan model yang sudah lama, tetapi sangat berguna untuk melakukan pembangunan proyek-proyek besar.

Pada makalah awal yang dibuatnya, Barry Boehm menganggap bahwa Model Spiral adalah suatu model proses yang berhubungan dengan inkrementasi, Model Waterfall dan Model Prototyping.

Namun dalam publikasi selanjutnya, Boehm menjelaskan bahwa Model Spiral sebagai model proses generator yang mana pilihan berdasarkan risiko proyek untuk menghasilkan suatu model proses yang tepat untuk proyek tersebut. Dengan demikian, inkrementasi, Model Waterfall dan Model Prototyping adalah kasus khusus dengan pola risiko proyek tertentu dari Model Spiral.

Tahap-tahap Spiral Model


Dalam Model Spiral terdapat lima tahap untuk merealisasikan penggunaannya sebagai berikut :

1. Tahap Liason

Tahap ini berhubungan dengan komunikasi antara orang yang akan mengembangkan software (system analyst) dengan pelanggan. Tujuannya adalah agar dapat memuaskan pelanggan dengan memperbaiki dan mengembangkan software sesuai dengan kebutuhan, kepentingan dan keinginannya.

2. Tahap Planning

Tahap perencanaan meliputi estimasi biaya yang digunakan, batas waktu, pengaturan jadwal, identifikasi lingkungan kerja, sumber-sumber infomasi untuk melakukan iterasi. Hasilnya adalah dokumen spesifikasi kebutuhan sistem dan bisnis.

3. Tahap Analisis Risiko

Tahap ini berfungsi untuk mengidentifikasi risiko yang berpotensial untuk terjadi dan menghasilkan suatu solusi alternatif secara teknis dan manajemen saat strategi mitigasi risiko direncanakan dan diselesaikan.

4. Tahap Rekayasa (engineering)

Pada tahap ini, yang dilakukan adalah sebagai berikut :

  • Menguji, coding dan mengembangkan software
  • Menginstal software
  • Membuat prototipe
  • Mendesain dokumen
  • Meringkas suatu pengujian software
  • Membuat laporan atas kekurangan dari software agar segera diperbaiki

5. Tahap Evaluasi

Peran pelanggan sangat diperlukan pada tahap ini. Mereka dapat memberikan masukan dan tanggapan, mengevaluasi produk kerja dan memastikan bahwa produk yang dibutuhkan sesuai dengan semua ketentuan. Jika terdapat perubahan, semua tahapan akan diperbaiki sesuai dengan kepuasan pelanggan. Namun, mengidentifkasi dan memantau risiko yang terjadi juga diperlukan, seperti cost overrun. [2][5]

Penggunaan Spiral Model


Model Spiral tepat digunakan dalam hal sebagai berikut :

  • Ketika memiliki sebuah proyek dengan risiko sedang hingga tinggi
  • Komitmen proyek jangka panjang karena potensi perubahan pada prioritas ekonomi dalam perubahan waktu
  • Lini produk baru yang harus dirilis secara bertahap untuk mendapatkan feedback pelanggan dengan cukup
  • Ketika penciptaan prototipe berlaku
  • Perubahan signifikan yang diharapkan dalam produk selama siklus pengembangan
  • Persyaratan yang kompleks dan memerlukan suatu evaluasi [2][3][4][5]

Invarian Spiral Model


Menurut Boehm, terdapat enam karakteristik di dalam Model Spiral :

1. Menentukan Artefak secara Bersamaan

Dalam pemrograman, sebuah ‘artefak’ adalah setiap hal yang dihasilkan oleh orang-orang yang terlibat dalam proses pengembangan perangkat lunak. Model ini menunjukkan bahwa semua artefak dalam siklus hidup suatu proyek harus didefinisikan sepenuhnya dari awal.

2. Empat Esensial Tugas Model Spiral

Menurut Boehm, setiap siklus model spiral terdiri dari empat tugas berikut :

  • Mempertimbangkan tujuan kritis dan kendala stakeholders
  • Menguraikan dan mengevaluasi alternatif-alternatif untuk mencapai tujuan
  • Mengidentifikasi dan mengatasi risiko kepada solusi alternatif
  • Persetujuan dan review stakeholder untuk melanjutkan berdasarkan kepuasan dalam tujuan kritis dan kendala

3. Risiko ditentukan berdasarkan Usaha

Upaya dialokasikan untuk proyek harus ditentukan berdasarkan tingkat keparahan risiko yang terkait dengan komponen tersebut.

4. Risiko ditentukan berdasarkan Tingkat Detail

Mengatasi potensi risiko harus menentukan seberapa banyak perhatian terhadap rincian proyek yang sedang dikerjakan.

5. Menggunakan The Anchor Point Milestones

Pada Modal Spiral terdapat tiga “The Anchor Point Milestones” adalah :

  • Life Cycle Objectives (LCO)

Untuk melihat apakah pendekatan teknis suatu proyek cukup untuk dilanjutkan ke pengembangan berikutnya.

  • Life Cycle Architecture (LCA)
    Untuk memeriksa apakah pendekatan optimal yang telah ditetapkan dan segala risiko utama telah direncanakan dan diperhitungkan sebelumnya.

  • Initial Operational Capability (IOC)
    Untuk memeriksa bahwa persiapan yang ada telah memadai untuk memuaskan stakeholders sebelum diluncurkan

6. Fokus terhadap Sistem dan Siklus Hidup

Melihat pentingnya sistem secara keseluruhan dan urusan jangka panjang yang mencakup seluruh siklus hidup. [7]

Kelebihan dan Kekurangan Spiral Model


Kelebihan dalam menggunakan Model Spiral, yaitu :

  • Perubahan-perubahan yang terjadi dapat diselesaikan secara sistematis
  • Estimasi biaya menjadi mudah karena pembuatan prototipe telah selesai dalam fragmen yang kecil
  • Manajemen dan analisis risiko yang lebih baik
  • Pembangunan yang cepat dan mudah secara sistematis
  • Manajemen waktu yang lebih baik
  • Mudah dalam melakukan perubahan kebutuhan dan dokumentasi jika perubahan terjadi di tengah-tengah perubahan
  • Produksi software terjadi lebih cepat [4][5]

Kekurangan dalam menggunakan Model Spiral, yaitu :

  • Tidak cocok ketika digunakan dalam proyek-proyek kecil
  • Tidak terlalu berguna dalam proyek-proyek kecil
  • Sulit dalam mengikuti strategi proyek kecil
  • Kurang efisien dalam penerapan model spiral karena waktu yang digunakan
  • Membutuhkan sumber pengalaman sebagai proses sehingga sangat kompleks
  • Dalam melakukan proyek kecil, estimasi biaya akan sangat tinggi
  • Risiko dalam tahap planning, jika terjadi perbedaan dalam jadwal pengembangan atau dalam anggaran belanja [4][5]

Referensi

[1] Software Development Life Cycle(SDLC) Spiral Model | Simplicity Through Breadth

[2] Spiral Model: When to Use? Advantages and Disadvantages

[3] SDLC - Spiral Model

[4] What is Spiral Model in software testing and what are advantages and disadvantages of Spiral Model

[5] Account Suspended

[6] Error Page - BCSSE

[7] Spiral Model: Software Development For Critical Projects