Dynamic Systems Development Method (DSDM) [1] adalah pendekatan agile software development yang “menyediakan kerangka kerja untuk membangun dan memelihara sistem yang menghadapi kendala waktu yang ketat melalui penggunaan prototipe tambahan dalam lingkungan proyek yang dikendalikan”[2]. DSDM Pertama kali dirilis pada tahun 1994, DSDM awalnya berusaha memberikan disiplin pada metode Rapid Application Development (RAD)[3].Filosofi Dynamic Systems Development Method dipinjam dari versi modifikasi dari prinsip Pareto — 80 persen aplikasi dapat dikirim dalam 20 persen dari waktu yang diperlukan untuk mengirimkan aplikasi lengkap (100 persen).[4] DSDM adalah proses perangkat lunak iterative di mana setiap iterasi mengikuti aturan 80 persen. Artinya, hanya pekerjaan yang dianggap cukup yang diperlukan setiap increment untuk memfasilitasi perpindahan ke increment berikutnya. Detail yang tersisa dapat diselesaikan kemudian ketika lebih banyak kebutuhan bisnis diketahui atau perubahan telah diminta dan diakomodasi.[4]
Proses DSDM
Konsorsium DSDM adalah grup mendunia dari anggota perusahaan yang secara kolektif mengambil peran sebagai "penjaga" metode ini. Konsorsium telah mendefinisikan model proses agile, yang disebut siklus hidup DSDM yang mendefinisikan tiga siklus berulang yang berbeda, didahului oleh dua kegiatan siklus hidup tambahan:[4]
Studi kelayakan (Feasibility study) menetapkan kebutuhan dan kendala bisnis dasar yang terkait dengan aplikasi yang akan dibangun dan kemudian menilai apakah aplikasi tersebut merupakan kandidat yang layak untuk proses DSDM.[4]
Studi bisnis (Business study) menetapkan kebutuhan fungsional dan informasi yang memungkinkan aplikasi memberikan nilai bisnis, juga, mendefinisikan arsitektur aplikasi dasar dan mengidentifikasi kebutuhan pemeliharaan untuk aplikasi tersebut.[4]
Iterasi model fungsional (Functional model iteration) menghasilkan seperangkat prototipe tambahan yang menunjukkan fungsionalitas bagi pelanggan. (Catatan: Semua prototipe DSDM cenderung untuk berevolusi menjadi aplikasi yang dapat dikirim.) Maksud selama siklus berulang ini adalah untuk mengumpulkan kebutuhan tambahan dengan memperoleh umpan balik dari pengguna saat mereka menggunakan prototipe.[4]
Iterasi desain dan build (Design and build iteration) meninjau kembali prototipe yang dibangun selama iterasi model fungsional untuk memastikan bahwa masing-masing telah direkayasa sedemikian rupa sehingga memungkinkan untuk memberikan nilai bisnis operasional bagi pengguna akhir. Dalam beberapa kasus, iterasi model fungsional dan iterasi desain dan build terjadi secara bersamaan.[4]
Implementasi (Implementation) menempatkan software increment terbaru (suatu tipe “teroperasionalisasi”) ke dalam lingkungan operasional. Perlu dicatat bahwa (1) increment mungkin tidak 100 persen lengkap atau (2) perubahan dapat diminta saat increment dilakukan. Dalam kedua kasus, pekerjaan pengembangan DSDM berlanjut dengan kembali ke aktivitas iterasi model fungsional.[4]
DSDM dapat dikombinasikan dengan Extreme Programming (XP) untuk memberikan pendekatan kombinasi yang mendefinisikan model proses yang solid (siklus hidup DSDM) dengan praktik mur dan baut (XP) yang diperlukan untuk membangun software increment. Selain itu, konsep Adaptive Software Development (ASD) tentang kolaborasi dan tim yang mengatur diri sendiri dapat disesuaikan dengan model proses gabungan.[4]
Referensi
- ^ Stapleton, Jennifer. (1997). DSDM, dynamic systems development method : the method in practice. Addison-Wesley. ISBN 0201178893. OCLC 36755892.
- ^ CS3 Consulting Services, 2002, www.cs3inc.com/DSDM.html.
- ^ Abrahamsson, P.; Warsta, J.; Siponen, M.T.; Ronkainen, J. (2003). "New directions on agile methods: a comparative analysis". 25th International Conference on Software Engineering, 2003. Proceedings. IEEE. doi:10.1109/icse.2003.1201204. ISBN 076951877X.
- ^ a b c d e f g h i Pressman, Roger S. (2015). Software engineering : a practitioner's approach. McGraw-Hill Education. ISBN 9781259253157. OCLC 949696534.