Saya ingin meyakinkan mitra saya bahwa kita harus memiliki spesifikasi dan bahwa bug harus diperbaiki sebelum menulis kode baru. Haruskah saya merujuk pada tes Joel ? Apakah menurut Anda tes Joel terkini? Saya pikir tidak memiliki spec adalah manajemen proyek yang buruk. Apakah Anda setuju dengan tes Joel? Bisakah Anda menambahkan sesuatu? Itu tidak menyebutkan misalnya Open Source.
17
Jawaban:
Saya pikir tes Joel up to date - itu sebagai up to date karena banyak dari penulisan perangkat lunak lain yang "abadi".
Melakukan pengembangan produk (yang meliputi pengembangan perangkat lunak) tanpa spek hanyalah kegilaan.
Bagaimana Anda tahu ke mana Anda ingin pergi?
Hanya ada satu poin yang akan saya sampaikan tentang menulis spec (saya sebenarnya tidak berpikir bahwa spec Joel sangat bagus ... lebih baik daripada tidak sama sekali, tetapi tidak sebagus yang seharusnya). Poin itu adalah:
Saat menulis spec, ucapkan hanya apa yang harus dilakukan produk, bukan bagaimana melakukannya.
Ini berarti Anda tidak menentukan detail implementasi dalam spesifikasi. Itu aktivitas desain dan Anda membiarkan pengalaman dan kreativitas para desainer.
[Hanya ada satu pengecualian untuk aturan ini: Kadang-kadang detail atau metode implementasi tertentu diamanatkan atau diperlukan, dalam hal ini memasukkannya. Misalnya, jika perangkat lunak harus ditulis dalam PHP dan ini tidak dapat dinegosiasikan, maka masuk spec. Seharusnya ada sangat sedikit contoh dari ini.]
Saya dapat menambahkan: tidak memiliki pelacakan bug adalah tindakan kegilaan yang sama. Ini hanyalah cara yang paling tidak profesional dan bodoh untuk beroperasi dan akan menyebabkan rasa sakit dan penderitaan yang hebat.
sumber
Saya akan berperan sebagai penasihat iblis di sini dan menyarankan agar Tes Joel tidak mutakhir. Itu terlalu umum. Ketika teknologi telah matang, pertanyaan-pertanyaan harus lebih spesifik daripada ketika ia menulis tes.
Spesifikasi dokumen, setidaknya dokumen spesifikasi besar di muka tidak diperlukan sekarang karena kami memiliki kisah pengguna dan proses pengembangan Agile. Pertanyaan ini harus diubah menjadi "Apakah tingkat dokumentasi sesuai dengan solusi yang direkayasa?" Kisah pengguna yang lebih kecil dan lebih ketat yang disampaikan setiap dua minggu jauh lebih bermanfaat dalam banyak kasus daripada dokumen besar di muka yang menjelaskan produk secara terperinci. Namun, jika Anda sedang membangun Mars Rover berikutnya, Anda mungkin menginginkan dokumen desain depan yang terperinci. Jika Anda bertanya apakah perusahaan memiliki spesifikasi desain, saya tidak akan terkejut mendengar jawaban "tidak benar-benar, kami menggunakan proses yang gesit dan cerita pengguna sebagai gantinya".
Kedua, pertanyaan "pembuatan harian" harus berubah menjadi pertanyaan tentang integrasi berkelanjutan. Kecuali jika Anda membangun perangkat lunak yang membutuhkan waktu berjam-jam untuk membangun (yang 99,99% tempat tidak akan melakukan), pertanyaan harus bertanya apakah perusahaan menggunakan integrasi berkelanjutan.
Sebagian besar tes Joel benar-benar belum berkencan sama sekali. Ini masih merupakan cara yang baik untuk mendapatkan indikasi lingkungan kerja.
sumber