Di salah satu perusahaan tempat saya bekerja, kami memiliki seluruh pendekatan berorientasi proses ini dengan banyak dokumen (sebagian besar diminta untuk diisi oleh Manajer Proyek). Namun, terlepas dari panjang dan penjelasannya, saya menyadari bahwa itu hampir tidak digunakan untuk membantu orang - pengembang nyata.
Jadi saya memutuskan untuk menarik diri dengan tujuan khusus "membantu para pengembang". Hal terpenting yang saya mulai adalah mengumpulkan pertanyaan paling mendasar - FAQ yang sebenarnya .
Apa yang saya pelajari adalah bahwa mengikuti hal-hal penting bagi kebanyakan orang ketika mereka ingin mengadopsi proses tertentu, dan banyak hal yang mereka mungkin tidak punya ide sebelumnya tetapi akan sangat menghargai jika mereka memahami logika.
Berikut adalah topik utama yang harus dibantu oleh dokumentasi semacam itu:
Proses pengembangan hingga penerapan - Bagaimana seharusnya kode disusun, disusun, diterbitkan (dalam bentuk DLL, perpustakaan, yang dapat dieksekusi, penginstal, halaman web, dan bagaimana kode tersebut akan digunakan dan diuji)?
Bagaimana seharusnya kita melakukan kontrol versi? (dan mengapa jika ada pemula). Memahami bagaimana struktur repositori, kode etik - ketika check-in dapat diterima dan kapan tidak, ketika versi / tag diumumkan, bagaimana tambalan, penggabungan akan diterapkan, dan apa yang diharapkan kebersihan saat tambalan atau rilis dinyatakan selesai
Melaksanakan Metodologi - apakah kita gesit, apakah kita melakukan desain muka, metodologi yang kita gunakan? Sekarang mengingat ini, itu mungkin merupakan perbaikan untuk perusahaan tertentu. Sekarang, bagi kebanyakan orang, mereka ingin tahu bagaimana kita akan mengimplementasikannya untuk proyek yang diberikan. Ini sangat spesifik tentang proyek yang akan memungkinkan orang untuk memvisualisasikan tonggak yang berbeda dan apa yang berpotensi penting. Dalam proyek yang berorientasi penelitian - kami ingin menunjukkan "selalu memvalidasi algoritma kritis sebelum membangun di atasnya" dalam bungkus menyusut saya akan fokus pada kebenaran dan pentingnya fitur.
Tanggung jawab komunikasi - Menentukan bagaimana Anda melakukan komunikasi formal - ini tidak dilakukan dengan apakah orang-orang tertentu dapat berbicara satu sama lain - tetapi orang-orang harus memiliki perasaan mengenai apa yang cukup penting (masalah, keputusan desain, pembekuan fitur) untuk diumumkan atau bahkan diperdebatkan sebelum melanjutkan implementasi.
Akhirnya, kita semua harus memiliki pemahaman yang sama tentang kualitas kode, standar pengkodean dan secara umum apa yang kita anggap baik atau di bawah tingkat kebersihan.
Saya berharap saya akan memulai setiap proyek dengan dokumen seperti itu - namun, itu tidak mudah. Namun yang penting adalah untuk mengatasi semua masalah yang berhubungan dengan perilaku sehari-hari dan pilihan pengembang. Ini berjalan jauh ketika beberapa rilis ke pasar perlu dikirimkan.
Akhirnya, saya juga menyarankan agar mencoba bersikap informal. Biasanya, orang-orang yang berorientasi pada proses tidak begitu menyukai dokumen informal yang berpotensi disalahpahami di luar konteks. Namun, itu harus dilakukan sedemikian rupa sehingga menghubungkan para pengembang.