Bagaimana tim Scrum menjelaskan tugas dev / infrastruktur dalam rapat perencanaan?
Pada pandangan pertama, mereka sepertinya bukan cerita pengguna karena mereka tidak memberikan nilai pengguna akhir.
Namun, melampirkannya sebagai tugas ke cerita pengguna tertentu terkadang juga tidak masuk akal. Misalnya, tugasnya adalah: "Mengatur Bambu." Tugas itu tidak diperlukan untuk menyelesaikan cerita pengguna apa pun karena tim dapat membangun dan menyebarkan secara manual. Jadi melampirkannya ke cerita pengguna tidak masuk akal karena tugas ini tidak diperlukan untuk menyelesaikan cerita pengguna.
Jadi, ini menunjukkan bahwa tugas-tugas ini menjadi cerita pengguna. Tetapi kemudian, jika cerita tim menunjuk mereka, maka ini mengubah kecepatan yang aneh karena Pemilik Produk ingin mengetahui kecepatan terhadap jaminan simpanannya, bukan terhadap jaminan simpanannya dengan sekelompok cerita pengguna teknis yang melekat padanya.
Velocity adalah ukuran kapasitas tim untuk melakukan pekerjaan yang bermanfaat (sebagai lawan Drag). Tugas infrastruktur masih memberikan nilai pengguna akhir, meskipun secara tidak langsung, dengan membuat tim lebih efisien dalam jangka panjang. Saya tidak memiliki masalah melacak hal-hal ini sebagai cerita pengguna (pengguna adalah tim pengembang dalam kasus ini) dan memprioritaskannya dengan tepat. Seorang Pemilik Produk dalam komunikasi yang baik dengan pelanggan harus dapat mengetahui di mana tugas-tugas tersebut dapat ditampung tanpa mengganggu kiriman.
sumber
Lakukan secara bertahap.
Jika tidak ada pemangku kepentingan yang menginginkannya, jangan buat cerita. Hanya merawatnya, sedikit demi sedikit. Misalnya, pertama kali Anda menggunakan secara manual. Kedua kalinya, Anda mengotomatiskannya sedikit. Ketiga kalinya, Anda mengotomatisasi sedikit lagi. Akhirnya, bangunan Anda bukan masalah terbesar, jadi Anda fokus pada hal lain.
Anda akan memiliki lebih banyak tugas yang berfokus pada pengembang ini di awal, dan itu bagus; kecepatan Anda (yang diukur dengan cerita) hanya akan lebih rendah. Itu representasi yang tepat dari situasi. Tetapi Anda akan selalu memiliki beberapa, jadi penting bagi tim untuk membiasakan diri melakukan apa yang perlu untuk meningkatkan proses.
sumber
IMHO pendekatan yang ideal adalah menempatkan upaya infrastruktur sebagai tugas di bawah kisah pengguna di mana ia pertama kali memegang nilai; seperti yang telah Anda sebutkan.
Ambil contoh Anda; membangun dan menggunakan secara manual menyiratkan itu adalah upaya yang berkelanjutan dan tidak memiliki bentuk penyelesaian. Itu ada tanpa batas.
Hal yang sama dapat dikatakan untuk kode yang mengotomatiskan setiap bagian dari usaha dalam aplikasi tipikal yang sebelumnya dilakukan secara manual. Mendefinisikan upaya ini sebagai tugas di bawah kisah pengguna mendefinisikan lengkap; yang pada dasarnya memiliki nilai bagi pengguna akhir.
Anda tentu bisa membangun dan menggunakan aplikasi masing-masing dan setiap sprint tetapi itu kemudian menjadi bagian dari tugas sehari-hari yang tidak dilacak secara resmi melalui backlog dan kemudian ini semua menjadi diperdebatkan.
sumber
Cerita pengguna menentukan nilai bisnis dari perspektif pengguna. Karena itu tugas infrastruktur umumnya dianggap sebagai "limbah". Bukan berarti mereka tidak perlu. Ini berarti bahwa melakukan lebih banyak tugas infrastruktur akan menghasilkan nilai bisnis yang lebih sedikit. Karena itu, tugas infrastruktur tidak boleh dianggap sebagai penyimpanan pengguna dan tidak boleh dilampirkan ke cerita pengguna apa pun.
Pada rapat perencanaan, tim harus mempertimbangkan tugas infrastruktur apa yang mutlak diperlukan selama sprint berikutnya. Komitmen akan dilakukan dengan tugas-tugas infrastruktur ini dalam pikiran. Ini akan mempengaruhi kecepatan tim yang merupakan hasil yang benar karena kecepatan mengukur seberapa banyak nilai bisnis yang dapat diberikan oleh tim.
sumber
Saya tidak pernah menyamakan cerita pengguna dengan keharusan memberikan nilai pengguna akhir. Ini mungkin biasa, tetapi ini bukan cara kami menangani cerita pengguna. Terkadang, jenis tugas ini dianggap lonjakan, tetapi kami juga memiliki kisah pengguna reguler, titik yang diperkirakan sama seperti kisah pengguna lainnya.
sumber
Dari apa yang saya lihat, banyak infrastruktur yang dianggap sudah diberikan. Ini termasuk hal-hal seperti:
Sebagian besar metodologi yang saya gunakan tidak banyak memberikan perhatian kepada mereka. Ini membentuk apa yang saya sebut Rilis 0. Hal-hal ini harus ada sebelum Anda memulai pengembangan. Setelah Anda mulai mengerjakan cerita, perubahan apa pun dalam hal ini dapat dilacak sebagai peningkatan proses.
Sementara tim pengembangan mungkin memiliki input, sebagian besar dari item ini harus ditangani oleh tim pendukung proyek. Standarisasi barang-barang ini di berbagai proyek harus memiliki pengembalian yang signifikan bagi organisasi.
sumber
Pertimbangkan yang berikut ini:
Tim Scrum menambahkan fitur utama ke rangkaian produk yang ada.
Ada kebutuhan untuk meningkatkan teknologi / alat / utilitas pengembangan agar tetap terkini berdasarkan praktik terbaik rekayasa.
Masuk akal untuk memuat front rilis dengan karya ini sehingga selama rilis masalah Sprint dapat diselesaikan.
Karena bisnis memperoleh nilai tidak langsung dari item-item ini, saya menyarankan agar untuk kepentingan transparansi ini adalah Product Backlog Items (PBIs).
Tim mengukur barang-barang ini dan memperlakukannya seperti PBI apa pun.
Masalah ini bagi saya bermuara pada kenyataan bahwa saya tidak ingin membuang waktu mencoba mencari cara untuk menyembunyikan pekerjaan ini sebagai tugas di bawah PBI lain yang lebih berpusat pada bisnis.
Saya tidak ingin ukuran PBI condong oleh pekerjaan infrastruktur semacam ini. Saya ingin melihat apa yang sedang dilakukan dan memahami apa yang saya bayar.
Saya juga berpikir ada nilai dalam membuat tim memahami komitmen bisnis yang dibuat dengan berinvestasi pada infrastruktur yang diperlukan untuk memberikan solusi berkualitas.
sumber
XP
merekomendasikanmenyarankan memiliki "iterasi nol" di mana semua alat dan infrastruktur diatur. Menulis cerita untuk ini adalah opsional, tetapi mungkin ide yang bagus. Mampu menguji infrastruktur Anda (pengembangan bertahap, pengujian dan penerapan otomatis, pemberitahuan, dll.) Bermanfaatsumber
Di tim kami, kami melakukan hal berikut:
Langkah 2 adalah yang paling penting. Seperti dalam latihan yang gesit, dalam Scrum Anda mencoba melakukan sesedikit mungkin untuk menyelesaikan tugas Anda. Anggap itu sebagai cara untuk tidak menyia-nyiakan hidup Anda untuk melakukan pekerjaan yang tidak perlu: pengalaman saya menunjukkan bahwa sebanyak 50% dari "calon keren" hal-hal yang akhirnya ditinggalkan dan tidak terawat dalam jangka panjang.
sumber