Minggu ini di tempat kerja saya merasa gelisah lagi. Setelah melalui kelincahan standar, TDD, kepemilikan bersama, metodologi pengembangan ad hoc untuk tidak pernah merencanakan apa pun di luar beberapa cerita pengguna pada selembar kartu, secara verbal mengunyah bungkam tentang teknikalitas dari integrasi pihak ketiga iklan mual tanpa pernah melakukan sesuatu yang nyata berpikir atau karena ketekunan dan secara arsitektural menggabungkan semua kode produksi dengan pengujian pertama yang muncul di benak siapa pun selama beberapa bulan terakhir kita mencapai akhir siklus rilis dan lihatlah fitur utama yang terlihat secara eksternal yang telah kita kembangkan terlalu lambat untuk gunakan, kereta, menjadi sangat rumit dan benar-benar tidak fleksibel.
Selama proses ini "paku" dilakukan tetapi tidak pernah didokumentasikan dan tidak ada desain arsitektur tunggal yang pernah diproduksi (tidak ada FS, jadi apa-apaan ya, jika Anda tidak tahu apa yang Anda kembangkan, bagaimana Anda bisa merencanakan atau merisetnya ?) - proyek diteruskan dari pasangan ke pasangan, masing-masing hanya berfokus pada satu cerita pengguna pada satu waktu dan hasilnya tidak dapat dihindari.
Untuk mengatasinya, saya pergi dari radar, pergi (yang ditakuti) air terjun, terencana, kode dan pada dasarnya tidak menukar pasangan dan mencoba sebanyak yang saya bisa untuk bekerja sendiri - berfokus pada arsitektur yang solid dan spesifikasi daripada unit test yang akan datang nanti setelah semuanya dijabarkan. Kode sekarang jauh lebih baik dan benar-benar dapat digunakan, fleksibel dan cepat. Orang-orang tertentu tampaknya benar-benar membenci saya melakukan ini dan telah keluar dari jalan mereka untuk menyabot upaya saya (mungkin secara tidak sadar) karena itu bertentangan dengan proses suci tangkas.
Jadi bagaimana Anda, sebagai pengembang, menjelaskan kepada tim bahwa tidak "tidak gesit" untuk merencanakan pekerjaan mereka, dan bagaimana Anda memasukkan perencanaan ke dalam proses tangkas? (Saya tidak berbicara tentang IPM; Saya sedang berbicara tentang duduk dengan masalah dan membuat sketsa desain ujung ke ujung yang mengatakan bagaimana masalah harus diselesaikan secara cukup rinci sehingga siapa pun yang bekerja pada masalah tahu apa arsitektur dan pola yang harus mereka gunakan dan di mana kode baru harus diintegrasikan ke dalam kode yang ada)