Ini pertanyaan yang bagus. Saya akan menjawab dari sudut pandang seseorang dengan pengalaman 30 tahun dengan satu dekade sebagai manajer proyek yang berdedikasi di semua bidang kecuali pengembangan perangkat lunak tetapi baru-baru ini tersandung ke dalam pengembangan perangkat lunak area secara tidak sengaja. Terlepas dari metodologi yang digunakan di tim Anda dan apa namanya, pada akhir proyek pengembangan adalah sama dengan yang lain dalam pengertian bisnis bahwa tujuan harus dipenuhi dalam persaingan waktu, anggaran, dan kualitas yang bersaing - - dan sementara proyek dijalankan, bisnis terus bergerak dan berkembang dan memiliki peluang bagus untuk menyuntikkan perubahan ke dalam proyek Anda. Oleh karena itu, perlu untuk menetapkan dan berkomitmen pada tujuan dan kerangka waktu dan untuk dapat memberikan pembaruan secara berkala dan ketika ditanya. Saya tidak
Yang sedang berkata, dalam pengalaman saya apa yang membuat estimasi waktu dalam pengembangan perangkat lunak sangat menantang adalah bahwa proyek pengembangan memerlukan banyak wilayah yang belum dipetakan. Definisi teknis dari "proyek", menurut Badan Manajemen Pengetahuan Proyek Manajemen Lembaga Proyek, adalah bahwa proyek harus unik. Namun, sebagian besar "proyek" di TI hanyalah eksekusi ulang cetak biru & desain yang dirancang sebelumnya dan buku-buku implementasi. Dalam pengembangan perangkat lunak, kami memiliki kerangka kerja dan berbagai pola desain umum yang membuat banyak pengembangan dapat digunakan kembali tetapi tetap saja, inti dari setiap proyek benar-benar unik.
Selain itu, sebagian besar proyek pengembangan mensyaratkan pengintegrasian dengan sistem lain dan seberapa cepat yang dapat dilakukan merupakan tebakan besar. Saya sedang mengerjakan sebuah proyek sekarang bahwa perkiraan waktu asli saya didasarkan pada asumsi bahwa 4 sistem yang saya perlukan untuk berinteraksi dengan pemrograman akan memiliki API, dan ternyata tidak ada yang berhasil. Selain itu, salah satu sistemnya adalah cloud host, dan organisasi saya memiliki kebijakan yang melarang pekerjaan yang dilakukan. Siapa yang bisa meramalkan itu?
Karena penemuan dibuat yang membuat kerangka waktu dalam bahaya, penting untuk mengomunikasikan dengan baik mengapa penundaan itu muncul, mengapa itu tidak dapat diramalkan, dll.
Saya juga sudah diberi tahu kerangka waktu yang diberikan tidak akan berhasil dan membuatnya terjadi "lebih cepat". Variasi lain diberikan banyak muatan perubahan untuk disuntikkan ke dalam pembangunan tanpa juga diberi waktu tambahan. Ada hukum dalam fisika yang mengatakan bahwa materi tidak dapat diciptakan atau dihancurkan, dan ini terlintas dalam pikiran karena menurut saya waktu tidak dapat diciptakan dari udara tipis juga. Mempercepat pengembangan kemungkinan akan berdampak negatif pada kualitas rilis, daya dukung produk, dan / atau pengembangan produk di masa depan.
Permintaan tentang jadwal harus dijawab dalam istilah bisnis umum. "Ya, kami berada di jalur untuk memenuhi kerangka waktu yang sebelumnya dilakukan, dan tidak ada masalah pembuatan bir yang membahayakan itu". Permintaan untuk menambah ruang lingkup yang signifikan tanpa lebih banyak waktu, atau hanya mempercepat pengiriman, harus berupa "kita bisa melakukan itu, tetapi hanya agar semua sadar bahwa secara inheren membawa risiko bug karena banyak waktu pengembangan dilakukan untuk menjadi proaktif sehingga untuk tidak memperkenalkan bug dan juga untuk menguji secara komprehensif. " Ketika mereka merespons dengan "jadi uji saja lebih cepat", itu mendapat respons yang menjelaskan pengujian pengembangan tidak memerlukan waktu idle dan dapat dipercepat tanpa menimbulkan risiko cacat yang hilang.
Singkatnya, saya hanya menyarankan agar semua pengembang - tidak hanya lead, scrum master, atau manajer proyek, bersiaplah untuk membahas tugas-tugas mereka dalam konteks bisnis dan untuk berdiskusi tentang mengubah parameter proyek dengan menyadarkan timbal balik yang akan menghasilkan.