Makalah Perbandingan Antara Waterfall dan Scrum
Makalah

Makalah Perbandingan Antara Waterfall dan Scrum

Makalah Perbandingan Antara Waterfall dan Scrum – Makalah Perbandingan Antara Waterfall dan Scrum ini saya tulis dan rangkum dari beberapa sumber, dan Perbandingan Antara Waterfall dan Scrum ini bertujuan untuk pembaca dapat mendapatkan informasi terkait dengan Perbandingan Antara Waterfall dan Scrum.

Makalah Perbandingan Antara Waterfall dan Scrum

perkembangan teknologi dan perangkat lunak yang mendukungnya telah berkembang dengan pesat beberapa tahun ini. Kebutuhan pada sebuah manajemen proyek yang baik sudah menjadi keharusan untuk mendukung hal tersebut. Pada awal perkembangannya, suatu perangkat lunak sering kali dibuat tanpa ada perencanaan yang spesifik. Namun semakin besar sebuah sistem dan semakin kompleks sebuah sistem maka perancangan dan desain sistem pun menjadi sebuah keharusan pula. Berbagai metode pun mulai digunakan untuk memudahkan pengembang dalam mengembangkan sistemnya. Karena ada banyak pilihan maka terkadang seorang proyek manager kesusahan dalam menentukan metode mana yang cocok dan tepat digunakan untuk menangani proyeknya. Ada banyak aspek yang berpengaruh disini misalnya ukuran sistem yang akan dibangun, jumlah tim yang menangani proyek tersebut, waktu dan juga yang tidak kalah penting adalah jumlah dana yang disediakan. Ketepatan dalam memilih metode tentunya akan sangat menguntungkan bagi pemilik proyek atau “client”, terutama untuk penghematan biaya baik itu waktu maupun resource yang digunakan.

Baca Juga

Makalah Tentang Sepak Bola Terlengkap

Waterfall

waterfall merupakan suatu metode manajemen proyek yang sudah relatif lama. Waterfall menekankan pada sebuah desain proses yang berurutan yang dalam prosesnya terlihat seperti aliran air terjun dari proses perancangan konsep, analisis proyek, inisialisasi proyek, desain, pembuatan sistem, testing, implementasi dan perawatan.

Beberapa ciri dari metode ini:

• Proyek dibagi-bagi dalam beberapa fase yang saling berurutan.
• Penekanan pada perencanaan, jadwal, deadline dan implementasi keseluruhan sistem.
• Kontrol yang ketat dalam siklus hidup proyek dengan menggunakan bantuan dokumentasi tertulis.

Kelebihan metode ini:

• Relatif mudah dimengerti dan mudah digunakan.
• Requirement dari sistem bersifat stabil.
• Baik dalam manajemen kontrol.
• Bekerja dengan baik ketika kualitas lebih diutamakan dibandingkan dengan biaya dan jadwal/deadline.

Kekurangan dari metode ini:

• Semua kebutuhan sistem harus diketahui di awal
• Integrasi sekaligus di akhir sistem.
• Testing hanya dilakukan pada setiap akhir fase, bahkan tidak jarang testing hanya dilakukan di akhir-akhir proyek.
• Membutuhkan waktu yang cukup lama meski kadang proyeknya tidak terlalu besar.
• Perubahan requirement dapat merubah keseluruhan proses yang telah dilaksanakan.

Pengertian Metode SCRUM

Scrum merupakan suatu metode pengembangan perangkat lunak cepat yang konsepnya dibuat oleh Jeff Sutherland dan tim  pengembangannya di awal 1990-an. Dalam beberapa tahun terakhir, pengembangan lebih lanjut pada metode scrum telah dilakukan oleh Schwaber dan Beedle.

Scrum adalah sebuah pendekatan tangkas untuk pengembangan perangkat lunak. Scrum merupakan suatu kerangka kerja. Jadi, bukannya menyediakan deskripsi rinci tentang bagaimana segala sesuatu yang harus dilakukan pada proyek seperti diserahkan kepada tim pengembangan perangkat lunak pada umumnya. Hal ini dilakukan supaya tim akan tahu bagaimana cara terbaik untuk memecahkan masalah yang mereka disajikan. Inilah sebabnya mengapa, misalnya, rapat perencanaan sprint digambarkan dalam bentuk hasil yang diinginkan (komitmen untuk mengatur fitur yang akan dikembangkan di sprint berikutnya), bukan definisi Tugas, kriteria Validasi, dll seperti yang akan disediakan dalam metodologi yang lain.

Scrum bergantung pada pengorganisasian-diri, tim lintas fungsional. Tim scrum adalah mengorganisir diri dalam bentuk tidak ada pemimpin tim secara keseluruhan yang memutuskanmana orang yang akan melakukan tugas atau bagaimana suatu masalah akan dipecahkan. Mereka adalah isu-isu yang ditentukan oleh tim secara keseluruhan. Tim ini lintas fungsional sehingga setiap orang perlu untuk mengambil fitur dari ide untuk diimplementasi.

Tim-tim pengembangan scrum yang didukung oleh dua orang tertentu: Scrum Master dan pemilik produk (product owner ). Scrum Master dapat dianggap sebagai pelatih bagi tim, membantuanggota tim menggunakan kerangka Scrum untuk tampil di tingkat tertinggi. Pemilik produk mewakili bisnis, pelanggan atau pengguna dan memandu tim ke arah pegembangan produk yang tepat.

Proyek Scrum membuat kemajuan dalam serangkaian sprint, yang timeboxed iterasi tidak lebih dari sebulan panjang. Pada awal sprint, anggota tim berkomitmen untuk memberikan beberapa nomor fitur yang terdaftar di product backlog proyek. Pada akhir sprint, fitur inidilakukan – mereka diimplementasikan, diuji, dan diintegrasikan ke dalam produk berkembangatau sistem. Pada akhir sprint tinjauan sprint dilakukan selama tim menunjukkan fungsi barukepada pemilik produk dan pemangku kepentingan lain yang memberikan umpan balik yang dapat mempengaruhi sprint berikutnya.

Prinsip-prinsip scrum konsisten dengan manifesto cepat dan digunakan untuk memandu kegiatan pengembangan dalam suatu proses yang mencakup kegiatan kerangka kerja berikut : kebutuhan, analisis, perancangan, evolusi, dan penghantaran. Dalam masing-masing kegiatan kerangka kerja, tugas kerja terjadi dalam suatu pola proses yang disebut sebagai sprint. Kerja yang dilakukan dalam suatu sprint (jumlah sprint yang diperlukan untuk setiap kegiatan kerangka kerja akan bervariasi bergantung pada kompleksitas dan ukuran produk) disesuaikan dengan masalah yang dihadapi dan didefinisikan dan sering diubah secara real time oleh tim scrum.

Dalam hal ini Scrum memiliki prinsip sebagai berikut :

·         Ukuran tim yang kecil melancarkan komunikasi, mengurangi biaya,dan memberdayakan satu sama lain.

·          Proses dapat beradaptasi terhadap perubahan teknis dan bisnis proses menghasilkan beberapa software increment.

·         Pembangunan dan orang yang membangun dibagi dalam tim yang kecil.

·         Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun proses scrum mampu menyatakan bahwa produk selesai kepanpun di perlukan.

Proses SCRUM

Scrum menekankan penggunaan satu set proses perangkat lunak yang terbukti efektif untuk proyek-proyek dengan jadwal yang ketat, perubahan kebutuhan dan kekritisan bisnis. Masing-masing pola proses mendefinisikan serangkaian tindakan-tindakan pengembangan.

Penjelasan proses Scrum

Backlog àdalah daftar prioritas dari kebutuhan proyek  atau fitur yang menyediakan nilai bisnis bagi pelanggan. Item-item dapat ditambahkan pada backlog setiap saat (pada saat inilah bagaimana perubahan ditunjukkan). Para manajer produk menilai backlog dan prioritas update sesuai kebutuhan.

Sprint à terdiri atas unit kerja yang diperlukan untuk mencapai kebutuhan yang didefinisikan dalam backlog yang harus sesuai dengan time-box yang sudah didefinisikan sebelumnya(biasanya 30 hari). Perubahan(misalnya,backlog work item) tidak diperkenalkan selama sprint tersebut. Oleh karena itu,sprint memungkinkan anggota tim untuk bekerja dalam lingkungan jangka pendek, namun stabil.

Scrum meeting à pendek waktunya(biasanya 15 menit) pertemuan yang diadakan setiap hari oleh tim scrum. Tiga pertanyaan kunci yang diajukan dan dijawab oleh semua anggota tim.

·         Apa yang anda lakukan sejak pertemuan terakhir tim?

·         Kendala apa saja yang anda hadapi?

·         Apa yang anda rencanakan untuk mencapai sesuatu sebelum rapat tim berikutnya?

Seorang pemimpin tim yang disebut scrum master akan memimpin rapat dan menilai tanggapan-tanggapan yang muncul dari setiap orang yang terlibat dalam tim perangkat lunak. Scrum meeting membantu tim perangkat lunak untuk mengungkap potensi terjadinya masalah-masalah sedini mungkin. Selain itu,pertemuan ini pada dasarnya mengarah pada ”sosalisasi pengetahuan” dan dengan demikian menunjukkan suatu struktur tim perangkat lunak bersifat mandiri.

Demo memberikan peningkatan perangkat lunak untuk pelanggan sehingga fungsionalitas yang telah dilaksanakan dapat didemonstrasikan dan dievaluasi oleh pelanggan. Penting untuk diperhatikan bahwa demo mungkin tidak berisi semua fungsionalitas terencana, melainkan fungsi-fungsi yang dapat dihantarkan dalam time-box yang dibangun sebelumnya. Beedle dan rekan-rekannya menyajikan sebuah diskusi komperhensif dari pola-pola dimana mereka menyatakan:”scrum mengasumsikan di depan tentang adanya kekacauan….” Pola proses scrummemungkinkan tim perangkat lunak bekerja dengan sukses di dunia di mana penghapusan ketidakpastian adalah hal yang mustahil.

Mana yang lebih baik?

Mana yang lebih baik diantara kedua metode tersebut? Ada banyak hal yang menjadi faktor penentu. Namun yang perlu kita ketahui adalah setiap metode baik waterfall atau agile bertujuan untuk memfasilitasi dan mengelola proses kerja tim untuk menyelesaikan suatu proyek.

Untuk mengetahui mana metode yang lebih baik dibandingkan metode lainnya perlu kita analisa dulu metode tersebut terkait beberapa aspek berikut:

Tahap Analisis

Pada metode waterfall, tahap analisis dilakukan setelah inisialisasi proyek. Pada tahap ini semua kebutuhan sistem dikumpulkan dari client atau pemilik proyek. Sistem analis akan menganalisa proyek sebelum dilanjutkan ke fase berikutnya dan hasilnya berupa kebutuhan sistem yang biasanya bersifat statis.

Pada metode Agile, tahap analisis akan dilakukan di awal-awal project. Pada Agile namun masih ada kemungkinan bahwa hasil dari tahap analisis ini mengalami perubahan tergantung dari kebutuhan sistem. Karena susah untuk dapat mengumpulkan semua kebutuhan sistem pada awal proyek maka tidak jarang analisis juga dilakukan pada setiap iterasi, namun analisis yang dilakukan disini lebih spesifik ke fungsi tertentu saja.

Waktu

Waktu yang dimaksud adalah lama pelaksanaan proyek. Metode waterfall memakan waktu yang relatif lebih banyak dibandingkan dengan metode agile namun tetapi kualitas yang dihasilkan sebanding dengan waktu pengerjaannya.

Sedangkan pada metode agile dengan prinsipnya “rilis berkala” kadang membuat suatu proyek terkesan terburu-buru dan kualitas secara keseluruhan kurang terlalu diperhatikan.

Biaya

Waktu pengerjaan suatu proyek akan berpengaruh terhadap biaya yang harus dikeluarkan untuk sebuah proyek. Semakin lama waktu pengerjaan suatu proyek maka biaya yang dibutuhkan juga akan semakin besar. Tak jarang suatu proyek dihentikan karena kekurangan biaya. Atau bisa juga biaya yang diberikan oleh client tidak sebanding dengan tingkat kesulitan proyek.

Jadi, mana yang lebih baik?

Semua metode yang ada jika digunakan pada proyek yang tepat pasti akan menghasilkan sebuah produk yang berkualitas. Sebaliknya jika digunakan pada proyek yang salah dan karena kesalahan analisa proyek, maka akan menghabiskan waktu dan biaya yang lebih dari yang sudah direncanakan. Jadi, mana yang lebih baik? Tergantung dari proyek yang ditangani dan juga bagaimana seorang proyek manager menerapkan metodenya dengan baik.

Kesimpulan

Dari makalah yang telah  saya buat tentang metode/model pengembangan perangkat lunak yang meliputi metode/model Scrum, Waterfall (air terjun), dan Konkuren. Kami menarik kesimpulansemua sistem memiliki perancangan masing-masing, dan pada metode/model pengembangan perangkat lunak yang telah saya jelaskan di isi makalah ini, setiap metode/model memiliki kelibihan dan kekurangan masing-masing prosesnya.

Dalam software development, Scrum paling populer digunakan. Scrum lebih baik digunakan karena bisa untuk proyek skala besar dan kecil dengan biaya tidak terlalu banyak. Banyak perusahaan yang menggunakan metode scrum ini.

Tags

You might also like

Leave a Reply

Your email address will not be published. Required fields are marked *