Literatur Agile Manifest/ Principles serta Penerapannya di Tim dan Scrum Methodology

Muhamad Akmal
6 min readApr 30, 2023

--

https://cdn.ttgtmedia.com/rms/onlineimages/agile_values_and_principles-i.png

Agile Manifesto berisi empat nilai inti dan dua belas prinsip yang menekankan kolaborasi antara individu dan tim, menyediakan perangkat lunak yang berguna dan efisien serta merespons perubahan dengan cepat. Manifesto Agile membentuk dasar untuk pengembangan perangkat lunak yang adaptif dan fleksibel dengan metode Agile.

Agile Manifesto mengajarkan empat nilai inti, yaitu manusia dan interaksi, cara kerja perangkat lunak, bermitra dengan pelanggan, dan menanggapi perubahan. Menerapkan nilai-nilai ini untuk pengembangan perangkat lunak membantu tim beradaptasi dengan perubahan dan mempercepat pengiriman produk.

https://cdn.ttgtmedia.com/rms/onlineimages/agile_values_and_principles-i.png

Di sisi lain, Agile Manifesto juga memiliki dua belas prinsip. Prinsip-prinsip ini menekankan pentingnya kolaborasi antar tim, fleksibilitas dalam menghadapi perubahan, dan menghadirkan perangkat lunak yang berguna dan efisien. Prinsip-prinsip ini memandu tim untuk menerapkan metodologi Agile ke pengembangan perangkat lunak.

Salah satu metode Agile yang paling populer adalah Scrum. Scrum adalah kerangka kerja yang menekankan kerja tim yang mendalam, transparansi, dan kemampuan beradaptasi. Scrum terdiri dari 3 peran utama yaitu Product Owner, Scrum Master, dan Development Team.

Penerapan Agile Manifesto dalam metodologi Scrum mengacu pada prinsip-prinsip Agile. Misalnya, dalam Scrum, menghadirkan perangkat lunak yang berguna dan efisien adalah prioritas utama. Pemilik Produk bertanggung jawab untuk memastikan bahwa setiap produk dibangun dengan nilai tambah dan manfaat bagi pelanggan.

Berikut adalah contoh penerapan Agile Manifesto dan prinsip-prinsipnya dalam pengembangan perangkat lunak

Focus on delivering working software

Menerapkan prinsip ini dapat dicapai dengan membuat fungsi atau cerita pengguna yang jelas dan tepat. Misalnya, pengembang dapat membuat kisah pengguna untuk fitur membuat Itinerary dalam Platform Kembara:
“Sebagai pengguna, saya ingin dapat membuat plan trip yang akan saya jalani. Saya ingin memilih tempat-tempat yang akan saya tuju secara mandiri.”

Selama pengujian, kita dapat membuat test case untuk menguji fitur ini dengan langkah-langkah seperti:
Buat itinerary -> Pilih tanggal -> pilih destinasi wisata tujuan.

Prioritize interaction and collaboration

Penerapan prinsip ini dapat dilakukan dengan mendorong kelompok untuk berkomunikasi secara terbuka dan terus menerus. Selama pengujian, kami dapat mengadakan sesi tinjauan kode dan meningkatkan setiap sprint untuk meningkatkan proses dan kinerja tim. Selain itu, kita bisa menggunakan alat kolaborasi seperti Slack atau Trello untuk memudahkan komunikasi dan kolaborasi antar anggota tim.

Kelompok kembara menggunakan Trello untuk kolaborasi team.

Terdapat pembagian sprint backlog dari sprint 1 sampai selesai. Pada Trello juga terdapat bagian untuk menempatkan baclog yang belum dikerjakan, sedang dikerjakan, In-review, dan yang sudah selesai. Dengan menggunakan Trello, kelompok kami juga dapat menentukan siapa yang bertanggung jawab atas backlog pada sprint tersebut.

Responsive to change

Menerapkan prinsip ini dapat dilakukan dengan memprioritaskan backlog yang fleksibel dan dapat disesuaikan dengan kebutuhan bisnis dan pelanggan. Dalam pengujian, kita dapat menggunakan pendekatan BDD (Behavior Driven Development) dengan menulis test case yang dapat dengan mudah dimodifikasi sesuai dengan perubahan kebutuhan.

Kelompok kembara sempat melakukan perubahan alur pengembangan code. Awalnya, alur yang digunakan yaitu Proses pembuatan Back-End tidak berjalan paralel dengan Front-End pada sprint 1. Setelah melakukan diskusi kelompok, diputuskan pengerjaan Back-End dan Front-End dikerjalan secara paralel.

Motivate and empower the team

Penerapan prinsip ini dapat dilakukan dengan memberikan kebebasan dan tanggung jawab pada anggota tim dalam memilih cara terbaik untuk menyelesaikan tugas. Dalam test, kita dapat menggunakan TDD (Test-Driven Development) untuk memberikan anggota tim tanggung jawab dalam menulis skenario uji dan memastikan kualitas kode. Selain itu, kita dapat menggunakan teknik pairing dan mob programming untuk meningkatkan motivasi dan kolaborasi antar anggota tim.

Contoh di atas menunjukkan bagaimana Agile Manifesto dan prinsip-prinsipnya dapat diterapkan pada pengembangan perangkat lunak menggunakan metodologi Scrum. Di Scrum, tim bekerja dalam sprint singkat dan berfokus pada penyampaian perangkat lunak berkualitas tinggi yang dapat diterapkan. Dengan menerapkan prinsip Agile, tim dapat meningkatkan kolaborasi, bereaksi cepat terhadap perubahan, dan memberdayakan anggota tim untuk mencapai tujuan bersama.

Adapula sesi Sprint Retrospective. Sprint Retrospective adalah acara yang diadakan di akhir metodologi Sprint in Scrum, yang bertujuan untuk mengukur kerja sama tim dan menemukan cara untuk meningkatkan kinerja tim di masa mendatang. Selama sesi ini, semua anggota tim diundang untuk berpartisipasi dan memberikan umpan balik atas sprint yang baru saja diselesaikan.

Sesi retrospektif biasanya dimulai dengan tinjauan tujuan sprint yang telah ditetapkan sebelumnya, dan kemudian menilai seberapa baik tim mencapai tujuan tersebut. Selain itu, sesi ini juga bertujuan untuk melihat apa yang terjadi selama sprint dan menemukan cara untuk memperbaiki masalah tersebut di masa mendatang.

Metode yang digunakan oleh Kelompok Kembara adalah “Start, Stop, Continue”

Metode ini melibatkan tim memberikan umpan balik tentang tiga hal, yaitu hal untuk memulai, menghentikan, dan melanjutkan di masa depan. Tim diminta untuk menuliskan ide mereka di papan atau selembar kertas dan kemudian mendiskusikannya bersama.

Berikut adalah contoh penerapan metode “Start, Stop, Continue”

Walaupun judulnya berbeda, tetapi tujuannya tetap sama. House of Straw merupakan hal-hal yang dapat ditinggalkan/dibuang dari Sprint 1 kemarin. Kemudian House of Sticks adalah hal-hal yang dapat dikembangkan kembali di sprint berikutnya. Terakhir, House of Bricks adalah hal-hal yang sudah bagus dan harus dipertahankan di sprint berikutnya.

Kolaborasi juga menjadi salah satu prinsip penting dalam implementasi Agile Manifesto di Scrum. Tim Pengembang bekerja sama dengan Pemilik Produk untuk menentukan fitur dan peningkatan apa yang perlu dilakukan pada produk. Peran Scrum Master adalah memfasilitasi kolaborasi dan memastikan tim bekerja melalui proses Scrum yang tepat.

Fleksibilitas dalam manajemen perubahan juga menjadi tujuan dalam penerapan Agile Manifesto di Scrum. Tim harus bersiap untuk perubahan dan beradaptasi dengan cepat. Pemilik produk dapat mengubah prioritas produk atau menambahkan fitur baru yang tidak termasuk dalam paket awal.

Scrum Maturity Assesment

Scrum Maturity Assessment adalah proses evaluasi yang digunakan untuk mengukur sejauh mana tim atau organisasi telah mengadopsi dan mengembangkan praktik-praktik Scrum secara efektif. Scrum adalah kerangka kerja pengembangan perangkat lunak yang sangat populer dalam pengelolaan proyek, terutama di industri teknologi.

Scrum Maturity Assessment bertujuan untuk memahami tingkat kematangan Scrum tim atau organisasi dalam menerapkan prinsip-prinsip Scrum dan praktik-praktik terkait. Evaluasi ini dapat dilakukan oleh seorang yang berpengalaman dalam Scrum. Dalam hal ini, dilakukan oleh Asisten dosen Kak Cinoy.

Berikutnya adalah Scrum Maturity berdasarkan roles. Kami ada 3 Roles yaitu PO, Development team, dan Scrum Master. Kami bergantian menerapkan roles-roles tersebut kepada seluruh anggota team. Scrum roles merupakan bagaimana caranya kita sebagai team mendapatkan pencapaian dari nilai nilai diatas.

Selanjutnya kami memiliki event-event scrum seperti Sprint Planning, Daily Scrum, Sprint Review, dan Sprint Retrospective. Berikut adalah contoh event nya.

Dan bagaimana cara Scrum event dinilai baik adalah dengan melihat Scrum artifact nya.

Improvement/Lesson

  1. Menerapkan Prinsip Kolaborasi dan Komunikasi yang Kuat: Penting untuk menciptakan budaya kolaboratif di antara anggota tim, di mana kami saling mendukung, berbagi pengetahuan, dan bekerja sama untuk mencapai tujuan bersama. Komunikasi yang jelas, terbuka, dan teratur juga harus didorong untuk meminimalkan kesalahpahaman dan meningkatkan transparansi dalam proyek.
  2. Menerapkan meeting yang Efektif: Dengan memastikan bahwa pertemuan-pertemuan Scrum, seperti Daily Scrum, Sprint Planning, Sprint Review, dan Sprint Retrospective, diadakan secara teratur, sesuai jadwal, dan diikuti oleh semua anggota tim. Dengan kegiatan bertukar pikiran seperti ini, kami lebih merasa termotivasi dan merasa lebih dihargai satu sama lain.

Singkatnya, Agile Manifesto memberikan prinsip-prinsip penting dalam pengembangan perangkat lunak yang gesit dan adaptif. Menerapkan prinsip-prinsip ini ke metodologi Scrum membantu Kami meningkatkan efisiensi dan kecepatan dalam develop produk. Dengan merangkul nilai dan prinsip inti Agile, tim dapat meningkatkan kolaborasi dalam team, meningkatkan perangkat lunak secara efisien, dan merespons perubahan dengan cepat.

Referensi:
https://blog.logrocket.com/product-management/agile-manifesto-4-values-12-principles-explained/

https://www.digite.com/agile/scrum-methodology/

--

--