Apa yang terjadi antara sprint?

11

Saya sedang mengerjakan proyek dengan longgar mengikuti model scrum. Kami melakukan sprint dua minggu. Sesuatu yang saya tidak jelas (dan tidak punya buku untuk berkonsultasi) adalah persis apa yang seharusnya terjadi antara sprint: harus ada beberapa proses "pembungkus", di mana produk dibuat dan dikirim, tetapi:

  • Berapa lama biasanya ini berlangsung?
  • haruskah seluruh tim dilibatkan?
  • apakah harus benar-benar selesai sebelum pengembang mulai mengerjakan item sprint berikutnya?
  • apakah ini saat peninjauan dan pengujian kode dilakukan?

Ada tiga pengembang, menambahkan hingga sekitar 1 FTE. Jadi sprint memang sangat pendek.

Steve Bennett
sumber
1
Seperti dikatakan JW01, Anda harus mencoba meminimalkan waktu antara sprint. Ini adalah kebiasaan buruk / proses yang tidak sempurna untuk selalu memiliki waktu luang di antaranya. Namun, seseorang selalu dapat menambahkan lebih banyak tes, memulai mock-up GUI untuk sprint berikutnya, mungkin menambahkan komentar yang berguna untuk bug yang ada. Sangat mudah untuk terbawa suasana dan mulai menghabiskan waktu untuk hal-hal yang tidak perlu dihargai oleh manajer Anda.
Pekerjaan
13
What happens between sprints?Pihak LAN, jelas ...
yannis
Akhir pekan, semoga.
MrFox

Jawaban:

13

Saya sedang mengerjakan proyek dengan longgar mengikuti model scrum.

Untuk memperjelas: Manajer Anda mungkin memberi tahu Anda tentang Scrum tetapi apa yang Anda lakukan bukan Scrum.

Berapa lama biasanya ini berlangsung?

Rapat ulasan sprint + Pertemuan retrospektif Sprint mengakhiri sprint saat ini. Dalam sprint pendek mereka harus menghabiskan waktu antara 30 menit - 1 jam bersama. Hari kerja berikutnya memulai sprint baru dengan melakukan rapat perencanaan Sprint 1 dan 2. Berdasarkan ukuran tim dan panjang sprint, pertemuan ini bisa memakan waktu 2 - 4 jam.

Haruskah seluruh tim dilibatkan?

Seluruh tim harus terlibat dalam pertemuan yang disebutkan dalam jawaban sebelumnya.

Apakah harus benar-benar selesai sebelum pengembang mulai mengerjakan item sprint berikutnya?

Ya karena sampai rapat peninjauan selesai, Anda tidak tahu apakah pelanggan menerima hasil dari sprint sebelumnya dan Anda tidak tahu cerita pengguna apa yang akan dilakukan dalam rapat perencanaan.

Apakah ini saat peninjauan dan pengujian kode dilakukan?

Tidak. Ulasan dan pengujian kode adalah bagian dari sprint. Pengembang harus melakukan semua yang diperlukan untuk memberikan kode yang memenuhi persyaratan. Ini dapat mencakup ulasan kode dan selalu harus mencakup semacam tes otomatis yang memvalidasi bahwa kode berfungsi dan melakukan apa yang seharusnya dilakukan jika tidak, kisah pengguna tidak dapat dianggap selesai.

Pergeseran mental utama adalah dengan QA. Banyak pengembang berpikir bahwa QA ada untuk memvalidasi kode yang berfungsi dan melakukan apa yang seharusnya dilakukan. Jelas tidak. Itu pekerjaan pengembang.

QA harus berpartisipasi dalam pengembangan produk. Tanggung jawab utama mereka dalam sprint harus komunikasi dengan pemilik produk dan pembuatan tes penerimaan otomatis untuk kriteria penerimaan (definisi selesai) yang akan memvalidasi bahwa kisah pengguna benar-benar dilakukan dan aplikasi melewati semua persyaratan baru. Dalam tim kecil ini bisa menjadi tanggung jawab pengembang juga.

QA juga harus melakukan beberapa pengujian manual untuk menjaga produk konsisten dan untuk menemukan fitur yang hilang, memvalidasi pengalaman pengguna dengan UI, dll. QA tidak ada di sana untuk mencari bug dan pengujian regresi - pengujian regresi harus sangat otomatis.

Dalam pengalaman saya, di sinilah sebagian besar perusahaan yang pindah ke agile gagal.

Ladislav Mrnka
sumber
"Tidak. Tinjauan dan pengujian kode adalah bagian dari sprint." - keren, itu yang saya tanyakan. :)
Steve Bennett
2
Saya pikir " harus menyertakan semacam tes otomatis" agak kuat. Tidak ada yang mengatakan pengujian harus otomatis. Bahkan, dalam beberapa kasus jelas tidak bisa. Anda mungkin mengembangkan lembaran gaya baru dan "ujian" harus berupa inspeksi visual. Anda tidak dapat mengotomatiskan "apakah ini terlihat benar?". Ya, tes harus otomatis jika memungkinkan, tetapi untuk mengatakan mereka harus melebih-lebihkannya sedikit.
Bryan Oakley
@BryanOakley: Saya setuju. Saya menargetkan bagian dari jawaban saya untuk hanya sebagian dari tugas pengembangan di mana tes otomatis dimungkinkan.
Ladislav Mrnka
1
Ini gagal menjawab pertanyaan.
Edward Anderson
8

Dari pengalaman saya, tidak ada waktu antara sprint, selain akhir pekan. Menjelang tengah sprint, tim-tim yang telah saya menjadi anggota bekerja dengan pemilik produk untuk melakukan perawatan grooming atau penyisiran awal berdasarkan persyaratan. Adalah tanggung jawab pemilik produk untuk menjaga jaminan simpanan - cerita-cerita itu adalah apa yang akan dikerjakan tim, dengan beberapa masukan dari pemilik produk mengenai prioritas. Setelah sprint saat ini selesai, sprint berikutnya akan dimulai, memanfaatkan pekerjaan yang telah kami siapkan untuk menyiapkan cerita dan tugas untuk sprint berikutnya.

Ada beberapa overhead (banyak pertemuan, tanya jawab, dan evaluasi persyaratan), tetapi secara keseluruhan berfungsi - kami membuat kemajuan yang stabil dengan sedikit waktu henti. Sprint biasanya berlangsung dua atau tiga minggu. QA biasanya terjadi setelah cerita selesai. Namun, tim QA mungkin memiliki tugas lain yang dapat mereka lakukan. Mengenai perawatan cerita, tugas mungkin jatuh ke anggota senior tim, atau seluruh tim. Ini dapat bervariasi tergantung pada ukuran tim dan proses yang telah disepakati. Ulasan kode biasanya terjadi ketika QA terjadi, atau di akhir sprint jika waktu dikompresi. Dan jika tidak ada cukup waktu untuk menyelesaikan cerita, dalam praktiknya cerita-cerita ini didorong ke sprint berikutnya. Ukuran dan estimasi yang tepat sangat penting di sini.

JW8
sumber
Ok, jadi QA Anda terjadi di dalam sprint. Kapan penyebaran terjadi? Apakah Anda menunggu sampai semua dev telah melakukan semua pekerjaan mereka, lalu satu orang menyebarkan?
Steve Bennett
Kami biasanya memiliki setidaknya dua penyebaran - satu di titik tengah sprint, dan yang lain di akhir. Lebih banyak yang bisa digunakan untuk QA saat cerita selesai. Memiliki cerita pendek yang bisa berdiri sendiri sangat membantu. Cerita yang lebih besar biasanya dibagi menjadi yang lebih kecil. Kisah-kisah teknis yang diperlukan untuk membuat barang berfungsi biasanya dinon-aktifkan oleh pimpinan / manajer dev - QA tidak terlibat kecuali ada beberapa output yang dapat diuji (baik log, layar pengguna, atau output lainnya).
JW8
0

... dan kapan perkiraannya? perencanaan?

Cerita harus sangat mudah untuk tidak memiliki waktu di antara sprint.

Dan saya tidak tahu tes seperti apa yang Anda bicarakan, tetapi pengembang akan membuat tes unit dan integrasi, tidak lebih.

Saya bekerja di proyek dengan kadang-kadang 2 o 3 hari antara sprint dan rasanya benar. Sekarang saya sedang mengerjakan sebuah proyek di mana tidak ada waktu dan semuanya kabur. Waktu sprint terakhir kami memiliki penyebaran produksi dan itu membutuhkan waktu beberapa hari sprint terakhir saya.

zurdo
sumber
Dalam scrum sejati, para pengembang biasanya tidak menulis tes penerimaan, tetapi mereka bisa dan harus dari waktu ke waktu. Kualitas adalah tanggung jawab seluruh tim. Meskipun ada (mudah-mudahan!) Spesialis pengujian, pengembang harus melakukan sedikit. Untuk mengatakan mereka melakukan "tidak lebih" dari unit dan tes integrasi tidak benar SCRUM.
Bryan Oakley