Penjelasan Metode Waterfall, V-model, Simple Interaction Design Model, dan Star Life Cycle Model
• WATERFALL
Pengertian metode waterfall
Pada intinya, metode waterfall adalah konsep pengembangan yang menekankan pada langkah sistematis. Sehingga, proses penciptaan sebuah sistem harus dilakukan secara berurutan, mulai dari tahapan identifikasi kebutuhan sampai ke proses perawatan.
Langkah itulah yang kemudian dianalogikan seperti sebuah air terjun dan mengalir dari atas ke bawah. Setiap proses dilakukan selangkah demi selangkah, tidak boleh berloncatan, dan dilakukan secara bersamaan. Namun, beberapa orang menganggap bahwa proses ini kurang fleksibel, Sob karena hanya bisa dilakukan secara satu arah saja.
Tahapan metode waterfall
Metode waterfall pertama kali dikenalkan oleh Herbert D. Benington pada tanggal 29 Juni 1956 di sebuah Symposium on Advanced Programming Method for Digital Computers. Melalui presentasi ini, Benington menjelaskan setiap tahapan metode waterfall. Berikut penjelasannya:
1. Requirement Analysis
Tahapan metode waterfall yang pertama adalah analisis kebutuhan. Pengembang harus melakukan riset untuk mengidentifikasi apa saja kebutuhan pengguna dari sistem yang dibangun. Hal ini dapat menjadi acuan dalam menentukan layanan atau fitur yang perlu dikembangkan.
Ada beberapa cara untuk dilakukan dalam memperoleh informasi tersebut, beberapa di antaranya, yaitu melalui wawancara, survey, atau mengikuti diskusi forum terkait untuk mendapatkan wawasan dan informasi terkait.
2. Design
Kedua, tahapan metode waterfall adalah proses perancangan dan pengembangan berdasarkan informasi kebutuhan pengguna. Perancangan tentu dilakukan untuk lebih mempermudah proses pengerjaan dan mendapatkan gambaran detail terkait tampilan sebuah sistem.
Selain itu, tahapan desain pada metode ini juga berfungsi untuk mengidentifikasi kebutuhan hardware dan sistem yang diperlukan untuk keseluruhan proses pengembangan.
3. Implementation and Unit Testing
Tahapan ketiga metode waterfall adalah implementasi yang mengarah pada proses coding. Proses pengembangan sistem akan melalui tahapan dalam bentuk modul-modul kecil yang pada tahapan metode waterfall selanjutnya akan digabungkan.
Selain itu, pemeriksaan setiap modul yang telah dibuat juga dicek pada fase ini. Tujuannya adalah memastikan bahwa modul tersebut memenuhi fungsi yang telah ditetapkan dan sesuai standar.
4. Integration and System Testing
Tahapan keempat mengacu pada proses pengintegrasian setiap modul yang telah dibuat. Setelah proses ini selesai, pengembang akan melakukan testing untuk mengecek jalannya fungsi sistem secara keseluruhan. Selain itu, pengembang juga dapat mengidentifikasi jika ada kegagalan atau error pada sistem.
5. Operation & Maintenance
Setelah serangkaian langkah sistematis di atas, perawatan sistem yang telah dibuat merupakan tahapan terakhir dari metode inil. Sistem tersebut telah didistribusikan dan digunakan oleh pengguna. Hal yang tetap harus dilakukan adalah pemeliharaan dan memastikan bahwa sistem tetap berjalan baik sesuai fungsinya.
Proses ini biasanya meliputi perbaikan implementasi unit sistem, perbaikan error yang masih tersisa atau baru terdeteksi, dan peningkatan performa sistem yang disesuaikan pada kebutuhan pengguna.
Kelebihan metode waterfall
Metode ini memiliki sejumlah kelebihan yang bisa didapatkan dalam proses implementasinya. Berikut penjelasan kelebihan metode waterfall adalah:
• Alur kerja jelas
Dari tahapan metode waterfall di atas, tentu sudah dapat diidentifikasi bahwa metode ini memiliki alur kerja yang jelas. Setiap proses dilakukan secara bertahap dan sistematis sehingga alur kerja pun menjadi lebih terukur dan jelas. Setiap tim dapat mengalokasikan tugas dan tanggung jawabnya masing-masing sesuai bidang keahliannya.
• Lebih menghemat biaya
Kelebihan metode waterfall yang kedua adalah prosesnya yang tidak membutuhkan banyak sumber daya sehingga lebih hemat biaya. Hal ini terjadi karena pihak client tidak dapat turut serta dalam urusan pengembangan sebuah sistem aplikasi. Dengan demikian, biaya yang dikeluarkan menjadi lebih sedikit.
• Dokumentasi yang baik
Sistematis dan bertahap sehingga setiap informasi dan hasil akan tercatat dengan baik serta terdistribusi kepada seluruh anggota tim dengan akurat dan cepat. Hal ini juga bermanfaat untuk memastikan dan mengecek kembali tugas dari setiap tim karena bisa menyesuaikan arahan dari dokumentasi yang ada.
• Cocok untuk pengembangan software berskala besar
Metode waterfall populer untuk digunakan dalam pengembangan software berskala besar. Prosedur yang kompleks dan sumber daya yang besar akan lebih mudah terkoordinasi melalui metode ini. Namun, hal ini juga tidak menutup kemungkinan bagi pengembangan skala menengah atau kecil untuk menerapkan metode ini.
Kelemahan metode waterfall
Selain kelebihan metode waterfall, terdapat beberapa hal yang menjadi kelemahan metode ini. Berikut penjelasannya:
• Kurang fleksibel
Tahapannya yang sistematis membuat metode ini kurang fleksibel terhadap perubahan yang mungkin saja diperlukan di tengah pengembangan. Setiap anggota pengembang harus mengikuti petunjuk dan standar yang telah ditentukan di tahapan awal.
Selain itu, pihak client juga kurang bisa memberikan saran atau masukan kepada tim pengembang selama proses pembuatan. Proses menyampaikan pendapat ini hanya bisa dilakukan di tahapan awal saja, yaitu pada fase requirement atau analisis kebutuhan.
• Estimasi waktu pengerjaan lebih lama
Prosesnya yang dilakukan secara bertahap dan tidak memungkinkan adanya pengerjaan secara bersamaan juga membuat metode waterfall membutuhkan waktu lebih lama. Oleh karena itu, metode ini telah dianggap terlalu tua oleh beberapa orang.
Setiap proses harus dilakukan secara satu per satu sehingga tidak boleh ada dua aktivitas berbeda dalam satu waktu. Misalnya, seorang pengembang tidak boleh memulai proses coding jika tim perancangan belum menyelesaikan tugas mereka.
• Sulit untuk melihat gambaran sistem yang jelas
Pada penerapan metode ini, orang lain diluar tim pengembang tidak dapat melihat keseluruhan konsep dan fungsi sebuah sistem. Mereka hanya bisa melihat setelah seluruh tahapan selesai dilakukan, namun tidak pada saat masih proses pengembangan.
•V-MODEL
V-Model adalah sebuah model SDLC yang eksekusi per fasenya dilakukan secara sekuensial dalam bentuk V. V-Model adalah sebuah perpanjangan dari model waterfall dan didesain berdasarkan hubungan antar tahap pengujian antar fase. Ini berarti bahwa untuk setiap fase dalam satu siklus, ada tahap pengujian yang terkait langsung. Seperti halnya model waterfall, model ini merupakan model yang menerapkan tingkat kedisiplinan yang sangat tinggi di mana fase selanjutnya tidak dapat dimulai sebelum fase sebelumnya selesai.
Di dalam V-Model, tahapan pengujian di dalam satu siklus dilakukan secara paralel. Jadi di dalam V-Model terdapat fase Verifikasi di satu sisi dan fase Validasi di sisi lainnya. Fase Koding (Implementation) menggabungkan kedua sisi dari V-Model ini.
Berikut adalah desain dari V-Model :
- V-Model (Wikimedia Commons)
Lalu bagaimana penjelasan untuk masing – masing fasenya? Mari kita simak penjelasan di bawah ini.
- V-Model > Proses Verification
Fase – fase yang masuk dalam proses ini adalah sebagai berikut :
1. Requirement Analysis
Seperti halnya pada Model Firewall, ini adalah fase pertama dalam siklus di mana semua informasi kebutuhan pengembangan informasi digali dari customer. Di dalam fase ini melibatkan proses komunikasi yang intensif dengan customer untuk memahami kebutuhan sistem dengan tepat. Ini adalah fase yang sangat penting dan perlu dikelola dengan baik, karena sebagian besar customer tidak yakin tentang apa yang sebenarnya mereka butuhkan. Perencanaan Acceptance Test Design dilakukan pada tahap ini karena requirement dapat digunakan sebagai input untuk pengujian accepatence.
2. System Design
Setelah Anda memiliki requirement produk yang jelas dan terperinci, sekarang saatnya untuk merancang sistem dengan lengkap. Desain sistem yang lengkap akan memiliki perincian perangkat keras dan pengaturan komunikasi yang lengkap untuk sistem yang sedang dikembangkan. Rencana system test dikembangkan berdasarkan desain sistem.
3. Architectural Design
Spesifikasi arsitektur dipahami dan dirancang dalam fase ini. Biasanya, lebih dari satu pendekatan teknis diusulkan dan keputusan akhir diambil berdasarkan kelayakan teknis dan finansial. Desain sistem dipecah menjadi lebih kecil untuk menjadi modul yang memiliki fungsi yang berbeda – beda.
Transfer data dan komunikasi antara modul secara internal dan secara eksternal (dengan sistem lain) dipahami dengan jelas dan didefinisikan dalam fase ini. Berdasarkan informasi tersebut, integration test dapat dirancang dan didokumentasikan selama tahap ini
4. Module Design
Dalam fase ini, desain internal terperinci untuk semua modul sistem dispesifikasikan. Penting bahwa desain harus kompatibel dengan modul lain dalam arsitektur sistem dan sistem eksternal lainnya. Unit Test merupakan bagian penting dari setiap proses pengembangan dan membantu menghilangkan kesalahan dan kesalahan pada tahap yang sangat awal. Unit test ini dapat dirancang pada fase ini berdasarkan pada desain modul internal.
V-Model > Proses Coding
Proses coding untuk membuat modul sistem yang telah dirancang pada tahap desain dilakukan pada fase coding. Bahasa pemrograman yang paling cocok diputuskan berdasarkan kebutuhan sistem dan arsitektur.
Proses coding dilakukan berdasarkan pedoman dan standar coding. Baris kode yang ditulis melewati banyak code review dan dioptimalkan untuk kinerja terbaik sebelum final build.
V-Model > Proses Validation
Pada proses validation terdapat beberapa fase yang antara lain sebagai berikut.
1. Unit Testing
Unit Test yang dirancang dalam fase module design dijalankan pada kode yang sudah ditulis selama fase validasi ini. Unit testing adalah pengujian pada tingkat kode dan membantu menghilangkan bug pada tahap awal, meskipun semua bug tidak dapat diungkap oleh unit testing.
2. Integration Testing
Integration Testing dikaitkan dengan fase architectural design. Integration Testing dilakukan untuk menguji koeksistensi dan komunikasi modul secara internal dalam sistem.
3. System Testing
System testing secara langsung terkait dengan fase system design. System testing memeriksa seluruh fungsionalitas sistem dan komunikasi sistem yang sedang dikembangkan dengan sistem eksternal. Sebagian besar masalah kompatibilitas perangkat lunak dan perangkat keras dapat diungkap selama pelaksanaan system testing ini.
4. Acceptance Testing
Acceptance testing dikaitkan dengan fase requirement analysis dan melibatkan pengujian produk di lingkungan pengguna. Acceptance testing mengungkap masalah kompatibilitas dengan sistem lain yang tersedia di lingkungan pengguna. Selain mengungkap masalah kompatibilitas dengan sistem lain, pada fase ini juga mampu mengungkap masalah non-fungsional seperti load dan performance kinerja sistem di lingkungan pengguna yang sebenarnya.
Aplikasi V-Model
V-Model sebenarnya hampir sama dengan Model Waterfall. Hal ini dikarenakan kedua model merupakan model yang sekuensial dimana satu fase harus selesai terlebih dahulu sebelum dapat melanjutkan ke fase berikutnya. Requirement harus benar benar clear sebelum proyek dimulai, karena apabila terdapat perubahan requirement di tengah proyek itu akan menghabiskan banyak sekali biaya. Model ini biasanya digunakan di ranah pengembangan sistem medis, karena model ini menerapkan tingkat kedisiplinan yang sangat tinggi.
Beberapa poin di bawah ini adalah skenario yang paling cocok untuk menggunakan V-Model
1. Requirement sangat jelas dan terdokumentasikan dengan sangat baik
2. Definisi produk tidak berubah – ubah
3. Teknologi yang digunakan tidak dinamis dan mudah dimengerti oleh tim proyek
4. Tidak ada requirement yang menimbulkan makna ganda.
5. Tidak ada requirement yang belum terdefinisikan
6. Waktu proyek pendek
Kelebihan & Kekurangan V-Model
Kesederhanan dari model ini membuatnya lebih mudah untuk di-manage. Seperti halnya pada Model Waterfall, kelemahan paling nyata dari model ini adalah tidak fleksibel terhadap perubahan requirement yang saat ini sangat umum terjadi.
Kelebihan dari V-Model antara lain sebagai berikut.
1. Model yang menerapkan disiplin tingkat tinggi dan fase – fase dalam model diselesaikan satu persatu
2. Dapat bekerja dengan sangat baik untuk proyek kecil dimana requirement sangat mudah dipahami
3. Sederhana dan mudah untuk dipahami serta digunakan
4. Mudah untuk me-manage karena sifat kekakuan dari model dan setiap fase dalam siklus memiliki tujuan yang spesifik.
Sementara itu, kelemahan dari V-Model antara lain sebagai berikut.
1. Memiliki risiko dan ketidakpastian yang tinggi apabila diaplikasikan untuk proyek proyek besar
2. Model yang tidak bagus untuk proyek yang kompleks dan berorientasi obyek
3. Model yang buruk untuk proyek yang panjang dan berkelanjutan
4. Tidak cocok untuk proyek yang di mana requirement-nya mudah sekali berubah
5. Sekali sistem di dalam proses testing, sangat sulit sekali untuk mundur ke fase sebelumnya
6. Tidak ada sistem yang dapat digunakan sampai satu siklus selesai
• Simple interaction design model
Simple Interaction Design Model Lifecycle Software adalah model yang menggabungkan tiga prinsip pengguna berpusat desain dan empat kegiatan desain interaksi.
Prinsip-prinsip ini dikembangkan oleh John D. Gould dan Clayton Lewis. prinsipnya adalah sebagai berikut:
Fokus pada pengguna dan tugas
Pengukuran empiris
Desain Interatif
Penjelasan Tahapan dari model Simple Interaction:
Mengidentifikasi kebutuhan dan persyaratan mendirikan untuk pengalaman pengguna
Mengembangkan alternatif desain yang memenuhi persyaratan
Membangun versi interaktif dari desain
Mengevaluasi apa yang sedang dibangun di seluruh proses dan pengalaman pengguna yang menawarkan
Interaction design Merancang/mendesain produk-produk interaktif untuk mendukung cara orang berkomunikasi dan berinteraksi dalam kehidupan pekerjaan dan kehidupan sehari-hari mereka untuk mendesain interaksi melibatkan 5 dimensi yaitu kata-kata (1D), representasi visual (2D), objek/ruang fisik (3D), waktu (4D) dan perilaku (5D).
Tahapan Metode Simple Interaction Design Model
Berikut penjelasan masing-masing tahap metode simple interaction design model :
1. Identify needs/Establish requirement
Pada tahap ini, kita menerima masukkan dari satu titik, lalu di identifikasi apa saja kebutuhannya dan apakah sesuai dengan kebutuhannya. Sebelum menetapkan Establish requirement ada beberapa hal yang harus dipahami yaitu siapa penggunanya, dan apa tujuan yang mereka inginkan ketika menggunakan software yang akan rancang/dikembangkan ini.
2. Design / (Re) Design
Pada tahap ini dilakukan desain dan alternatif desain software dari kebutuhan yang diperlukan dan sesuai dengan persyaratan yang ditetapkan (dapat dengan meilhat desain orang lain sebagai referensi yang berguna). sedangkan Redesign adalah melakukan desain ulang dikarenakan hasil sebelumnya tidak sesuai dengan kebutuhan atau tidak sesuai dengan hasil evaluasi akhir.
3. Build interactive versions
Tahapan ini membuat sebuah prototype desain interaktif yang mana dapat memiliki fungsi terbatas. Sehingga penggembang dapat berkomunikasi dengan pengguna dengan mengujicobakannya. Jika terdapat design yang memiliki kesalahan/kekurangan/belum ada maka proses akan kembali ketahapan Redesign.
4. Evaluate
Tahapan ini, tahapan dimana pengguna mengevaluasi terhadap software yang telah di buat. Jika terdapat kekeliruan dari segi design maka tahapan akan kembali kepada tahap Redesign. Jika kesalahan terjadi karena kesalahan identifikasi kebutuhan maka akan kembali ketahapan Identify needs/Establish requirements. Jika telah sesuai kebutuhan pengguna maka ini akan menjadi final project.
Jika dilihat dari tahapan diatas, maka dapat disimpulkan bahwa model Simple interaction design memiliki 3 (tiga) prinsip yaitu :
1. Melibatkan pengguna pada proses design dan evaluation.
2. Tentukan kriteria dari quantifiable & measurable usability.
3. Akan terjadinya iterasi yang tidak dapat di hindari.
Star Life Cycle Model
A. Pengertian
Star life cycle model merupakan proses pengembangan software dengan memperhatikan tahapan-tahapan berbentuk bintang melalui proses analisa, evaluasi, rancangan jalan, validasi dan benchmark yang dimana dilakukan proses pengujian secara terus meneru
B. Tahapan
Model Siklus Hidup Star (Hartson & HIx,1998)
– Analisa
Identifikasi kemampuan user, strategi yang digunakan untuk meningkatkan ketrampilannya, alat yang saat ini dipakai, masalah-masalah yang dialami, perubahan yang diinginkan baik dalam ketrampilan maupun peralatan.
Metode : tanya kemampuan user dan buat daftar dengan skala prioritas, observasi ketrampilan di lapangan.
– Evaluasi kompetisi
Tentukan kekuatan dan kelemahan rancangan
Metode : pengguna diminta untuk mencoba menggunakan berbagi produk dan minta untuk menyebutkan kelebihan dan kelemahan dari masing-masing produk.
– Rancang sambil jalan
Gunakan hasil analisa untuk membuat alternatif solusi, minta masukan sampai dengan penentuan pilihan yang terbaik.
Metode : tanyai user sehubungan dengan pengalaman menggunakan prototipe.
– Evaluasi dan validasi
Secara periodik user memberikan masukan selama pengembangan dan perancangan akan diulang berdasarkan masukan tadi.
Metode : amati kebutuhan pokok user dalam menggunakan sistem.
– Benchmark
Memadukan hal-hal terbaik yang dimiliki pesaing untuk diterapkan dalam sistem yang dibangun
Metode : menggali informasi dari user hal-hal yang sebaiknya ada dibandingkan dengan kompetitor, contoh : situs IBM.
C. Pengujian
Dalam Siklus permodelan ini pengujian dilakukan terus menerus, tidak harus dikahir. Misalnya dimulai dari menentukan kosep desain (conceptual design ) dalam proses ini akan langsung terjadi evaluasi untuk langsung ternilai apakah sudah sesuai dengan kebutuhan user, bila belum maka akan terus berulang di evaluasi hingga benar-benar pas, selanjutnya apabila sudah pas, maka dari tahap evaluasi yang pertama aka lanjut ke proses yg selanjutnya yakni requirements/specification yakni memverifikasikan persyaratan rancangan tersebut, dan pada tahap itu juga langsung terjadi pengevaluasian seperti tahap pertama, dan selanjutnya akan tetap sama terjadi pada tahapan-tahapan selanjutnya yakni task analysis/fungsion analysis, pengimplementasian, prototyping hingga pada akhirnya terciptalah sebuah aplikasi yang sesuai dengan kebutuhan user. Intinya pada rancangan model ini pengevaluasian dilakukan disetiap tahapan tidak hanya pada tahapan akhir seperti model-model rancangan yang lainnya.
Referensi :
https://www.jagoanhosting.com/blog/metode-waterfall/
https://th.bing.com/th/id/OIP.3DTsJT5sR2WCX4KEyvw4PQHaEp?pid=ImgDet&rs=1
https://unydevelopernetwork.com/index.php/2020/02/07/belajar-sdlc-mengenal-v-model-kelebihan-kekurangannya/
https://premiere23.blogspot.com/p/simpleinteraction-design-model-simple.html
https://viryaphone.wordpress.com/2013/12/08/macam-macam-model-pada-life-cycle-software/#:~:text=Star%20Life%20Cycle%20Model.%20A.%20Pengertian.%20Star%20life,dilakukan%20proses%20pengujian%20secara%20terus%20meneru.%20B.%20Tahapan.
Komentar
Posting Komentar