IMPLEMENTASI METODOLOGI SCRUM DALAM PEMBANGUNAN

Download Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160. 150. 2. Tujuan. Tujuan dari penulisan ini adalah untuk memberi pengetahua...

0 downloads 511 Views 557KB Size
Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas Made Krisnanda Program Studi Teknik Informatika, Fakultas Teknik 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].

149

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160

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

150

Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas (Made Krisnanda)

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:

151

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160

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].

152

Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas (Made Krisnanda)

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

153

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160

Sprint.. Biasanya pertemuan ini diisi demo fitur baru dan dibuat tidak formal untuk hasil yang lebih alami[2]. alami Secara garis besar tahapan dan tim dalam kerangka kerja Scrum dapat dilihat pada Gambar 2 sebagai berikut:

Gambar 2.. Tahapan dan pihak yang terlibat dalam metode Scrum[2] Scrum

5

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-toko toko besar. Beberapa informasi yang disajikan pada situs ini antara lain: • • • •

154

Harga komoditas Berita seputar komoditas Pasar dan toko tempat komoditas dijual Tabel dan grafik perubahan harga komoditas

Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas (Made Krisnanda)

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: • • • • •

6

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.

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:

155

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160

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:

156

Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas (Made Krisnanda)

Tabel 3. Tabel Waktu Kerja Tim

Peran dalam tim

Lama Sprint

4 Minggu

Jumlah Hari Kerja

12 Hari

Jumlah hari kerja selama Sprint

Jumlah Jam/Hari

Total Jam Selama Sprint pertama

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

Manajer Proyek (Scrum Master)

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:

157

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 160

Tabel 4. Sprint Backlog untuk Fitur Pertama Jumlah sisa jam/hari dalam Sprint Fitur Backlog

Masuka n harga komodit as oleh operator

Task Desain Proses Bisnis Desain Antarmu ka Desain Basis Data Coding Front End Coding Back End Testing

Pemilik Task

Perkiraan Waktu (Jam)

Analis Sistem

3

Analis Sistem

5

Analis Sistem

5

Program mer 1

20

Program mer 2 Manajer Proyek

20

H 1

H 2

H 3

H 4

H 5

H 6

H 7

H 8

H 9

H 10

H 11

H 12

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:

158

Implementasi Metodologi SCRUM dalam Pembangunan Situs Harga Komoditas (Made Krisnanda)

Tabel 5. Sprint Backlog untuk Fitur Pertama Jumlah sisa jam/hari dalam Sprint Fitur Backlog

Masuka n harga komodit as oleh operator

Task Desain Proses Bisnis Desain Antarmu ka Desain Basis Data Coding Front End Coding Back End Testing

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

Analis Sistem

3

1

0

0

0

0

0

0

0

0

0

0

0

Analis Sistem

5

5

4

2

0

0

0

0

0

0

0

0

0

Analis Sistem

5

5

5

5

5

3

0

0

0

0

0

0

0

Program mer 1

20

2 0

2 0

2 0

1 8

1 6

1 4

1 0

6

3

0

0

0

Program mer 2 Manajer Proyek

20

2 0

2 0

2 0

2 0

2 0

1 8

1 4

1 2

8

4

0

0

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.

159

Jurnal Sistem Informasi, Vol. 9 No. 2, September 2014: 149 - 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: [Accessed 09 July 2012] [2] Ken Schwaber. 2004. Agile Project Management with Scrum, Microsoft Press. [3] Scrum Development Process [online] available at: [Accessed 20 March 2010] [4] Stringer,E.2007. Action Research, California:Springer.

160