Kapan membuat perkiraan waktu untuk tiket haruskah waktu yang diambil untuk penguji dimasukkan dalam perkiraan tiket? Kami sebelumnya selalu memperkirakan tanpa waktu penguji tetapi kami berbicara tentang selalu memasukkannya. Masuk akal untuk sprint kami saat ini, yang terakhir sebelum rilis, karena kami perlu tahu total waktu yang diperlukan tiket untuk satu minggu lagi.
Saya selalu mengerti estimasi hanya untuk waktu pengembang karena cenderung menjadi sumber daya terbatas dalam tim. Seorang kolega mengatakan bahwa di mana pun mereka bekerja sebelum waktu ujian juga dimasukkan.
Agar lebih jelas, ini untuk proses di mana pengembang menulis unit, integrasi, dan tes UI dengan cakupan yang baik.
agile
scrum
estimation
qa
Kirim TT
sumber
sumber
Jawaban:
Rekomendasi saya: Anda bisa memasukkan waktu pengujian di tiket, atau menambahkan tiket untuk mewakili tugas pengujian itu sendiri. Pendekatan lain apa pun yang menyebabkan Anda meremehkan pekerjaan nyata yang dibutuhkan.
Meskipun waktu pengembang sering menjadi hambatan, dalam pengalaman saya, ada banyak tim yang terkendala dalam pengujian. Dengan asumsi sumber daya yang membatasi adalah satu atau yang lain tanpa bukti, dapat menggigit Anda.
Sebagai kolega Anda, saya belum melihat organisasi yang sukses yang tidak memperhitungkan waktu pengujian.
Tambahan per klarifikasi Anda: Bahkan jika dev menulis tes otomatis, terutama tes unit (tes integrasi lebih baik), mereka tidak cukup untuk menguji dengan benar.
Jika ada orang yang terlibat QA, waktu mereka perlu diperkirakan, dengan satu atau lain cara. Hanya jika Anda memutuskan untuk menghapus karyawan QA dari daftar gaji, maka waktu kerja mereka secara efektif menghilang dan Anda dapat menghapusnya dari perkiraan. Tetapi ini akan memiliki efek samping yang mudah diabaikan. Dan Anda mungkin masih melewatkan pengujian kinerja, stres, keamanan, dan penerimaan.
sumber
Secara empati, Ya
Pengujian adalah bagian dari proses pengembangan. Jika tim Anda benar-benar menghabiskan waktu untuk menguji perangkat lunak, pengujian yang dihabiskan harus menjadi bagian dari perkiraan.
sumber
Jika ini tangkas, saya akan memasukkan upaya pengujian sebagai bagian dari total poin cerita. Misalnya, usaha dev mungkin 1 hari dan pengujian 1 hari sehingga itu akan menjadi cerita 2 poin.
Itu tergantung apa definisi Anda tentang dilakukan, tetapi biasanya lengkap, penerimaan bisnis, dan pengujian ditandatangani di iterasi. Jika DoD hanya penerimaan bisnis maka upaya pengujian tidak perlu harus dimasukkan dalam poin cerita, tetapi masih harus dilacak.
sumber
Perkiraan tersebut harus memperhitungkan semua pekerjaan yang diperlukan untuk menyelesaikan tiket. Jika pengujian merupakan bagian yang diperlukan dari tiket, maka itu harus dimasukkan dalam perkiraan. Jika pengujian adalah tiket terpisah, maka seharusnya tidak.
Itu tentu saja bisa menjadi semua kabur setelah Anda mulai menggunakan poin cerita, karena perbedaan antara dev-only 5 dan dev-only 8 akan sangat proporsional dengan dev-and-QA 5 versus dev-and-QA 8.
Saya telah melihat termasuk penguji waktu bekerja. Saya telah melihat cerita yang terpisah bekerja. Saya telah melihat tugas yang terpisah, masing-masing diperkirakan oleh kelompok yang mengerjakannya. Lakukan apa yang masuk akal bagi Anda, setelah semua proses ada untuk melayani Anda, bukan sebaliknya.
sumber
Fakta bahwa Anda tidak dapat menjawab ini dengan kuat menunjukkan Anda tidak tahu mengapa Anda menulis perkiraan (atau setidaknya Anda tidak setuju dengan kolega Anda mengapa Anda menulis perkiraan). Ini adalah masalah yang lebih besar daripada apakah estimasi harus termasuk atau tidak termasuk pengujian.
Cari tahu, atau raih kesepakatan, mengapa Anda menulis taksiran. Jika untuk memprediksi apa yang akan dicapai oleh tim tertentu dalam waktu tertentu, maka jawabannya hanya tergantung pada apakah tim itu, yang Anda perkirakan, akan melakukan pengujian atau tidak. Jika tim QA Anda terpisah dan memiliki penjadwalan sendiri maka mereka mungkin tertarik untuk mengetahui berapa banyak waktu pengujian yang menurut Anda (pengembang) dibutuhkan dari mereka dengan tiket tertentu. Mereka mungkin mengabaikan nomor Anda dan memasukkannya sendiri. Dengan cara apa pun mereka dapat melacaknya secara terpisah dari perkiraan waktu dev.
Di sisi lain, jika satu tim melakukan semua dev, pengujian, dan QA, dan tujuan estimasi waktu adalah untuk memprediksi dan merencanakan apa yang tim lakukan dalam kerangka waktu tertentu, maka tentu saja estimasi waktu harus mencakup QA, bersama dengan tugas-tugas lain yang perlu dilakukan oleh tim tersebut untuk mencapai tujuan yang dinyatakan. Dalam hal ini jika Anda harus mengadakan pertemuan awal untuk setiap tiket, atau mengisi beberapa dokumen pada saat penyelesaian, maka waktu untuk admin perlu ada di sana di suatu tempat . Anda tidak bisa mengabaikannya begitu saja.
Jika semuanya adalah satu tim tetapi dengan peran yang terpisah "pengembang" dan "penguji", maka itu mungkin berarti Anda memiliki banyak tiket yang hanya dapat dikerjakan oleh satu sisi, dan bagan Gantt Anda (mungkin seluruhnya hipotetis) terlihat persis seperti grafik untuk dua tim yang terpisah akan terlihat. Fakta ini akan mengecewakan beberapa metodologi lebih dari yang lain, dan Anda mungkin lebih baik memecah perencanaan karena itu, tetapi jika Anda tidak membaginya maka Anda harus tiket dan memperkirakan semua yang perlu dilakukan tim atau prediksi Anda akan sia-sia .
Jika tujuan perkiraan adalah sesuatu selain prediksi dan perencanaan, misalnya "karena kita tanpa berpikiran mengikuti ritual kosong yang memasukkannya", atau "karena manajemen menggunakannya sebagai tongkat untuk mengalahkan kita dengan mendapat lembur dari kita", atau "karena kita harus melakukan penawaran harga tetap dan jumlahnya masuk ke formula yang sangat besar" (terima kasih John Wu), maka mungkin lebih sulit untuk mengetahui apa yang harus mereka sertakan ;-)
sumber
Selalu perkirakan semua pekerjaan yang perlu dilakukan untuk membuat cerita-pengguna / fitur / tiket benar-benar selesai. Kami menyebutnya Selesai .
Ini termasuk pengujian manual dan eksplorasi, tetapi bahkan pengujian penerimaan pengguna.
Tim Agile harus dapat merilis bagian baru dari pekerjaan yang telah selesai kapan saja. Sebagai:
Bagaimana Anda tahu jika itu berhasil, jika Anda belum mengujinya? Sekarang Anda menulis bahwa waktu pengembangan adalah penghambat waktu Anda. Sebagai seorang insinyur QA saya pikir sebagian besar tim memiliki hambatan dalam kapasitas pengujian atau mereka hanya mengambil jalan pintas.
Untuk membuat cerita panjang pendek, perkirakan juga upaya pengujiannya. Perlu diingat ini dapat mempengaruhi kecepatan Anda . Jika Anda telah melakukan estimasi relatif dalam poin cerita, pengujian mungkin sudah dimasukkan ke dalam kecepatan rata-rata Anda.
sumber
Ini adalah sesuatu yang sangat penting: Semua perkiraan harus disertai dengan asumsi dan pengecualian .
Ini termasuk menentukan apa yang termasuk: pengembangan saja, desain dan pengembangan, pengujian dev dan unit, cakupan untuk pengujian penerimaan, pembangunan infrastruktur, dll.
Jika Anda memberikan dokumen estimasi kepada manajer proyek, mereka akan mengkonversi dokumen itu menjadi perintah kerja atau pernyataan kerja untuk klien atau (jika proyek internal) untuk PMO . Mereka mungkin telah menetapkan formula untuk menambahkan overhead (misalnya, beberapa proyek dapat menambahkan X% untuk mencakup QA, kemudian menambahkan Y% untuk mencakup tata kelola dan manajemen proyek) yang ditetapkan oleh kontrak atau ditetapkan oleh pengalaman. Dan Anda tidak ingin menggandakan jumlah. Di sisi lain, mereka mungkin tidak menambahkannya secara otomatis.
Praktiknya berbeda. Siapa pun yang menggunakan angka-angka ini akan perlu tahu apa arti angka-angka itu, dan Anda harus secara eksplisit tentang apakah Anda termasuk waktu tes atau tidak.
sumber
Waktu harus dimasukkan dalam perkiraan tetapi Anda tidak harus memperkirakan waktu penguji, sebagai gantinya penguji harus memperkirakan waktu mereka .
Tidak termasuk waktu pengujian adalah perkiraan salah dari total waktu yang diperlukan, tetapi waktu pengembang dan waktu pengujian tidak dapat dipertukarkan (paling tidak karena Anda mungkin bekerja secara paralel, dengan penguji diulang di belakangnya) sehingga Anda harus memperkirakannya secara terpisah. Selain itu, Anda tidak berada dalam posisi untuk memperkirakan waktu yang dibutuhkan penguji untuk menguji setiap perubahan, hanya kru uji yang harus melakukan itu.
sumber
Enkapsulasi
Saya akan mendekati ini dari sudut pandang pengembangan dan bahasa perangkat lunak.
Dari desain perangkat lunak yang baik, Anda harus menyederhanakan dan merangkum sebanyak mungkin.
Jadi untuk melihat proses dari sudut pandang Pengguna Bisnis, mereka benar-benar hanya peduli 2 hal.
Mengizinkan Pengguna Bisnis mengetahui tentang proses internal tim Anda adalah manajemen yang buruk; mirip dengan memberikan
public
akses ke keadaan internal.Kegagalan untuk melindungi keadaan internal tim Anda, mengundang tim lain untuk mengelola sumber daya Anda dan mengacaukan keadaan internal Anda.
sumber