Saat menulis milik saya, saya selalu beralih ke menulis dua tiga set. Daftar periksa penyelesaian, dengan lampiran JAUH LEBIH LAMA tentang arsitektur sistem termasuk mengapa hal-hal dilakukan sebagaimana mestinya, kemungkinan titik lengket ketika datang online, dan asumsi desain abstrak. diikuti oleh daftar kemungkinan masalah dan resolusi mereka, diikuti oleh bagian yang lebih panjang dengan informasi tentang cara kerja sistem, mengapa ia melakukannya seperti itu, dan informasi lain yang berguna untuk mengarahkan orang ke arah yang benar jika sesuatu yang unik terjadi.
Pada pekerjaan terakhir saya, kami diminta untuk menulis dokumen sehingga bahkan helpdesk level-1 orang dapat membawa hal-hal kembali. Ini memerlukan daftar periksa, yang umumnya menjadi usang dalam waktu 3 bulan setelah penulisan. Kami sangat terdorong untuk menulis panduan pemecahan masalah bila memungkinkan, tetapi ketika pohon darurat mendapat lebih dari tiga cabang di dalamnya, Anda tidak dapat menulis dokumen itu tanpa abstrak.
Ketika meninggalkan pekerjaan terakhir saya, saya membuka manual 100 halaman 'bagaimana melakukan pekerjaan saya' sebelum saya pergi. Ada hal-hal abstrak di dalamnya, filosofi desain, serta poin integrasi. Karena saya mungkin menulis untuk sysadmin lain yang akan menggantikan saya, saya mengarahkannya pada seseorang yang dapat mengambil gagasan abstrak dan mengubahnya menjadi tindakan nyata.
Lima tahun telah berlalu dan saya menemukan pendapat saya tentang ini agak berubah. Baik Dokumen sebagai Manual dan Dokumen sebagai Daftar Periksa memiliki tempat yang sangat berharga dalam hierarki dokumentasi dan keduanya harus diproduksi. Mereka menargetkan audiens yang sangat berbeda.
Dokumentasikan sebagai Daftar Periksa
Target pasar untuk dokumentasi semacam ini adalah rekan kerja yang ingin bagaimana cara melakukan sesuatu. Mereka datang dalam dua jenis:
- Rekan kerja yang hanya ingin tahu cara melakukan sesuatu dan tidak punya waktu untuk membaca manual lima belas halaman dan mencari tahu langkah-langkahnya sendiri.
- Prosedur yang cukup rumit dalam langkah-langkah, tetapi hanya perlu dijalankan sesekali.
Ketidaksabaran adalah pendorong untuk jenis pertama. Mungkin rekan kerja Anda tidak benar-benar ingin tahu mengapa output harus disalurkan melalui perl regex 90 karakter, hanya saja itu harus untuk menutup tiket. Sertakan pernyataan seperti, "Untuk penjelasan terperinci mengapa alur kerja ini terlihat seperti ini, ikuti tautan ini," dalam daftar periksa untuk mereka yang ingin tahu alasannya.
Poin kedua adalah untuk prosedur yang tidak sering dijalankan tetapi mengandung jebakan. Daftar periksa bertindak sebagai peta untuk menghindari Doom Tertentu hanya dengan menaruhnya. Jika daftar periksa disimpan dalam repo dokumentasi, ia harus mencari email untuk waktu admin lama mengirim HOWTO.
Dalam pendapat saya baik checklist-dokumentasi juga termasuk bagian dari poin mungkin kegagalan, dan tanggapan kepada mereka kegagalan. Ini dapat membuat dokumen agak besar dan memicu respons TL; DR pada rekan kerja, jadi saya menemukan bahwa menjadikan mode kegagalan dan respons mereka sebagai tautan dari daftar periksa daripada di halaman itu sendiri membuat daftar periksa yang tidak umum. Rangkul hipertualitas.
Dokumen sebagai Manual
Target pasar untuk dokumentasi semacam ini adalah orang-orang yang ingin belajar lebih banyak tentang cara kerja sistem. Dokumentasi style how-to-do-a-thing harus dapat diturunkan dari dokumentasi ini, tetapi lebih umum saya melihatnya sebagai suplemen untuk dokumentasi style checklist untuk mendukung keputusan yang dibuat dalam alur kerja.
Ini adalah dokumentasi di mana kami menyertakan potongan kenyal seperti:
- Menjelaskan mengapa ini dikonfigurasi dengan cara ini.
- Bagian ini dapat mencakup masalah-masalah non-teknis seperti politik seputar bagaimana seluruh barang dibeli dan dipasang.
- Menjelaskan mode kegagalan umum dan responsnya.
- Menjelaskan perjanjian tingkat layanan apa pun, baik tertulis maupun de facto.
- De facto: "jika ini gagal selama minggu final, itu masalah drop-everything. Jika selama liburan musim panas, kembali tidur dan berurusan dengan itu di pagi hari."
- Menyiapkan sasaran peningkatan dan refactoring.
- Politik mungkin berbeda nanti, mengapa kita tidak memperbaiki beberapa ide buruk yang diperkenalkan di awal?
Yang semuanya sangat berguna untuk mendapatkan pemahaman komprehensif tentang keseluruhan sistem. Anda tidak memerlukan pemahaman yang komprehensif untuk menjalankan tugas otomasi manusia yang sederhana, Anda memerlukannya untuk mencari tahu mengapa ada sesuatu yang merusaknya dan memiliki ide di mana membuatnya tidak melakukan itu lagi.
Anda juga menyebutkan dokumentasi Pemulihan Bencana yang harus menjadi daftar periksa.
Saya mengerti, Anda memiliki simpati saya.
Ya, dokumentasi DR harus seperti checklist seperti mungkin.
Ya, dokumentasi DR adalah yang paling tahan terhadap daftar periksa karena berapa banyak hal yang dapat dipecahkan.
Jika daftar periksa DR Anda terlihat seperti:
- Hubungi Dustin atau Karen.
- Jelaskan masalahnya.
- Mundur.
Anda punya masalah. Itu bukan daftar periksa, itu adalah pengakuan bahwa pemulihan sistem ini begitu rumit sehingga diperlukan seorang arsitek untuk mengetahuinya. Terkadang hanya itu yang bisa Anda lakukan, tetapi cobalah menghindarinya jika memungkinkan.
Dokumentasi DR idealnya berisi daftar periksa prosedur untuk beberapa hal yang berbeda:
- Prosedur Triage untuk mencari tahu apa yang salah, yang akan membantu mengidentifikasi ...
- Prosedur pemulihan untuk kasus kegagalan tertentu. Yang didukung oleh ...
- Skrip pemulihan ditulis dengan baik sebelumnya untuk membantu meminimalkan kesalahan manusia selama pemulihan.
- Dokumentasi gaya manual tentang kasus kegagalan, mengapa terjadi dan apa artinya.
Prosedur Triage kadang-kadang semua dokumentasi DR yang dapat Anda buat untuk beberapa sistem. Tetapi memiliki itu berarti panggilan keluar jam 4 pagi akan lebih mudah dipahami dan insinyur senior yang melakukan pemulihan akan dapat mengatasi masalah aktual dengan lebih cepat.
Beberapa kasus kegagalan memiliki prosedur pemulihan langsung. Dokumentasikan mereka. Saat mendokumentasikannya, Anda mungkin menemukan kasus di mana daftar perintah dimasukkan dalam urutan tertentu, yang merupakan kasus penggunaan yang bagus untuk skrip; dapat mengubah prosedur pemulihan 96 poin menjadi 20 poin. Anda tidak akan pernah tahu jika Anda dapat membuat skrip sesuatu hingga Anda memetakan tindakan prosedur pemulihan dengan tindakan.
Dokumentasi gaya manual untuk kasus-kasus kegagalan adalah penghalang parit terakhir yang digunakan ketika ADA prosedur pemulihan atau prosedur pemulihan gagal. Ini memberikan petunjuk-google yang diperlukan untuk mungkin menemukan orang lain yang memiliki masalah itu dan apa yang mereka lakukan untuk memperbaikinya.