Perbedaan Antara Pemrograman Ekstrim Dan SCRUM

Perbedaan Antara Pemrograman Ekstrim Dan SCRUM
Perbedaan Antara Pemrograman Ekstrim Dan SCRUM

Video: Perbedaan Antara Pemrograman Ekstrim Dan SCRUM

Video: Perbedaan Antara Pemrograman Ekstrim Dan SCRUM
Video: SCRUM VS EXTREME PROGRAMMING | WHAT ARE THE MAJOR DIFFERENCES? 2024, April
Anonim

Pemrograman Ekstrim vs SCRUM | XP vs SCRUM

Ada sejumlah metodologi pengembangan perangkat lunak yang berbeda yang digunakan dalam industri perangkat lunak selama bertahun-tahun, seperti metode pengembangan Waterfall, V-Model, RUP dan beberapa metode linier, iteratif dan gabungan linier-iteratif lainnya. Model tangkas (atau lebih tepatnya, sekelompok metodologi) adalah model pengembangan perangkat lunak yang lebih baru yang diperkenalkan oleh manifesto Agile untuk mengatasi kekurangan yang ditemukan dalam metodologi pengembangan perangkat lunak tradisional tersebut.

Metode tangkas didasarkan pada pengembangan berulang dan menggunakan umpan balik dari pengguna sebagai mekanisme kontrol utama. Agile bisa disebut pendekatan yang berpusat pada orang daripada metode tradisional. Model tangkas memberikan versi produk yang berfungsi sangat awal dengan memecah sistem menjadi sub bagian yang sangat kecil dan dapat dikelola, sehingga pelanggan dapat menyadari beberapa manfaat sejak dini. Waktu siklus pengujian Agile relatif singkat dibandingkan dengan metode tradisional, karena pengujian dilakukan sejajar dengan pengembangan. Karena semua keunggulan ini, metode Agile lebih disukai daripada metodologi tradisional saat ini. Pemrograman Scrum dan Extreme adalah dua variasi metode Agile yang paling populer.

Apa itu SCRUM?

Seperti disebutkan di atas, SCRUM adalah proses manajemen proyek tambahan dan berulang, yang termasuk dalam keluarga metode Agile. SCRUM didasarkan pada pemberian prioritas tinggi pada partisipasi pelanggan di awal siklus pengembangan. Ini merekomendasikan penggabungan pengujian oleh pelanggan sedini dan sesering mungkin. Pengujian dilakukan di setiap titik saat versi stabil tersedia. Fondasi SCRUM didasarkan pada pengujian awal dari awal proyek dan berlanjut hingga akhir proyek.

Nilai kunci SCRUM adalah “kualitas adalah tanggung jawab tim”, yang menekankan bahwa kualitas perangkat lunak adalah tanggung jawab seluruh tim (bukan hanya tim penguji). Satu aspek penting lainnya dari SCRUM adalah memecah perangkat lunak menjadi bagian-bagian kecil yang dapat dikelola dan mengirimkannya ke pelanggan dengan sangat cepat. Memberikan produk yang berfungsi adalah yang paling penting. Kemudian tim terus meningkatkan perangkat lunak dan mengirimkan secara terus-menerus di setiap langkah utama. Ini dicapai dengan memiliki siklus rilis yang sangat singkat (disebut sprint) dan mendapatkan umpan balik untuk perbaikan di akhir setiap siklus.

SCRUM mendefinisikan beberapa peran kunci untuk kelancaran operasi tim pengembangan. Mereka adalah Product owner (yang mewakili pelanggan dan memelihara product backlog), Scrum master (yang bertindak sebagai penyelenggara dan koordinator tim dengan melakukan rapat scrum, memelihara sprint backlog dan grafik burn down) dan anggota tim lainnya. Sebuah tim mungkin terdiri dari peran tradisional, tetapi kebanyakan mereka adalah tim yang mengatur diri sendiri. Artefak Scrum utama adalah Product backlog / release backlog (wish list), Sprint backlogs / defect backlogs (tugas di setiap iterasi), Burn down chart (sisa pekerjaan vs. tanggal). Upacara SCRUM utama adalah pertemuan Product backlog, pertemuan Sprint dan pertemuan Retrospeksi.

Apa itu Pemrograman Ekstrim?

Extreme Programming (disingkat XP) adalah metodologi pengembangan perangkat lunak milik model Agile. Pemrograman ekstrim melakukan tahapan dalam langkah-langkah kontinu yang sangat kecil (dibandingkan dengan metode tradisional). Pass pertama, yang hanya membutuhkan satu hari atau seminggu, sengaja tidak lengkap. Untuk memberikan tujuan konkret untuk mengembangkan perangkat lunak, tes otomatis ditulis di awal. Kemudian developer melakukan coding. Fokusnya adalah melakukan pemrograman sebagai pasangan. Setelah semua tes lulus, pengkodean dianggap selesai. Fase berikutnya adalah desain dan arsitektur, yang berhubungan dengan pemfaktoran ulang kode oleh sekumpulan programmer yang sama. Pada akhir fase ini, produk yang tidak lengkap (tapi fungsional) disajikan kepada para pemangku kepentingan. Tepat setelah ini, fase berikutnya (yang berfokus pada rangkaian fitur terpenting berikutnya) dimulai.

Apa perbedaan antara Extreme Programming dan SCRUM?

Pemrograman Ekstrim dan SCRUM dapat dipahami sebagai metodologi yang sangat mirip dan selaras. Namun, ada perbedaan halus namun penting antara kedua metode ini. SCRUM sprint berlangsung selama 2-4 minggu, sedangkan iterasi XP biasa lebih pendek (1-2 minggu terakhir). Biasanya, tim SCRUM tidak mengizinkan perubahan pada sprint, tetapi tim XP sedikit lebih fleksibel terhadap perubahan dalam iterasi. Misalnya, setelah perencanaan sprint, kumpulan item sprint tersebut tetap tidak berubah, tetapi fitur yang belum mulai bekerja dapat ditukar kapan saja dengan beberapa fitur lain di XP. Perbedaan lain antara XP dan SCRUM adalah bahwa, urutan fitur yang dikembangkan di XP sangat diprioritaskan oleh pelanggan, sementara tim SCRUM memutuskan urutan item (setelah backlog produk diprioritaskan oleh pemilik Produk SCRUM).

Tidak seperti XP, SCRUM tidak menetapkan praktik teknik apa pun. Misalnya, XP didorong oleh praktik seperti pengembangan yang digerakkan oleh pengujian (TDD), pemrograman pasangan, pemfaktoran ulang, dll. Namun, beberapa percaya bahwa mengamanatkan serangkaian praktik pada tim yang mengatur diri sendiri dapat berdampak negatif, dan ini dapat dipertimbangkan kekurangan XP. Kekurangan lain dari pemrograman Extreme adalah bahwa tim yang tidak berpengalaman mungkin cenderung melakukan refactor tanpa tes otomatis atau TDD (atau sekadar peretasan). Oleh karena itu, beberapa menyarankan bahwa SCRUM lebih baik untuk menatap (karena membawa peningkatan besar hanya melalui iterasi timeboxed terfokus) dan XP cocok untuk tim yang sedikit dewasa yang telah menemukan nilai dari praktik yang disebutkan di atas (daripada menggunakannya karena mereka telah diminta. untuk melakukannya).

Direkomendasikan: