Metode Waterfall – Dalam membuat karya ilmiah pastinya kita memerlukan sebuah metodologi atau metode penelitian. Salah satunya adalah metode Waterfall. Metode waterfall atau metode air terjun merupakan salah satu siklus hidup klasic (Classic life cycle) dalam pengembangan perangkat lunak. Show
Pengertian WaterfallWaterfall adalah salah satu jenis model pengembangan aplikasi dan termasuk ke dalam classic life cycle (siklus hidup klasik), yang mana menekankan pada fase yang berurutan dan sistematis. Untuk model pengembangannya, dapat dianalogikan seperti air terjun, dimana setiap tahap dikerjakan secara berurutan mulai dari atas hingga ke bawah. Penggunaan metode atau model waterfall pertama kali diperkenalkan oleh Herbert D. Benington di Symposium on Advanced Programming Method for Digital Computers pada tanggal 29 Juni 1956. Presentasi tersebut menjelaskan tentang pengembangan perangkat lunak untuk SAGE (Semi Automatic Ground Environment). Tahapan WaterfallDari pengertian di atas sebetulnya kita sudah mendapatkan tahapan-tahapan metode pengembangan software ini. Supaya lebih jelas berikut ini uraiannya. 1. RequirementPada tahap ini pengembang harus mengetahui seluruh informasi mengenai kebutuhan sofatware seperti kegunaan software yang diinginkan oleh pengguna dan batasan software. Informasi tersebut biasanya diperoleh dari wawancara, survey, ataupun diskusi. Setelah itu informs dianalisis sehingga mendapatkan data-data yang lengkap mengenai kebutuhan pengguna akan software yang akan dikembangkan. 2. DesignTahap selanjutnya yaitu Desain. Desain dilakukan sebelum proses coding dimulai. Ini bertujuan untuk memberikan gambaran lengkap tentang apa yang harus dikerjakan dan bagaimana tampilan dari sebuah sistem yang diinginkan. Sehingga membantu menspesifikan kebutuhan hardware dan sistem, juga mendefinisikan arsitektur sistem yang akan dibuat secara keseluruhan. 3. ImplementationProses penulisan code ada di tahap ini. Pembuatan software akan dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap selanjutnya. Dalam tahap ini juga akan dilakukan pemeriksaan lebih dalam terhadap modul yang sudah dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum. 4. Integration & TestingPada tahap keempat ini akan dilakukan penggabungan modul-modul yang sudah dibuat sebelumnya. Setelah itu akan dilakukan pengujian yang bertujuan untuk mengetahui apakah software sudah sesuai desain yang diinginkan dan apakah masih ada kesalahan atau tidak. 5. Operation & MaintenanceOperation & Maintenance adalah tahapan terakhir dari metode pengembangan waterfall. Di sini software yang sudah jadi akan dijalankan atau dioperasikan oleh penggunanya. Kelebihan Metode WaterfallBerikut ini merupakan beberapa kelebihan yang dimiliki oleh metode waterfall, antara lain: 1. Workflow yang jelasDengan menggunakan model SDLC jenis ini, mempunyai rangkaian alur kerja sistem yang jelas dan terukur. Masing – masing tim, memiliki tugas dan tanggung jawab sesuai dengan bidang keahliannya. Serta dapat menyelesaikan pekerjaan sesuai dengan alokasi waktu yang telah ditentukan sebelumnya. 2. Hasil dokumentasi yang baikWaterfall merupakan pendekatan yang sangat metodis, dimana setiap informasi akan tercatat dengan baik dan terdistribusi kepada setiap anggota tim secara cepat dan akurat. Dengan adanya dokumen, maka pekerjaan dari setiap tim akan menjadi lebih mudah, serta mengikuti setiap arahan dari dokumen tersebut. 3. Dapat menghemat biayaKelebihan yang selanjutnya tentu saja dari segi resource dan biaya yang dikeluarkan oleh suatu perusahaan dengan menggunakan model ini. Jadi, dalam hal ini klien tidak dapat mencampuri urusan dari tim pengembang aplikasi. Sehingga pengeluaran biaya menjadi lebih sedikit. Berbeda dengan metode Agile, yang mana klien dapat memberikan masukan dan feedback kepada tim developer terkait dengan perubahan atau penambahan beberapa fitur. Sehingga perusahaan akan mengeluarkan biaya yang lebih besar daripada Waterfall. 4. Digunakan untuk pengembangan software berskala besarMetode ini dinilai sangat cocok untuk menjalankan pembuatan aplikasi berskala besar yang melibatkan banyak sumber daya manusia dan prosedur kerja yang kompleks. Akan tetapi, Model ini juga dapat digunakan untuk proyek berskala kecil dan menengah. Tentu saja disesuaikan dengan kondisi dan kebutuhan proyek yang diambil. Kelemahan dari Metode WaterfallBerikut ini terdapat beberapa kelemahan dari metode waterfall, diantaranya adalah sebagai berikut: 1. Membutuhkan tim yang solidUntuk menggunakan model SDLC ini, tentu saja membutuhkan dukungan dari setiap stakeholders yang ada. Setiap tim harus mempunyai kerja sama dan koordinasi yang baik. Dikarenakan, apabila salah satu tim tidak dapat menjalankan tugas dengan semestinya, maka akan sangat berpengaruh terhadap alur kerja tim yang lain. 2. Masih kurangnya fleksibilitasSemua tim dituntut untuk bekerja sesuai dengan arahan dan petunjuk yang telah ditetapkan di awal. Sehingga, klien tidak dapat mengeluarkan pendapat dan feedback kepada tim pengembang. Klien hanya dapat memberikan masukan pada tahap awal perancangan sistem perangkat lunak saja. 3. Tidak dapat melihat gambaran sistem dengan jelasDengan model waterfall, customer tidak dapat melihat gambaran sistem secara jelas. Berbeda dengan model agile yang dapat terlihat dengan baik meskipun masih dalam proses pengembangan. 4. Membutuhkan waktu yang lebih lamaProses pengerjaan dengan menggunakan waterfall terbilang cukup lama jika dibandingkan dengan model SDLC yang lain. Karena, tahapan pengerjaan aplikasi yang dilakukan satu per satu membuat waktu yang dibutuhkan menjadi lebih lama. Sebagai contoh, tim developer tidak akan bisa melakukan proses coding jika tim designer belum menampilkan tampilan desain dari aplikasi. Nah berikut di atas merupakan Pengertian, Tahapan, Kekurangan dan Kelebihan dari Metode Waterfall semoga teman-teman semua jadi lebih paham mengenai metode ini. Semoga Bermanfaat Metode pengembangan perangkat lunak terdiri dari beberapa metode yang dikemukakan oleh beberapa Pakar. Tanda Orang yang ahli atau sedang belajar tentang ilmu yang satu ini, kami akan membahas metode pengembangan perangkat lunak yang anda butuhkan. Sebelumnya kami sudah membuat artikel tentang pembahasan sdlc, kali ini merupakan artikel pembahasan selanjutnya mengenai mppl. Biasanya pembahasan ini terdapat dalam mata kuliah Rekayasa Sistem Perangkat. Metode yang paling populer di dalam mppl adalah metode waterfall, prototype, spiral, RAD, scrum, dan agile. Metode pengembangan perangkat lunakMenurut riset, perangkat lunak adalah istilah ilmu komputer yang dimaknai sebagai serangkaian aktivitas untuk merancang, membuat, mengaplikasi, mendukung, dan meningkatkan fungsi optimal perangkat lunak tersebut. Komponen dalam komputer terdiri dari dua jenis yaitu perangkat keras dan perangkat lunak. Perangkat keras adalah komponen fisik, sedangkan perangkat lunak adalah material tidak kasat mata gimana kedua komponen tersebut akan bekerja secara bersamaan dan membutuhkan satu sama lain. Hardware atau perangkat keras nantinya akan menjadi wadah bagi perangkat lunak yang membutuhkan media. Begitu juga sebaliknya, perangkat keras tidak bisa berfungsi tanpa adanya perangkat lunak. Software atau perangkat lunak merupakan serangkaian program yang membuat perangkat keras dapat berfungsi sehingga komputer di rumah Anda bisa dioperasikan. Program dalam software berisi instruksi dalam format digital yang dibuat dalam bahasa pemrograman. Perangkat lunak dibagi menjadi tiga jenis seperti sistem, program, dan aplikasi. Dimana sistem berfungsi sebagai penyedia inti dari komputer. Sebagai contoh, sebuah sistem operasi Windows, memori penyimpanan, manajemen hardware, dan lain-lain. Dalam program terdapat perangkat lunak yang digunakan untuk membuat program tersebut. Sedangkan aplikasi adalah perangkat lunak yang paling sering anda gunakan ketika mengoperasikan komputer atau Ponsel pintar anda. Contoh aplikasi Office, anti-virus, pemutar media, folder, dan lain-lain. Nah, dari pengertian diatas dapat ditarik kesimpulan bahwa metode pengembangan perangkat lunak merupakan sebuah cara teratur untuk merancang dan meningkatkan fungsi program agar pengguna lebih mudah untuk mengoperasikannya. Model metode pengembangan perangkat lunakPengembangan perangkat lunak dapat dilakukan dengan berbagai metode seperti yang sudah disebutkan sebelumnya. Sedikitnya ada tiga yang paling sering digunakan oleh para pengembang perangkat lunak. Berikut ini pembahasan mengenai model metode pengembangan perangkat lunak.1. Metode waterfallWaterfall adalah metode pengembangan perangkat lunak paling tradisional yang sistematis. Metode ini terdiri dari lima tahapan proses diantaranya: Fase di mana pemilik proyek menyampaikan kebutuhan dan permasalahannya kepada pengembang yang kemudian bersama-sama mengumpulkan data yang diperlukan dan merumuskan fitur-fitur perangkat yang diinginkan. Selanjutnya, proses perancangan dimulai dengan merumuskan estimasi kerja, kebutuhan sumber daya, dan perencanaan alur kerja. Kemudian berlanjut ke tahap perancangan struktur data, arsitektur, tampilan, dan algoritma perangkat lunak yang akan digunakan. Rancangan ini kemudian akan diaplikasikan pada perangkat keras komputer dalam bentuk bahasa pemrograman. Tahap uji coba pengoperasian perangkat lunak masuk ke dalam tahapan construction. Ini bertujuan untuk mengetahui apa saja kelemahan dari program yang sudah dibuat. Di tahap akhir, perangkat lunak akan disebarluaskan untuk diimplementasikan kepada para pengguna secara umum. Nantinya, temuan dan respon dari para pengguna akan menjadi bahan pengembangan evaluasi dan memperbaiki beberapa bagian dari perangkat lunak yang sudah dibuat lebih baik lagi. Kekurangan dan kelebihan metode waterfallKarena melibatkan berbagai Proses sistematis dan komprehensif, sumber daya dan tahapan pengerjaannya pun bisa mencapai hasil yang maksimal, namun memakan waktu yang lebih lama. Prosesnya yang baku membuat pengembang sulit melakukan improvisasi, hal ini membuat metode Waterfall dinilai kurang efektif sehingga pengembang lebih sering menggunakannya untuk sistem berskala besar. 2. Metode prototypeMetode ini bisa diistilahkan sebagai purwarupa yang artinya model awal atau rancangan sementara yang masih membutuhkan penyesuaian sebelum berhasil mencapai hasil yang diinginkan. Metode Prototype terdiri dari enam tahapan, yakni:
Kekurangan dan kelebihan metode prototypeMetode ini bisa digunakan dengan maksimal apabila pemilik proyek tahu betul apa yang diinginkannya, namun tidak mengetahui cara mengaplikasikannya. Kunci berhasilnya penggunaan metode prototipe ini adalah komunikasi yang baik antara pelanggan dan juga pengembang. Pelanggan atau customer harus bisa menyampaikan kebutuhannya secara jelas agar pengembang mampu menerjemahkan informasi tersebut ke perangkat lunak yang sesuai dengan permintaan. Jika komunikasi tidak berjalan dengan lancar, metode ini tidak akan efektif dan pengembang akan mendapat banyak masalah dan juga tantangan dalam proses pembuatannya. Kerjasama dari kedua belah pihak akan saling menguntungkan project ini kedepannya. 3. Metode spiralMetode spiral merupakan penggabungan dua metode pengembang yang sudah dibahas sebelumnya yaitu Prototype dan juga waterfall. Pengembang melaksanakan metode prototype dengan cara sistematis khas metode Waterfall yang lengkap. Biasanya metode ini diterapkan dalam pengembangan perangkat lunak berskala besar yang membutuhkan sistem kompleks. Setiap proses harus selalu disertai dan dianalisa mengenai tingkat resiko dan keberhasilan pengembangan. Pelaksanaan metode spiral dilakukan dalam 5 tahap, yaitu:
Kekurangan dan kelebihan metode spiralMetode pengembangan perangkat lunak metode spiral menerapkan alur kerja yang panjang, memakan waktu lama, dan kompleks. Metode ini tidak cocok untuk proyek kecil apalagi yang ber-budget sedikit karena berbagai alasan. Tetapi, dalam proyek berskala besar, anda bisa mengerjakannya dengan mudah apabila menggunakan metode spiral. Metode spiral juga kurang tepat untuk dilakukan oleh pengembang perangkat lunak yang belum berpengalaman. Proses ini bisa menjadi terlalu kompleks untuk pemula yang masih memerlukan banyak latihan sehingga resiko kegagalannya cukup besar. KesimpulanItu dia penjelasan mengenai metode pengembangan perangkat lunak (MPPL) yang paling umum digunakan. Anda perlu mempelajari bahasa pemrograman dari ketiga metode tersebut jika anda berniat menjadi pengembang perangkat lunak yang terampil, cekatan, dan berkualitas. Selamat mencoba dan semoga berhasil untuk kedepannya! |