149
Universitas Katolik De La Salle Manado
email: [email protected]
ABSTRACT
Overtime evolution happens for software development processes. Few methods that have appeared previously as Waterfall, Agile and Iterative usually cannot meet the needs of dynamic users especially in website development. Scrum is a flexible method in software development that is considered to meet this challenge. This time, writer will attempt to implement Scrum methods in a dynamic site that contains the information needs of commodity prices to prove this opinion. This study is expected to answer which method is suitable for the needs of today's users using Scrum based on initial plan (Backlog).
Keywords: Website, Flexible, Backlog
1 Pendahuluan
Seiring tuntutan pengguna yang makin besar dalam proses pembuatan perangkat lunak, maka dikembangan sebuah varian baru dalam kerangka kerja penanganan proyek teknologi informasi[1]. Metode Kerangka kerja Scrum, adalah jenis baru dari metodologi Agile yang diharapkan dapat meningkatkan kecepatan dan fleksibilitas dalam pengambangan perangkat lunak.
Sebuah situs seringkali digunakan oleh organisasi untuk menyajikan informasi bagi pelanggan atau siapa saja sebagai sarana promosi atau komunikasi. Hal ini menjadi penting bagi organisasi yang kelangsungan bisnisnya sangat bergantung pada teknologi informasi seperti situs dinamis. Dengan besarnya kebutuhan untuk selalu mengikuti perkembangan teknologi dan keselarasannya dengan bisnis, maka pembuatan situs dinamis memerlukan kerangka kerja dan personil yang handal[1].
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
150
2 Tujuan
Tujuan dari penulisan ini adalah untuk memberi pengetahuan mengenai kerangka kerja Scrum dan implementasinya pada pengembangan perangkat lunak khususnya situs yang diakses melalui internet.
3 Metode
Metode penelitian yang digunakan adalah Action Research dimana disini penulis mencoba metode baru untuk meningkatkan produktifitas dan fleksibilitas dengan cara mengubah proses pengembangan perangkat lunak situs dengan tampilan yang sering berubah[4]. Proses pengembangan metode ini dapat dilihat di Gambar 1.
Gambar 1. Proses Metode Penelitian Action Research [4]
4 Metodologi Scrum
Proses pengembangan sistem memiliki tingkat kompleksitas yang tinggi. Seringkali pengguna atau lingkungan organisasi menuntut perubahan secara tiba-tiba, yang tidak diantisipasi oleh tim pengembang. Kondisi ini sulit diantisipasi oleh metode pengembangan sistem konvensional seperti Waterfall
151 atau Spiral. Pemilihan metodologi memegang peran penting dalam kemungkinan suksesnya sebuah proyek. Scrum membuat perbedaan signifikan karena produk yang dihasilkan akan disesuaikan dengan lingkungan seiring proses pengembangan sistem. Salah satu perbedaan penting adalah backlog yaitu daftar kebutuhan pengguna yang harus ada dalam produk yang akan diselesaikan. Berbeda dengan metodologi yang lain backlog ini dapat berubah pada tiap tahapan pengembangan sistem[3]. Selain terdiri dari beberapa Sprint,
SCRUM terdiri dari tiga fase dengan detail sebagai berikut:
4.1 Pregame
Perencanaan: Ditentukan dari backlog yang sudah ada, termasuk jadwal dan biaya. Bila sebuah sistem baru akan dikembangkan, fase ini akan terdiri dari proses konseptualiasi dan analisa. Bila proyek terdiri dari pengembangan sistem yang lama, fase ini akan terdiri dari analisa terbatas [3].
Arsitektur: mendesain bagaimana daftar backlog akan diimplementasikan. Fase ini meliputi modifikasi arsitektur sistem dan desain di tingkat pengguna. 4.2 Game
Pengembangan Sprints: pengembangan fungsi turunan yang baru, dengan mempertimbangkan variabel waktu, kebutuhan, kualitas, biaya, dan penyelesaian. Interaksi variabel-variabel ini akan menentukan akhir dari fase ini. Sistem akan menggunakan beberapa pengembangan Sprint, perulangan untuk pengembangan sistem [3].
4.3 Postgame
Penutupan: persiapan release produk, termasuk dokumentasi dan testing [3]. Sebagai perbandingan, karakteristik utama beberapa metodologi pengembangan sistem dapat dilihat sebagai berikut:
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
152
Tabel 1. Perbandingan Metodologi Pengembangan Sistem
Seperti dilihat pada Tabel 1, metodologi Scrum hanya membutuhkan proses yang jelas pada tahap perencanaan dan penyelesaian saja, sedangkan produk akhir, biaya, dan jadwal penyelesaian dilakukan pada saat proyek berjalan[3]. Fleksibilitas dari metode ini dapat terlihat jelas pada penyesuaian, fleksibilitas dan transfer pengetahuan yang dapat dilakukan kapan saja setiap akhir dari sebuah Sprint.
5 Tim Scrum
Tim Scrum tidak mencakup peran tradisional seperti programmer, desainer, tester, atau arsitek. Semua orang pada proyek bekerja sama untuk menyelesaikan set pekerjaan mereka secara kolektif dan berkomitmen untuk menyelesaikannya. Sebuah tim Scrum biasanya terdiri dari lima sampai sembilan orang. Untuk skala proyek yang besar Scrum terdiri dari beberapa tim. Teknik terkenal dalam Scrum disebut "Scrum of Scrums". Dengan pendekatan ini masing-masing tim diwakili oleh satu orang untuk mengkoordinasikan pekerjaan dengan tim yang lain. Pertemuan ini dapat dilakukan setiap hari, namun bila dilaksanakan dua sampai tiga kali seminggu sudah cukup[2].
153 5.1 Scrum Master
Scrum Master bertanggung jawab untuk memastikan fase metodologi
Scrum dilakukan dengan baik. Scrum Master melindungi tim dan memastikan
mereka tidak terlalu berkomitmen dengan apa yang mereka kerjakan, karena perubahan dapat terjadi pada tiap Sprint. Selain itu, Scrum Master juga memfasilitasi pertemuan harian dan bertanggung jawab untuk mengatasi hambatan yang terjadi. Peran Scrum Master biasanya diisi oleh seorang manajer proyek atau pemimpin tim teknis tapi bisa juga diisi oleh siapa saja[2].
5.2 Product Owner
Product Owner (biasanya seseorang dari Pemasaran atau pengguna
kunci dalam pengembangan internal) memprioritaskan 'Product Backlog' (daftar yang sangat rinci mengenai apa yang harus dilakukan). Tim Scrum mengurutkan Product Backlog berdasarkan prioritas dan berkomitmen untuk menyelesaikan mereka selama Sprint. Daftar ini nantinya akan disebut Sprint
Backlog[2].
5.3 Product Backlog
Product Backlog adalah daftar utama dari semua fungsi yang
diinginkan dalam produk. Metodologi Scrum tidak mengharuskan dokumentasi semua persyaratan pada awal proyek.. Biasanya, sebuah tim Scrum dan Product
Owner mulai dengan menuliskan segala sesuatu yang bisa mereka selesaikan
dengan mudah. Hal ini biasanya sudah cukup untuk Sprint yang pertama.
Product Backlog kemudian dibiarkan berkembang sesuai kebutuhan produk dan
pelanggan [2].
Product Owner menghadiri rapat perencanaan Sprint dengan Produk
Backlog prioritas dan menjelaskannya ke tim. Tim kemudian menentukan fitur
mana yang dapat mereka selesaikan selama Sprint mendatang. Dari Product
Backlog tim kemudian berpindah ke Sprint Backlog. Dengan demikian mereka
memperluas setiap fitur dalam Product Backlog menjadi satu atau lebih tugas
Sprint Backlog sehingga mereka dapat bekerja lebih efektif [2].
5.4 Sprint Review
Pada akhir dari setiap Sprint pertemuan evaluasi akan diadakan. Selama pertemuan ini tim Scrum menunjukkan apa yang telah mereka capai selama
Jurnal Sistem Informasi, Vol.
154
Sprint. Biasanya pertemuan ini diisi demo fitur baru dan dibuat tidak formal untuk hasil yang lebih alami
Secara garis besar tahapan dan tim dalam kerangka kerja pada Gambar 2 sebagai berikut:
Gambar 2.
5 Situs Harga Komoditas
Situs harga komoditas adalah sebuah situs yang
memasukkan harga komoditas strategis secara berkala dan menampilkannya di internet agar para calon pembeli dapat memantau pergerakan harga di pasar dan toko-toko besar. Beberapa informasi yang disajikan pada situs ini antara lain: • Harga komoditas
• Berita seputar komoditas
• Pasar dan toko tempat komoditas dijual • Tabel dan grafik perubahan harga komoditas
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
. Biasanya pertemuan ini diisi demo fitur baru dan dibuat tidak formal untuk hasil yang lebih alami[2].
Secara garis besar tahapan dan tim dalam kerangka kerja Scrum dapat dilihat pada Gambar 2 sebagai berikut:
. Tahapan dan pihak yang terlibat dalam metode Scrum
Situs Harga Komoditas
Situs harga komoditas adalah sebuah situs yang dikembangkan untuk memasukkan harga komoditas strategis secara berkala dan menampilkannya di internet agar para calon pembeli dapat memantau pergerakan harga di pasar dan
toko besar. Beberapa informasi yang disajikan pada situs ini antara lain: komoditas
Berita seputar komoditas
Pasar dan toko tempat komoditas dijual Tabel dan grafik perubahan harga komoditas
. Biasanya pertemuan ini diisi demo fitur baru dan dibuat tidak formal
dapat dilihat
Scrum[2]
dikembangkan untuk memasukkan harga komoditas strategis secara berkala dan menampilkannya di internet agar para calon pembeli dapat memantau pergerakan harga di pasar dan
155 Selain informasi di atas terdapat beberapa peran pengguna yang memiliki tugas dan akses berbeda pada halaman situs. Peran tersebut dibagi menjadi berikut: • Administrator : bertugas mengelola hak akses pengguna beserta berita dan
profil pasar dan toko
• Operator : bertugas memasukkan data harga komoditas setiap hari
• Otorisator : bertugas memeriksa data yang dimasukkan operator sebelum ditampilkan ke situs.
• Publik: melihat informasi yang ditampilkan di situs.
Dalam pengerjaannya proyek ini akan dikerjakan oleh 5 personil dengan tugas sebagai berikut:
• Manajer Proyek: bertugas untuk memantau, mengendalikan dan bertanggung jawab terhadap pengerjaan proyek secara keseluruhan
• Analis Sistem: bertugas melakukan studi kelayakan, analisa dan desain
untuk memenuhi kebutuhan pengguna dan aplikasi
• Programmer 1: memimpin proses desain, melakukan coding, dan tes
terhadap program untuk mendukung sistem aplikasi
• Programmer 2: membantu tugas Programmer 1
• Network Engineer: melakukan analisa dan desain komunikasi dan jaringan
untuk integrasi dan dukungan terhadap sistem yang dibangun.
6 Pengembangan Situs Harga Komoditas Menggunakan Scrum
Pada bagian ini penulis ingin mengimplementasikan metodologi Scrum pada pengembangan situs harga komoditas dengan menggunakan lima personil. Tahapan-tahapan yang digunakan akan dijelaskan pada bagian selanjutnya. 6.1 Menentukan Product Backlog
Langkah pertama dari Scrum adalah penentuan dari fitur berdasarkan prioritasnya oleh Scrum Master. Dalam hal ini peran Scrum Master dipegang oleh Manajer Proyek[2]. Daftar fitur-fitur yang akan dibangun sesuai prioritasnya dapat dilihat pada Tabel 2 sebagai berikut:
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
156
Tabel 2. Daftar Fitur dalam Pengembangan Situs Harga Komoditas
No Deskripsi Fitur
1 Masukan harga komoditas oleh operator 2 Persetujuan harga oleh otorisator 3 Tampilan harga komoditas di situs
4 Tampilan tabel dan grafik di situs berdasarkan masukan harga komoditas
5 Masukan berita oleh administrator 6 Tampilan berita di situs
7 Masukan profil pasar dan toko oleh administrator 8 Tampilan profil pasar dan toko di situs
Sehingga total terdapat delapan fitur yang akan dikembangkan di situs harga komoditas. Daftar fitur ini kemudian disebut dengan Product Backlog.
6.2 Sprint Planning Meeting
Setelah menentukan Product Backlog diadakan meeting pada setiap awal Sprint untuk mengevaluasi Product Backlog, mendiskusikan tujuan dan misi dari tiap fitur sesuai keinginan Product Owner. Pada bagian ini setiap anggota tim akan menentukan berapa jam tiap anggota akan habiskan untuk melaksanakan pekerjaan pada tiap fitur. Detailnya dapat dilihat pada Tabel 3 berikut:
157 Tabel 3. Tabel Waktu Kerja Tim
Lama Sprint 4 Minggu Jumlah Hari Kerja 12 Hari
Peran dalam tim Jumlah hari kerja selama
Sprint
Jumlah Jam/Hari Total Jam Selama Sprint pertama
Manajer Proyek (Scrum Master)
9 Hari 4 Jam 32 Jam
Analis Sistem 10 Hari 4 Jam 40 Jam
Programmer 1 12 Hari 5 Jam 60 Jam
Programmer 2 11 Hari 4 Jam 44 Jam
Network Engineer 5 Hari 4 Jam 20 Jam
Lama Sprint pertama ditentukan menjadi empat minggu karena tim hanya terdiri dari lima orang, dan fitur yang dikerjakan masih berupa template. Setelah jam kerja ditentukan, tim dapat mulai mengerjakan fitur pertama dalam Product
Backlog. Fitur tersebut dikerjakan bersama-sama sesuai dengan perannya
masing-masing dalam tim. Semua perubahan yang terjadi selama pengembangan harus ditunda sampai Sprint selanjutnya.
6.3 Sprint Backlog
Waktu kerja tim yang sudah ditentukan dibagi lagi menjadi beberapa tugas bagi setiap anggota tim, dan disebut dengan Sprint Backlog. Pada bagian ini setiap anggota tim mendapatkan pembagian waktu untuk menyelesaikan fitur yang sudah didefinisikan di Product Backlog. Detailnya dapat dilihat pada Tabel 4 sebagai berikut:
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
158
Tabel 4. Sprint Backlog untuk Fitur Pertama
Jumlah sisa jam/hari dalam Sprint
Fitur Backlog Task Pemilik Task Perkiraan Waktu (Jam) H 1 H 2 H 3 H 4 H 5 H 6 H 7 H 8 H 9 H 10 H 11 H 12 Masuka n harga komodit as oleh operator Desain Proses Bisnis Analis Sistem 3 Desain Antarmu ka Analis Sistem 5 Desain Basis Data Analis Sistem 5 Coding Front End Program mer 1 20 Coding Back End Program mer 2 20 Testing Manajer Proyek 2 6.4 Scrum Harian
Sebagai praktik untuk memantau kinerja, setiap hari perlu diadakan meeting untuk pelaporan apa saja yang sudah tiap anggota tim kerjakan. Pada tahap ini tidak semua anggota tim harus hadir, namun lebih kepada anggota yang terlibat khusus pada fitur yang sedang dikembangkan. Pada setiap akhir meeting, waktu penyelesaian diperbaharui untuk mengetahui sisa pengerjaan yang harus dikejar selama Sprint berjalan. Contoh pelaksanaan Sprint pertama untuk fitur masukan harga komoditas dapat dilihat pada Tabel 5 berikut:
159 Tabel 5. Sprint Backlog untuk Fitur Pertama
Jumlah sisa jam/hari dalam Sprint
Fitur Backlog Task Pemilik Task Perkiraan Waktu (Jam) H 1 H 2 H 3 H 4 H 5 H 6 H 7 H 8 H 9 H 10 H 11 H 12 Masuka n harga komodit as oleh operator Desain Proses Bisnis Analis Sistem 3 1 0 0 0 0 0 0 0 0 0 0 0 Desain Antarmu ka Analis Sistem 5 5 4 2 0 0 0 0 0 0 0 0 0 Desain Basis Data Analis Sistem 5 5 5 5 5 3 0 0 0 0 0 0 0 Coding Front End Program mer 1 20 2 0 2 0 2 0 1 8 1 6 1 4 1 0 6 3 0 0 0 Coding Back End Program mer 2 20 2 0 2 0 2 0 2 0 2 0 1 8 1 4 1 2 8 4 0 0 Testing Manajer Proyek 2 2 2 2 2 2 2 2 2 2 2 2 0
Seperti dapat dilihat pada gambar bahwa pembangunan situs harga komoditas dimulai dengan fitur pertama dan desain sistem. Desain sistem sendiri dilakukan oleh analis sistem meliputi proses bisnis, antarmuka, dan basis data. Setelah desain selesai baru kemudian menjadi tugas programmer untuk melakukan
coding sampai dapat dites oleh manajer proyek. Proses ini dilakukan juga untuk
fitur lain dalam backlog, dan bila tidak selesai maka Sprint lanjutan dilakukan sampai produk yang dihasilkan memenuhi kebutuhan pengguna.
8 Hasil Penelitian
Dari penelitian di atas, penulis mendapatkan beberapa hasil sebagai berikut: 1. Scrum cocok digunakan untuk pengembangan situs dengan ukuran tim kecil
dan banyak perubahan karena fase Sprint dalam Scrum dapat mengantisipasi perubahan tersebut.
2. Metodologi Scrum mungkin dapat digabungkan dengan metodologi lain seperti Waterfall dalam pengembangannya terutama dalam pembuatan Sprint
Backlog.
3. Perlu diberikan batasan yang jelas sampai kapan fase Sprint harus dilakukan agar metodologi ini tidak terlalu memakan waktu dan biaya.
Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160
160
9 Kesimpulan
Munculnya Metodologi Scrum membuktikan bahwa dari hari ke hari proyek pengembangan sistem makin memerlukan fleksibilitas yang tinggi untuk dapat memenuhi kepuasan pelanggan. Hal ini terutama sering terjadi pada pengembangan aplikasi berbasis web, yang menjadi salah satu cara mencapai keunggulan berkompetisi.
DAFTAR PUSTAKA
[1] Best Practices for Designing Mobile Applications [online] Available at:<http://www.usercentric.com/news/2009/08/26/best-practices-designing-mobile-applications> [Accessed 09 July 2012]
[2] Ken Schwaber. 2004. Agile Project Management with Scrum, Microsoft Press. [3] Scrum Development Process [online] available at:
<http://www.jeffsutherland.org/oopsla/schwapub.pdf> [Accessed 20 March 2010]