Bagaimana Anda bisa merencanakan sumber daya dan anggaran jangka panjang saat menggunakan metodologi Agile?

8

Agile tidak mendorong banyak desain di muka. Ini bagus dari sudut pandang manajemen persyaratan dan pengembangan perangkat lunak, dan memungkinkan proyek untuk beradaptasi dengan perubahan kebutuhan bisnis.

Namun, bagaimana seseorang melakukan perencanaan sumber daya jangka panjang jika Anda tidak benar-benar tahu apa yang akan Anda bangun ketika Anda mulai? Oh tentu, Anda memiliki model konseptual tentang apa yang akan Anda buat, tetapi Anda tidak memiliki detail yang dapat diukur untuk menentukan berapa banyak sumber daya yang Anda perlukan untuk menyelesaikan proyek, atau berapa biayanya.

Adakah yang punya saran tentang bagaimana melakukan perencanaan jangka panjang di lingkungan yang gesit?

Erik Funkenbusch
sumber
1
Apa yang Anda cari dalam "perencanaan sumber daya jangka panjang"? Pada proyek lincah, Anda tidak perlu / memiliki sumber daya khusus (atau seperti saya suka menyebutnya, orang-orang) :)
Marcie
1
Serius? Anda mengatakan Anda tidak perlu orang untuk menulis perangkat lunak?
Erik Funkenbusch
@MystereMan: Saya pikir Marcie berarti Anda tidak memerlukan orang-orang khusus untuk tugas-tugas tertentu, karena metode gesit menekankan bahwa orang-orang harus dapat mengambil alih satu sama lain.
sleske

Jawaban:

2

Saya baru saja mendorong organisasi saya untuk mengujicobakan pendekatan gesit pada salah satu proyek kami. Itu merupakan tantangan bagi manajemen senior karena mereka membutuhkan anggaran yang diproyeksikan dan jadwal sebelum mereka bahkan bisa mendapatkan proyek yang didanai (itu adalah perusahaan perusahaan-y besar).

Jadi, saya melakukan apa yang selalu saya lakukan dalam situasi itu, membuat tebakan yang berpendidikan. Saya melihat ruang lingkup yang kami asumsikan akan memerlukan proyek, memperkirakan waktu pengembangan barang-barang itu, menambahkan beberapa waktu tambahan untuk analis bisnis, DBA, manajer proyek, dll., Menambahkan beberapa lapisan, dan menyebut perkiraan anggaran tersebut. Perhatikan bahwa estimasi "urutan kasar" ini dilakukan di perusahaan saya sebelum setiap proyek air terjun, jadi tidak ada bedanya.

Kemudian, ketika kami memulai proyek lincah, dan kami merasakan kecepatan kami, kami memproyeksikan titik akhir dari proyek berdasarkan pada kecepatan dan poin cerita yang tersisa, dan menemukan bahwa kami berada di depan tingkat tinggi asli saya perkiraan. Tapi itu tidak apa-apa (dan kami harapkan).

Jadi saya kira untuk menggeneralisasi jawaban, itu tergantung pada apa yang Anda maksud dengan "jarak jauh", dan ketika Anda membutuhkan perkiraan ini. Jika Anda membutuhkannya sebelum proyek dimulai, Anda dapat menggunakan metode saya. Jika Anda membutuhkannya selama pelaksanaan proyek, Anda dapat menggunakan konsep perencanaan rilis yang disebutkan Matius Kubicina.

Juga, saya sangat merekomendasikan buku Estimasi Agile dan Perencanaan Mike Cohn yang membantu mengatasi hal-hal semacam ini.

RasionalGeek
sumber
7

Agile memiliki konsep "Release Planning". Seluruh tim berkumpul untuk merencanakan rilis yang akan datang. Saya sudah melakukannya hingga 2-3 bulan sebelumnya. Ini biasanya dilakukan setelah pemilik produk menentukan "produk minimum yang layak" dan mereka tahu persis apa yang harus dilakukan untuk melepaskan produk.

Tim dapat mengambil cerita yang dikenal atau cerita epik. Epik adalah cerita besar atau fitur yang belum sepenuhnya ditentukan. Mungkin sesuatu seperti "Izinkan pembayaran internasional". Karena cerita atau epik ini sangat umum, perkiraannya akan besar dan menjelaskannya. Tim dapat melakukan sesuatu yang disebut ukuran "t-shirt" dan memberikan masing-masing epik "kecil", "sedang" atau "besar". Ini memberikan pemilik produk beberapa perasaan tentang ukuran cerita dalam pertanyaan dan memungkinkan scrum master untuk membuat beberapa perkiraan tentang tanggal rilis yang sebenarnya.

Kuncinya adalah mulai dari suatu tempat dan terus memperbaiki poin cerita atau perkiraan karena lebih banyak informasi yang diketahui.

Berikut beberapa tautan pada perencanaan rilis:

Matthew Kubicina
sumber
Oke, itu berfungsi jika Anda memiliki tim dan Anda ingin mengetahui berapa lama waktu yang dibutuhkan untuk mengembangkan produk. Itu tidak berfungsi jika Anda tidak memiliki tim, dan Anda perlu mencari tahu seberapa besar tim yang Anda perlukan untuk membangun produk dalam jumlah waktu x.
Erik Funkenbusch
5
BAIK. Itu berbeda kalau begitu. Anda belum tentu dalam metodologi Agile tanpa tim. Agile menyatakan bahwa hanya orang yang melakukan pekerjaan yang harus memperkirakan waktu yang diperlukan untuk menyelesaikan tugas. Apa yang saya sarankan adalah menyatukan beberapa insinyur senior atau arsitek dan memahami garis waktu berdasarkan kebutuhan produk. Anda harus mulai dari suatu tempat.
Matius Kubicina
0

Cobalah metodologi Get Things Done oleh David Allen; Saya ingat satu bagian dari bukunya (yang pertama / utama tentang GTD) di mana dia mengatakan sesuatu seperti "menjadi jangka panjang tidak berarti Anda memiliki banyak waktu untuk mulai melakukannya".

GTD membantu Anda berpikir dalam istilah yang dapat ditindaklanjuti, sehingga Anda dapat memprogram tugas-tugas aktual yang dapat Anda lakukan atau program untuk lakukan dalam sistem Anda sendiri. Singkatnya, ini adalah GTD: http://lifedev.net/gtd-cheatsheet/

GTD bekerja untuk kehidupan dan pekerjaan, dan untuk jangka waktu paling pendek hingga jangka panjang selama Anda terus berpikir dalam tindakan, dan bukan hanya hal-hal yang mengkhawatirkan Anda dan / atau tim Anda. Jika Anda tidak punya banyak waktu untuk membaca buku, dapatkan buku audio, itu sangat berharga.

Anda juga dapat mencoba Scrum (dan bahkan menggabungkan dengan GTD) ... Anda membuat daftar fitur, masukkan dalam sebulan pengembangan dan berakhir dengan versi produk yang berfungsi.

Akhirnya, saya sarankan Anda untuk membaca Rework oleh Jason Fried, di mana mereka berbicara banyak tentang penentuan prioritas dan beberapa gagasan perencanaan proyek informal yang cukup berguna.

dukeofgaming
sumber
0

Dengan gesit, ini disebut inspeksi dan adaptasi. Gunakan riwayat sebagai panduan Anda.

Anda perlu mengetahui kecepatan Anda sebelum mulai membuat asumsi tentang seberapa cepat Anda bisa mencapai tujuan. Dengan kata lain, jalankan melalui beberapa iterasi untuk melihat seberapa cepat Anda berlari dan kemudian gunakan informasi itu untuk membuat rencana.

Jawaban untuk pertanyaan Anda adalah bahwa Anda harus terlebih dahulu mengumpulkan data sebelum mencoba melakukan perencanaan jangka panjang.

Martin Wickman
sumber