DYNAMIC SYSTEM DEVELOPMENT METHOD (AGILE) - INFORMATIKA 16

Latest

Sunday, September 1, 2019

DYNAMIC SYSTEM DEVELOPMENT METHOD (AGILE)

DYNAMIC SYSTEM DEVELOPMENT METHOD (AGILE)

Nama : Farhan Yakub Bawazir (F1D016025)
              I Kadek Adi Wirawan (F1D016039)

1. ABSTRAK, FILOSOFI, DAN PRINSIP

Dynamic systems development method (DSDM) sebuah framework metode agile, yang awalnya digunakan sebagai metode pengembangan perangkat lunak. DSDM awalnya berusaha memberikan disiplin pada metode rapid application development(RAD). DSDM adalah pendekatan iterative and incremental yang menganut prinsip-prinsip pengembangan Agile, termasuk keterlibatan pengguna / pelanggan secara terus-menerus. DSDM menentukan/memastikan biaya, kualitas dan waktu pada awal sebelum mengerjakan proyek dan menggunakan prioritas lingkup MoSCoW yang akan menyesuaikan proyek yang dapat dihasilkan untuk memenuhi batasan waktu yang ditentukan. DSDM adalah salah satu dari sejumlah metode Agile untuk mengembangkan perangkat lunak dan solusi non-IT, dan merupakan bagian dari Agile Alliance[2].

DSDM memiliki Filosofi yang berbunyi "nilai bisnis terbaik muncul ketika proyek disejajarkan dengan tujuan bisnis yang jelas, sering memberikan dan melibatkan kolaborasi orang-orang yang diberdayakan dan termotivasi.". Selain itu, DSDM juga memiliki delapan buah prinsip yang mendukung FIlosofi ini. Berikut Prinsip DSDM[4]:

  • Collaborate, Tim yang bekerja dalam semangat kerja sama aktif dan komitmen akan selalu mengungguli kelompok individu yang hanya bekerja dalam asosiasi yang lemah. Kolaborasi mendorong peningkatan pemahaman, kecepatan yang lebih besar, dan kepemilikan bersama, yang memungkinkan tim untuk memiliki performa pada tingkat yang lebih tinggi.
  • Deliver on time, Menyelesaikan proyek tepat waktu adalah hasil yang sangat diinginkan untuk suatu proyek dan seringkali merupakan faktor keberhasilan yang paling penting. Keterlambatan pengiriman seringkali dapat melemahkan dasar pemikiran untuk suatu proyek, terutama ketika peluang pasar atau tenggat waktu yang sah dilibatkan.
  • Never compromise quality, dalam DSDM, tingkat kualitas yang harus dihasilkan harus disepakati sejak awal. Semua pekerjaan harus ditujukan untuk mencapai tingkat kualitas itu - tidak lebih dan tidak kurang. Solusi harus 'cukup baik'. Jika bisnis setuju bahwa fitur dalam SubseT Minimum Dapat Digunakan memenuhi kriteria penerimaan yang disepakati, maka solusinya harus 'cukup baik' untuk digunakan secara efektif.
  • Build incrementally from firm foundations, Salah satu pembeda utama dari DSDM dengan metode Agile lainnya adalah dengan membangun fondasi untuk proyek sebelum berkomitmen untuk pengembangan yang signifikan.
  • Develop iteratively, DSDM menggunakan kombinasi dari Pengembangan Iteratif, demonstrasi yang sering, dan review untuk mendorong umpan balik tepat waktu. Menerima perubahan sebagai bagian dari proses evolusi memungkinkan tim untuk menemukan solusi bisnis yang akurat.. Konsep iterasi adalah jantung dari segala sesuatu yang dikembangkan sebagai bagian dari pendekatan DSDM. Sangat jarang bagi segala sesuatu untuk dibuat sempurna pada pertama kali dan penting untuk mengenali bahwa proyek beroperasi dalam dunia yang berubah.
  • Communicate continuously and clearly, komunikasi yang buruk sering disebut sebagai penyebab tunggal kegagalan proyek. Praktik DSDM dirancang khusus untuk meningkatkan efektivitas komunikasi baik bagi tim maupun individu.
  • Demonstrate control, sangat penting untuk mengendalikan proyek secara menyeluruh. Ini hanya dapat dicapai dengan merujuk pada rencana untuk pekerjaan yang sedang dilakukan, yang jelas selaras dengan tujuan bisnis yang disepakati. Penting juga untuk memastikan transparansi semua pekerjaan yang dilakukan oleh tim.
  • Focus on the business need, Setiap keputusan yang diambil selama pengembangan proyek harus dilihat berdasarkan tujuan utama proyek - untuk memberikan apa yang perlu diselesaikan/dihasilkan pada sisi bisnis, serta kapan harus diselesaikan. Tim perlu memahami sebagai berikut: Memahami prioritas bisnis yang sebenarnya, membentuk kasus bisnis yang valid, pastikan sponsor dan komitmen bisnis berkelanjutan, menjamin pengiriman SubseT minimum yang dapat digunakan.

2. PROSES PENGEMBANGAN

Gambar 1. Siklus Pengembangan DSDM

Berikut adalah proses dari metode DSDM[3]:
  • Pre-project: Dalam fase ini, tim fokus untuk menentukan tujuan yang jelas, apa yang perlu dilakukan oleh perangkat lunak yang akan dibuat, visi dari proyek ini, menentukan langkah yang menguntungkan dan langkah apa yang tidak, menentukan risiko dari proyek.
  • Feasability: Fase feasability (kelayakan) dilakukan untuk menentukan apakah proyek yang diusulkan layak dari perspektif teknis dan apakah proyek tersebut hemat biaya dari perspektif bisnis. Upaya yang terkait dengan Feasability harus cukup untuk memutuskan apakah tindakan lebih lanjut terhadap proyek akan dilanjutkan, atau apakah proyek harus dihentikan karena tidak layak.
  • Foundations: Fase Foundations mengacu pada tindakan awal dari Feasability ke tingkat berikutnya. Hal ini dimaksudkan untuk membangun pemahaman mendasar (tetapi tidak rinci) tentang aspek bisnis pada proyek, potensi solusi yang akan dibuat oleh proyek, dan bagaimana pengembangan dan pengimplementasian solusi akan dikelola. Dengan menggunakan rincian yang tidak mendetail, fase Foundations seharusnya tidak lebih dari beberapa minggu. Bahkan untuk proyek besar dan kompleks. Rincian yang terkait dengan persyaratan, dan bagaimana mereka harus dipenuhi sebagai bagian dari solusi, sengaja dibiarkan sampai fase Evolutionary Development.
  • Evolutionary Development: Setelah menetapkan fondasi di fase Foundations, tujuan dari fase Evolutionary Development adalah untuk mengembangkan solusi. Fase Evolutionary Development membutuhkan Tim untuk menerapkan praktik-praktik seperti timeboxing and MoSCoW.
  • Timeboxing: adalah pendekatan untuk menyelesaikan proyek secara bertahap dengan memecahnya menjadi porsi-porsi yang lebih kecil, masing-masing dengan anggaran dan tanggal deadline yang sudah ditetapkan. Tiap-tiap porsi akan ditentukan tingkatan prioritasnya. Karena waktu dan anggaran adalah tetap, variabel yang tersisa adalah persyaratan. Jadi, jika proyek kehabisan waktu atau anggaran, persyaratan dengan prioritas terendah dihilangkan. Ini tidak berarti bahwa produk diberikan dalam kondisi yang tidak selesai, karena Prinsip Pareto mengatakan bahwa 80% proyek berasal dari 20% dari persyaratan sistem, sehingga selama 20% persyaratan yang paling penting diimplementasikan ke dalam sistem, sistem karena itu memenuhi kebutuhan bisnis dan tidak ada sistem yang dibangun dengan sempurna pada percobaan pertama. 
  • MosCow: adalah teknik untuk memprioritaskan item atau persyaratan. Berikut adalah kepanjangan dari singkatannya: Must have (Harus punya), Should have (Semestinya punya), Could have (Bisa punya), dan Won’t have (Tidak akan punya).
  • Fase Deployment terdiri dari tiga kegiatan utama: Assemble, Review and Deploy.
  • Assemble: Sebelum Deployment, biasanya ada kegiatan yang dilakukan untuk memastikan bahwa apa yang dideploy adalah jelas. Ini juga termasuk menyatukan semua informasi pendukung yang relevan. Assemble mencakup pekerjaan untuk "menyatukan" apa yang akan dirilis.
  • Review: Setelah melakukan Assemble, akan ada sebuah persetujuan untuk dideploy. Ini akan didasarkan pada tinjauan akhir dari solusi sebelum digunakan untuk operasional - untuk memastikan rilis yang diusulkan memenuhi standar yang sesuai dan cukup lengkap untuk dapat digunakan.
  • Deploy: Setelah diberikan persetujuan, akan dilakukan deployment. Deploy adalah tindakan untuk menempatkan apa yang telah dirakit (dirakit) ke dalam penggunaan operasional. 
  • Post-Project: Setelah dilakukannya deployment, fase Post-Project memeriksa seberapa baik manfaat bisnis yang diharapkan telah dipenuhi. Meskipun dimungkinkan untuk mengamati manfaat secara langsung, sebagian besar manfaat akan muncul dan bertambah selama periode penggunaan solusi yang telah ditentukan sebelumnya. Dari manfaat-manfaat tersebut kemudian ditentukan sebagai poin-poin penentu apakah proyek layak dihilangkan atau tidak, tergantung dari kebutuhan pengguna/stakeholder.

3. KELEBIHAN

Berikut adalah kekurangan dari metode DSDM[3]:
  • Menyediakan proses yang teknik-independen.
  • Fleksibel dalam kebutuhan yang ber-evolusi.
  • Waktu yang ketat dan anggaran yang jelas serta ditetapkan.
  • Mengikut sertakan stakeholder dalam pengembangan.
  • Penekanan pada pengujian, sehingga setidaknya satu penguji diharapkan berada di setiap tim proyek.
  • Dirancang oleh orang-orang bisnis, sehingga nilai bisnis menjadi prioritas tertinggi yang dapat diberikan.
  • Menetapkan ekspektasi stakeholder dari awal proyek bahwa tidak semua persyaratan akan ter-realisasi pada hasil akhir.
  • Proyek diselesaikan tepat waktu dan sesuai anggaran.

4. KEKURANGAN

Berikut adalah kelebihan dari metode DSDM[3]:
  • Fokus pada pengembangan dan evolusi dapat menyebabkan penurunan ketahanan kode.
  • Membutuhkan keterlibatan pengguna yang signifikan.
  • Membutuhkan tim pengembangan yang terampil di bidang bisnis dan teknis.
  • Mengharapkan keterlibatan pengguna yang berkelanjutan.
  • Semakin banyak fitur dan solusi membuat dokumentasi semakin banyak.
  • Model pengembangan baru, tidak banyak diketahui, digunakan, dan susah dimengerti.
  • Karena anggaran dan waktu sudah ditetapkan, DSDM dapat menjadi membatasi dan sulit untuk digunakan dibandingkan dengan metode agile lainnya.

5. PERBEDAAN DENGAN METODE LAIN

Aspek kunci yang membedakan pendekatan Dynamic System Development dengan metode-metode yang lain adalah dengan membangun fondasi atau pendirian yang kuat untuk proyek sebelum berkomitmen untuk pengembangan yang lebih signifikan dengan cara menetapkan waktu dan sumber daya yang dibutuhkan terlebih dahulu dan kemudian menyesuaikan jumlah fungsi yang sesuai untuk mencapai sebuah solusi yang diinginkan[1].

6. KARAKTERISTIK DAN CONTOH APLIKASI

Aplikasi yang dikembangkan dengan metode ini memiliki karakteristik dimana spesifikasi dan fungsi yang sering berubah, baik berubah dikarenakan kebutuhan pelanggan maupun berubah dikarenakan faktor waktu pengerjaan dan anggaran proyek. Aplikasi yang memiliki karakteristik tersebut adalah Sistem Informasi dan Game. Pada Sistem Informasi, suatu instansi tak jarang menambahkan sebuah fitur atau layanan yang ditawarkan oleh aplikasi, sehingga aplikasi cenderung mengalami perubahan. Pada Game, perubahan sering terjadi dikarenakan pembuatan sebuah game relatif lama, terutama pada game-game yang memiliki budget besar. Dalam fase pengembangan yang lama tersebut, tak jarang teknologi baru hadir di tengah-tengah fase pengembangan. Sehingga tim pengembang harus menggunakan teknologi baru tersebut untuk dapat bersaing dengan produk lain[1]. 

7. KESIMPULAN

DSDM merupakan metode Agile yang menetapkan anggaran dan waktu pengerjaan pada suatu proyek, berbeda dengan metode Agile lainnya. Selain itu, metode DSDM juga menggunakan prinsip Pareto dimana 80% tingkat penyelesaian proyek berlandaskan pada 20% dari persyaratan sistem yang paling penting. Maka dari itu, metode ini sangat cocok untuk mengembangkan Sistem Informasi dan Game.

REFRENSI

[1]Coram, Michael; Bohner, Shawn. "The Impact of Agile Methods on Software Project Management",Virginia Polytechnical Institute and State University Blacksburg, Virginia 24061, 2005.
[2]Plonka, Laura; Sharp, Helen; Gregory, Peggy and Taylor, Katie. "UX design in agile: a DSDM case study". In: Agile Processes in Software Engineering and Extreme Programming: 15th International Conference, Springer. 2014.
[3]https://www.ukessays.com/essays/information-systems/dynamic-systems-development-methodology.php
[4]https://www.agilebusiness.org/page/ProjectFramework_04_Principles


No comments:

Post a Comment