Intro - Belajar JIRA dan Agile Scrum - Dasar Pemula

Agile

    Agile, Agile bukanlah istilah dalam JIRA yang akan kita bahas dalam postingan ini, dan juga bukan kependekan kata dari Aje Gile ya (Saya sering melihat beberapa orang di sosial media atau bahkan linkedin, membuat lelucon kata-kata Agile ini). Tapi ada lebih baiknya apabila kita mengenal apa itu Agile, karena JIRA adalah alat yang dibuat, untuk mendukung penggunaan Agile ini.

    Agile, berdasarkan wikipedia adalah pendekatan praktis dengan menentukan kebutuhan-kebutuhan dan membuat solusi melalui usaha kolaborasi antara tim yang mandiri dan terdiri dari bermacam-macam keahlian, dan dengan pengguna / end users. Jadi, Agile merupakan salah satu metodologi pendekatan praktis yang meng-adaptasi perencanaan (planning), pengiriman awal (early delivery), dan pengembangan bertahap dan berkesinambungan, sambil tetap mendukung perubahan yang fleksible bila dibutuhkan. 

    Agile mengembangkan pendekatan dari masukan-masukan pengguna, menentukan masalah dan membuat solusi dari masukan tersebut, lalu mengirimkan solusi tersebut kepada pengguna secara bertahap dan berkesinambungan. Tim yang meng-implementasikan Agile, diharapkan dapat bergerak cepat, fleksible dan mudah beradaptasi sesuai kebutuhan dan masukan, tanpa harus meninggalkan ritme kerja dan meninggalkan tim yang lain.

SCRUM

    Scrum adalah sebuah proses Agile yang memungkinkan sebuah tim untuk dapat fokus membuat sebuah solusi / produk dengan nilai bisnis yang tinggi, serta dapat meng-evaluasi produk yang sedang berjalan, dalam jangka waktu yang pendek (biasanya, jangka waktunya dibuat sekitar 2minggu - 1 bulan, dan dilakukan secara berulang). 

    Biasanya, solusi / produk mempunyai prioritas, yang akan di set oleh tim bisnis. Sementara tim yang meng-adopsi sistem Scrum, diharapkan untuk menentukan cara terbaik untuk mendapatkan sebuah solusi yang terbaik dengan jangka waktu yang singkat, secara mandiri.

    Scrum sendiri biasanya mempunyai kerangka kerja yang terdiri dari :

1. Roles / peran, terdapat 3 peran utama yang mendukung scrum, yaitu Product Owner, Scrum Master dan Development Team
2. Ceremonies / Event, scrum membagi setiap iterasi yang mana akan selalu mempunyai 4 events: Sprint Planning, Daily Scrum, Sprint Review, and Sprint Retrospective.
3. Scrum Artifacts, didalam scrum, dikenal istilah penamaan obyek Scrum, seperti Product Backlog, Sprint Backlog dan Burndown Chart

    Tapi saya tidak akan membahas lebih dalam mengenai scrum, sprint dan lainnya, karena akan sangat panjang. Jadi mari kita langsung masuk ke bahasan JIRA ya ^^

JIRA

    Mungkin teman-teman yang berkecimpung di dunia IT, terutama tim developer, sudah familiar dan sudah memakai tool yang dibuat oleh sebuah perusahaan yang berlokasi di Australia, yaitu Atlassian. Tapi tidak ada salahnya kita mengulas dari awal sehinggal lebih memahami dan lebih tahu apa itu JIRA. Seperti kata pepatah: tidak kenal maka tidak sayang, kalau sudah kenal, lebih di pahami lagi supaya semakin cinta (yang terakhir ini sepertinya tidak ada dipepatah, bisa-bisanya author saja ya ^^).

    Yuk gaes, kita mulai saja. JIRA, sebelumnya sudah dibahas bahwa JIRA adalah sebuah alat / tool yang dibuat oleh Atlassian, yang mana penamaannya diambil dari kata bahasa Jepang yaitu "GOJIRA", atau biasa kita taunya "Godzilla". 

JIRA dapat digunakan untuk:

1. Bug Tracking
2. Issue Tracking
3. Project Management / Planning

    OK, dari fungsi-fungsi diatas, kita bisa mengambil kesimpulan bahwa dalam sebuah proyek, pasti ada tim-tim yang terdiri dari berbagai fungsi, dengan masalah yang dihadapi masing-masing. JIRA dibuat untuk dapat membantu tim-tim tersebut agar dapat bekerja sama untuk menyelesaikan suatu masalah, baik dari dalam tim mereka sendiri atau bila masalah tersebut berhubungan dengan tim lain, dengan deskripsi masalah yang sudah ada. 

    Tujuan akhir dari JIRA yaitu agar produk yang dirilis adalah sebuah produk yang baik dan memenuhi ekspektasi, karena semua masalah akan dapat dilacak, dapat direncanakan dan dikerjakan sesuai target dan tujuan yang ingin dicapai. 

    Sesuai topic, JIRA dapat digunakan untuk metodologi Agile karena mempunyai kumpulan fitur-fitur mayor yang memang dibuat untuk mendukung Agile seperti Scrum / Kanban board, Agile Reporting (Auto Reported Generated Charts), dan Roadmap Planning. Jadi ketika teman-teman mulai mendengar / melihat istilah seperti boards, estimation, atau cards, maka sudah waktunya untuk teman-teman mulai berpikir bagaimana cara meng-implementasikan Agile agar bisa dipraktek-kan langsung dengan kerjaanmu.

Pertama, kamu bisa mendaftarkan JIRA dulu di alamat https://www.atlassian.com/software/jira, kamu bisa mendaftar baru atau menggunakan akun gmail kamu, kalau Author, selalu menggunakan akun gmail biar tidak repot menyimpan banyak akun, hehe. JIRA sendiri gratis sampai 10 pengguna / 2 GB storage, ini sudah lebih dari cukup untuk teman-teman yang mau buat proyek pribadi atau baru mau belajar, jadi jangan khawatir. 

Ketika sudah mendaftar, JIRA akan membantu kamu melakukan set-up JIRA kamu seperti gambar dibawah ini. Kamu bisa menandai kalau kamu benar-benar pengguna baru dan baru mempelajari Agile, atau bisa menandai kalau kamu sudah berpengalaman.

Selanjutnya, kamu akan diminta untuk memilih sistem papan / board seperti apa yang akan kamu pakai untuk mengatur proyek kamu, kamu bisa memilih papan Scrum / papan Kanban. Masing-masing memiliki kelebihan dan kekurangannya, biasanya kalau kamu punya jadwal yang ketat, kamu lebih cocok menggunakan papan Scrum. Kalau kamu lebih memilih jadwal yang fleksibel dan ingin mengatur rencana pekerjaan berdasarkan backlog semaumu, papan Kanban lebih cocok buat kamu.


 Yuk kita lanjut, di contoh, Author menggunakan papan Scrum, karena sesuai topik Agile Scrum, tapi ini untuk belajar saja. Jangan khawatir, yang manapun tetap mendukung metodologi Agile kok. Ketika sudah memilih papan Scrum, maka kamu akan diminta memasukan nama proyek kamu, dan akan dialihkan ke halaman muka proyek kamu:


Di sini, kamu bisa lihat ada Active Sprints, sprint yang sedang berjalan saat ini, backlog, dan reports di menu kiri. Yuk kita telusuri masing-masing komponen ini:
1. Backlog
Halaman ini berisikan semua product / sprint backlog untuk proyek kita. Baik itu User Story, maupun bug / error report.

Saat ini, belum ada sprint aktif yang kita tentukan, jadi kita bisa meng-klik tombol Create Sprint untuk mulai menentukan rentang waktu untuk per sprint kita, lalu kita pindahkan backlog yang akan dikerjakan dalam sprint aktif ini, lalu kita bisa start sprintnya. Biasanya waktu 1 sprint itu 2minggu - 1 bulan. (Pada contoh dibawah, saya tidak mengisikan point dan backlognya hanya contoh saja ya) 

Ketika sprint di mulai, menu Active Sprint akan menunjukan alur kerja yang otomatis ada di JIRA, alur kerja / workflow ini bisa diatur sesuai kebutuhan pengembangan di masing-masing tim. Basisnya, alur kerja di JIRA di bagi 3, to do, in progress dan done. Definisi done sendiri tergantung, ada yang Done apabila sudah melalui review koding, testing user dan lainnya. 
Selanjutnya, menu All Reports, menu ini menampilkan seluruh pilihan report yang bisa ditampilkan per sprint. Biasanya yang paling sering digunakan untuk melihat keseluruhan proses Sprint, adalah burndown chart dan Sprint Report. Dari chart ini, biasa akan terlihat apabila developer memaksimalkan kemampuan dan apakah bisa me-manage waktu untuk mengerjakan backlog, dan backlog apa yang memakan waktu.


Ketika Sprint sudah mendekati batas waktu, kita bisa mengatur status sprint menjadi complete, atau selesai. JIRA akan mengeluarkan pop-up yang berisikan kesimpulan dari Sprint yang aktif, seperti isu yang sudah selesai dan belum selesai. Lalu apakah yang belum selesai ini akan dibawa ke sprint berikutnya, atau dikembalikan ke backlog.


Biasanya setelah sprint diselesaikan, Tim akan melakukan sprint review dan retrospective untuk melakukan review bersama untuk membahas apa yang telah dikerjakan, beserta presentasi, apa yang bisa menjadi perbaikan, dan apa saja yang baik yang bisa diteruskan untuk tim. Kemudian Tim akan melakukan sprint planning lagi untuk memulai sprint yang baru, dan seterusnya.

Ok, sekian begitu saja permulaan mengenai JIRA dan Agile Scrum. Semoga saya bisa menerangkan lebih lanjut di lain kesempatan  ya. Terima kasih telah membaca!

Sumber: Atlassian Jira, Wikipedia

Comments

Popular posts from this blog

Product Manager - Apa, Siapa & Bagaimana?

Upgrading Python version di Mac OS

Data Science - Pengenalan