Software Development 101: Agile Untuk Startup Dan UKM!

Software Development 101: Agile Untuk Startup Dan UKM!

by
Rian Romadhon
February 19, 2021

Membangun software yang tepat guna, bukanlah perkara yang mudah. Bahkan, itu sejak pertama kali mesin komputer yang berukuran super masif ditemukan. Hingga metodologi pembuatan software; Agile, ditemukan.

Kamu bisa menganalogikan software sebagai jembatan dan jalan yang kompleks. Ada waktu dan biaya yang sudah ditentukan. Bedanya, software memiliki proses development yang berkelanjutan agar tetap relevan dan up to date (dari segi fitur dan fungsi software).

Ada alasan yang cukup “fair” dari analogi tersebut. Katakanlah terjadi “bencana” yang “merusak” struktur dari jembatan & jalan yang berdampak pada pengurangan fungsi serta kapasitas. Butuh waktu secepat-cepatnya 1 bulan untuk memastikan jembatan dan jalan terdampak untuk bisa kembali normal. Dengan satu catatan. Semakin cepat waktu untuk menyelesaikan, semakin banyak pula biaya dan labor yang diperlukan.

Agile untuk startup dan UKM

Dalam dunia software development dan engineering ada perbedaan. Pengembangan berkelanjutan bukan hanya sekadar tentang penambahan fitur dalam software, namun juga mempertebal lapisan keamanan dalam software. Sehingga, “guncangan” dalam software bisa dicegah. Namun, sekalipun pada akhirnya “guncangan” terjadi, perbaikannya pun tidak akan memakan waktu yang lama, sehingga biaya yang diperlukan untuk memperbaiki software juga jauh lebih ekonomis.

Bayangkan, jika waktu perbaikan software baru selesai dalam waktu 1 bulan, bahkan lebih. Kehilangan momen, bahkan mungkin sudah tidak relevan lagi. Contohnya, ketika mobile app ecommerce bermasalah ketika bulan puasa menjelang Lebaran. Bagi produk B2C, momen bulan puasa dan lebaran adalah “harta karun” penjualan karena terjadi peningkatan konsumsi dari masyarakat Indonesia yang mayoritas beragama Islam. Jika tiba-tiba mobile app ecommerce rusak dan butuh waktu yang lama untuk memperbaikinya, maka akan ada kemungkinan mobile app ecommerce kehilangan momen untuk mendapatkan penjualan pada bulan puasa dan lebaran yang hanya terjadi 1 bulan dalam 1 tahun.

Pada akhirnya, “memadamkan api” tidak akan pernah cukup.

Inilah dimana peran Agile akan sangat membantu.

Agile bukanlah metode pembangunan software secara cepat, namun lebih kepada perilisan software secara cepat dan tepat.

Agile Dan MVP

Sebuah proses software development baru bisa dikatakan Agile jika Minimal Viable Product (MVP) bertemu dengan praktik lean business.

Jika menilik filosofi dari MVP itu sendiri, produk digital yang dikembangkan memang bukanlah produk akhir dengan fitur lengkap dan fungsi yang sempurna. Namun, jika dikembangkan dengan metodologi Agile, MVP tersebut sudah dapat memenuhi dan memberikan nilai / value dasar kepada pengguna software. 

Dengan demikian, proses software development bisa terus berjalan dengan dasar feedback yang sudah didapatkan dari pengguna software. Fungsi apa yang perlu dikembangkan, fitur mana yang perlu dihilangkan, dan lain sebagainya. Pada akhirnya, peningkatan pengalaman pengguna akan terus berjalan beriringan dengan development yang tidak pernah berhenti.

Agile untuk startup dan UKM

Misalnya dalam pengembangan MVP blog page website. Minggu pertama, blog page hadir. Minggu kedua, ada penambahan search bar. Minggu ketiga, ada penambahan kategori. Minggu keempat, ada penambahan registrasi email untuk melakukan subscribe artikel dari blog tersebut.

Hanya dalam beberapa minggu setelah software di launch, metodology Agile mampu memberikan nilai / value lebih kepada pengguna. Fokus terhadap nilai yang diberikan, dari pada fitur yang disuguhkan.

Namun, Agile memerlukan cerita pengguna / user story untuk menemukan nilai dari sebuah MVP.

Apa itu cerita pengguna atau user story?

Cerita pengguna / user story merupakan level tertinggi dari penjabaran terkait apa yang harus dilakukan oleh sebuah app / website dari sudut pandang pengguna.

Contoh sederhananya, “Sebagai seorang pembeli, aku ingin….., jadi aku……”

Kalau diimplementasikan dalam sebuah cerita nya, kira-kira seperti ini:

“Sebagai Seorang Calon Pembeli Mobil Bekas, aku ingin memasukan mobil-mobil yang menarik perhatian kedalam daftar watchlist, dari situ aku bisa mengerucutkan pilihan pada satu mobil yang paling cocok denganku”.

Cerita pengguna / user story bukanlah sesuatu hal yang terlalu teknikal. Cerita tersebut dibutuhkan sebagai alat bantu diskusi antara product owner / manager dengan tim software developer. Dari hasil diskusi tersebut, tim Software Developer, yang biasanya dipimpin oleh seorang Software Architect, akan membuat strategi software development untuk mewujudkan cerita pengguna / user story menjadi nyata dengan Sprint.

Apa itu Sprint?

Sprint bukanlah proses coding dan programming, namun lebih kepada istilah terminologi dalam Agile untuk menjelaskan waktu yang dibutuhkan untuk membangun satu fitur dalam website / aplikasi.

Biasanya, setiap satu sprint berlangsung dalam waktu 2 - 3 minggu. Tentu waktu yang ditentukan bisa berubah sesuai dengan kerumitan dan kompleksitas fitur website / aplikasi.

Jika sebuah cerita pengguna / user story tidak bisa selesai dalam satu sprint, maka itu akan menjadi sebuah Epic. Untuk menyelesaikan sebuah Epic, membutuhkan beberapa sprint. Yang menjadi tantangan dalam Epic adalah untuk tetap menjaga peningkatan nilai / value dalam MVP terhadap pengguna / user pada tiap sprint yang rampung.

Eits! Agile Itu Lebih Dari Sekadar User Story Dan Chit-Chat!

“Software yang bekerja dengan baik itu lebih penting dari dokumentasi yang komprehensif.” - menurut Agile Manifesto. Meskipun demikian, itu bukan berarti penolakan terhadap dokumentasi yang baik dalam proses development. Tentu pihak dibalik layar dari Manifesto adalah programmer andal. Mereka tahu benar jika dokumentasi itu penting.

Sampai akhirnya Agile tercipta ketika metodologi Waterfall sedang ramai-ramainya. Pada Waterfall, dokumentasi dan planning software development dilakukan seluruhnya pada awal sebelum proses penulisan coding dimulai. Tahap demi tahap dirampungkan hingga produk website / aplikasi selesai secara utuh (fitur dan fungsi) yang membutuhkan waktu yang tidak sebentar hingga user bisa merasakan sendiri value / nilai dari produk digital tersebut.

Agile untuk startup & UKM

Dengan metodologi Waterfalls, terkadang proyeksi akan suatu proyek pembuatan software (website / aplikasi) bisa memakan waktu hingga berbulan-bulan, bahkan tahunan. Seiring dengan waktu yang berjalan, bisa saja ditengah pengembangan terjadi perubahan kondisi pasar yang harus ditanggapi dengan responsif. Namun sayang, dengan berlandaskan dokumentasi dan rangkaian planning panjang yang sudah dirumuskan di awal perjalanan nampaknya kurang fleksible dalam merespon hal tersebut.

Agile mampu mengakomodasi perubahan tersebut. Bukan hanya techno-centric, namun metodologi agile ini juga turut mendukung terjapainya tujuan bisnis yang sebagian besar akan ditentukan oleh respon pasar atau konsumen (konsumen-sentris).

Kebutuhan bisnis harus tetap terpenuhi secara terperinci. Misalnya, warna identitas website / aplikasi, serta wireframe yang harus digambar secara jelas.

Tim Developer bertanggung jawab akan implementasi tersebut. Dengan berdasarkan dokumentasi yang “bertumbuh”, akan selalu ada istilah “what’s next” dan “how”. Dan itulah kunci untuk menjadi Agile.

Ingat! Agile Bukan Solusi Untuk Semua!

Jangan membuat persepsi bahwa Agile adalah cara cepat untuk membangun website / aplikasi, jika dibandingkan dengan metode lainnya. Metodology agile dapat memberikan responsivitas yang baik terhadap perubahan, bukan mantra ajaib cara cepat membangun website / aplikasi.

Namun, untuk mendapatkan responsivitas yang tinggi, dibutuhkan developer berpengalaman dalam membangun software; Software Architect. Developer bukan hanya bertanggung jawab akan rancang bangun sebuat Software secara Agile, tetapi juga perlu memastikan setiap fiturnya tepat “sasaran”.

Di SoftwareSeni, tim developer dilatih secara matang, bukan hanya dengan sertifikasi yang berkaitan dengan metodologi Agile, namun juga praktik dalam proyek pembuatan Software secara langsung. Sehingga, tim developer SoftwareSeni sudah paham betul seluk-beluk metodologi Agile dan penerapannya dalam proses software development.

Agile untuk startup dan UKM

Jika bisnis yang sedang berjalan bukanlah industri yang memiliki perubahan yang dinamis, tidak membuka market baru, atau memiliki market yang stabil (tidak cepat berubah), mungkin metodologi software development tradisional bisa mengakomodasi kebutuhan tersebut. 

Sehingga, bisa saja ada beberapa jenis bisnis / perusahaan yang justru akan lebih cocok menggunakan metodologi software development selain Agile. Budaya perusahaan, serta lingkungan bisnis secara keseluruhan akan sangat menentukan “kecocokan” ini.

Misalnya, dalam perusahaan yang menerapkan top-down management style dalam mengambil keputusan, Agile adalah pilihan yang salah. Kenapa? Agile adalah tentang mempercayakan developer sebagai key person dalam proses software development. Jika setiap pengambilan keputusan harus melalui proses yang berlapis-lapis, itu sudah akronim dari kata Agile itu sendiri.

Agile dan Singkatnya

Artikel ini memberikan konsep bagaimana cara kerja metode Agile dalam proses software development. Ada banyak hal baik dan buruk yang bisa menjadi pertimbangan ketika mengadopsi Agile sebagai metodologi pengembangan software, baik website ataupun aplikasi.

Jika membutuhkan partner Agile dalam mengembangkan website / aplikasi, SoftwareSeni adalah pilihan yang tepat. Kemampuan beradaptasi serta pelatihan secara menyeluruh telah menjadi budaya perusahaan. Sehingga, integrasi antara kebutuhan bisnis dan teknologi klien dapat terpenuhi dengan baik.

Punya Project atau Ingin Bekerja Sama?

Hubungi kami dan ciptakan software impianmu sekarang!
Office Address Image

SYDNEY

Level 28, 161 Castlereagh St, Sydney 2000
+61 2 8123 0997

YOGYAKARTA

Jl Magelang No 65, Tegalrejo, Yogyakarta, Indonesia 55242
+62 858 6514 9577