Scrum

Scrum

Saat ini, metode-metode agile sudah banyak digunakan oleh industri perangkat lunak, salah satunya adalah Scrum. Scrum adalah framework untuk mengembangkan dan mempertahankan produk yang kompleks. Scrum adalah kerangka kerja di mana orang dapat mengatasi masalah adaptif yang kompleks, tetapi juga secara produktif dan kreatif memberikan produk dengan nilai setinggi mungkin.

Framework Scrum terdiri dari Tim Scrum dan peran(role), eventartifacts, dan aturan yang terkait. Setiap komponennya memiliki tujuan tertentu dan penting untu keberhasilan Scrum. Tim Scrum terdiri atas product ownerscrum master, dan development teamEvent yang dilakukan adalah sprint planning, sprint, daily stand up meeting, sprint review, dan sprint retrospective. Adapun, artifacts yang dipakai adalah product backlog, sprint backlog, dan increment. Sedangkan, aturan digunakan untuk mengatur hubungan dan interaksi antara role, artifacts, dan event tersebut.

Scrum Role

Product Owner

  • Berperan sebagai perwakulan dari sura customer dan berperan dalam mengurus product backlog. product owner memiliki tanggung jawab untuk menentukan apa yang harus team kerjakar beserta urutan pengerjaannya.

Scrum Master

  • Merupakan suatu posisi yang spesial dalam scrum dimana scrum master berperan untuk memastikan pekerjaan team berjalan dengan baik dan mulus dengan memfasilitasi scrum dan menghilangkan hambatan dalam proses yang sedang dikerjakan. semua hal yang terjadi dan dilakukan oleh team dalam mengerjakan pekerjaan mereka dalam sprint haru menjadi perhatian seorang scrum master.
  • Dengan peran ini maka scrum master adalah fasilitator scrum dan harus bersifat tegas dalam memastikan tema tidak mengerjakan hal yang menyimpang dari perkerjaan seharusnya maupun dari scrum sprint,dan memastikan sprint tetap berjalan pada track yang benar.
  • Scrum master mengurus logistic dan menjadwal berbagai scrum events dan mengelola srum tools.
  • Scrum master bertugas memastikan bahwa team tidak terganggu dan terpecah konsentrasinya oleh pekerjaan diluar sprint bahkan oleh product owner.

Development Team Member

  • Semua orang yang menulis dan mengetes code, bertanggung jawab untuk self-assigning tugas dan mengecek apakah perkerjaan sudah sesuai dengan acceptance kriteria.
  • Berkomitment untuk menyelesaikan pekerjaan-pekerjaan dalam suatu sprint.
  • Berbagi definition of done dan mengeset standar yang digunakan dan disepakati dalam team sebelum mereka menyatakan backlog items selesai.
  • Idealnya scrum team member memiliki fungsi yang bersilangan yang artinya merkea punya keahlian yang fleksible dalam berkontribusi didalam team, misalnya frontend developer di dalam team tapi jaka ada pekerjaan lain dalam print tsb yang membutuhkan bantuannya maka dia akan ikut berpartispasi dalam menyelesaikan tugas tersebut. hal ini karena Output dari team lebih penting dari pada output personal team member.
  • Team member dapat bertanya pada scrum master tentang bagaimana team membawa sprint tetap melaju kedepan.
  • Dalam scrum development team direpresentasikan oleh programmer yang bertanggung jawab menulis dan mengetest code.

Pola Proses Scrum

Scrum menekankan penggunaan serangkaian pola proses perangkat lunak yang telah terbukti efektif untuk proyek dengan jadwal yang ketat, perubahan kebutuhan, dan kekritisan bisnis. Masing-masing pola proses ini mendefinisikan serangkaian tindakan pengembangan (development activity):

Backlog: daftar kebutuhan atau fitur proyek yang diprioritaskan yang memberikan nilai bisnis bagi pelanggan. Item dapat ditambahkan ke backlog kapan saja (ini adalah bagaimana perubahan diperkenalkan). Manajer produk menilai backlog dan memperbarui prioritas sesuai kebutuhan.

Sprint: terdiri dari unit kerja yang diperlukan untuk mencapai kebutuhan yang ditentukan dalam jaminan yang harus sesuai dengan time box yang telah ditentukan (biasanya 30 hari). Perubahan (mis. backlog work items) tidak diperkenalkan selama sprint. Oleh karena itu, sprint memungkinkan anggota tim untuk bekerja dalam lingkungan jangka pendek namun stabil.

Scrum Meeting: pertemuan singkat (biasanya 15 menit) yang diadakan setiap hari oleh tim Scrum. Tiga pertanyaan kunci diajukan dan dijawab oleh semua anggota tim, yaitu (1) apa yang Anda lakukan sejak pertemuan tim terakhir? (2) Apa kendala yang Anda hadapi? (3) Apa yang Anda rencanakan untuk dicapai dengan pertemuan tim berikutnya?.

Seorang pemimpin tim, yang disebut Scrum master, memimpin pertemuan dan menilai tanggapan dari setiap orang. Scrum meeting membantu tim untuk mengungkap potensi masalah sedini mungkin. Juga, pertemuan harian ini mengarah pada “sosialisasi pengetahuan”  dan dengan demikian mempromosikan struktur tim yang mengatur diri sendiri.

Demos: menyampaikan software increment ke pelanggan sehingga fungsionalitas yang telah diterapkan dapat diperagakan dan dievaluasi oleh pelanggan. Penting untuk dicatat bahwa demo mungkin tidak mengandung semua fungsionalitas yang direncanakan, melainkan fungsi-fungsi yang dapat disampaikan dalam time box yang ditetapkan.

Beedle dan rekan-rekannya menyajikan diskusi komprehensif tentang pola-pola ini di mana mereka menyatakan: “Scrum mengasumsikan di muka keberadaan kekacauan. . . . ” Pola proses Scrum memungkinkan tim perangkat lunak untuk bekerja dengan sukses di dunia di mana penghapusan ketidakpastian tidak mungkin dilakukan.

 

Sumber :

Roger S. Pressman – Software Engineering_ A Practitioner’s Approach, 7th Edition-McGraw-Hill Higher Education (2010)

https://medium.com/learnfazz/pengembangan-perangkat-lunak-agile-6131d342380f

Agile dengan Scrum

https://id.wikipedia.org/wiki/Scrum

Bookmark the permalink.

Leave a Reply

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