Pisząc moje, zawsze zmieniałem się w pisanie dwóch trzech zestawów. Lista kontrolna czynności wykonywanych wraz z DUŻO DŁUŻSZYM dodatkiem na temat architektury systemu, w tym dlaczego rzeczy są robione takimi, jakimi są, prawdopodobnymi punktami krytycznymi po wejściu do Internetu oraz abstrakcyjnymi założeniami projektowymi. następnie lista prawdopodobnych problemów i ich rozwiązania, a następnie dłuższa sekcja z informacjami o tym, jak działa system, dlaczego działa w ten sposób, oraz innymi informacjami przydatnymi do wskazywania ludziom właściwego kierunku, jeśli coś wyjątkowego się stanie.
W mojej ostatniej pracy musieliśmy napisać dokumentację, aby nawet pracownicy działu pomocy technicznej na pierwszym poziomie mogli przywrócić rzeczy. Wymagało to list kontrolnych, które na ogół stały się nieaktualne w ciągu 3 miesięcy od napisania. Usilnie namawiano nas do napisania przewodników dotyczących rozwiązywania problemów, gdy tylko jest to możliwe, ale gdy drzewo awaryjne zawiera więcej niż trzy gałęzie, po prostu nie można napisać tego dokumentu bez streszczenia.
Po opuszczeniu moją ostatnią pracę, zagrał 100 stronie „Jak zrobić moją pracę” podręcznik przed wyjazdem. Zawierał w sobie elementy abstrakcyjne, filozofię projektowania oraz punkty integracji. Ponieważ prawdopodobnie pisałem dla innego sysadmina, który miał mnie zastąpić, skierowałem go na kogoś, kto mógł przyjmować abstrakcyjne pojęcia i zamieniać je w konkretne działania.
Minęło pięć lat i moja opinia na ten temat nieco się zmieniła. Zarówno Dokument jako Podręcznik, jak i Dokument jako Lista Kontrolna mają bardzo cenne miejsca w hierarchii dokumentacji i oba muszą zostać stworzone. Są jednak skierowane do bardzo różnych odbiorców.
Dokument jako lista kontrolna
Rynkiem docelowym dla tego rodzaju dokumentacji są współpracownicy, którzy chcą jak to zrobić. Występują w dwóch rodzajach:
- Współpracownicy, którzy chcą tylko wiedzieć, jak coś zrobić, i nie mają czasu, aby przejrzeć piętnastostronicowy podręcznik i samemu wymyślić kroki.
- Procedury są dość skomplikowane etapami, ale należy je uruchamiać tylko raz na jakiś czas.
Niecierpliwość jest motorem pierwszego rodzaju. Być może twój współpracownik tak naprawdę nie chce wiedzieć, dlaczego wyjście musi zostać przepuszczone przez wyrażenie regularne perla o długości 90 znaków, tylko po to, aby zamknąć bilet. Zdecydowanie dołącz oświadczenie typu „Aby uzyskać szczegółowe wyjaśnienie, dlaczego ten przepływ pracy wygląda tak, kliknij ten link” na liście kontrolnej dla tych, którzy chcą wiedzieć, dlaczego.
Drugi punkt dotyczy procedur, które nie są uruchamiane często, ale zawierają pułapki. Lista kontrolna działa jak mapa, aby uniknąć Pewnego Zagłady, która go po prostu uskrzydla. Jeśli lista kontrolna jest przechowywana w repozytorium dokumentacji, oszczędza to konieczności przeszukiwania wiadomości e-mail w czasie, gdy stary administrator wysłał HOWTO.
Moim zdaniem dobra lista kontrolna-dokumentacja zawiera również sekcje dotyczące możliwych punktów awarii i odpowiedzi na te awarie. To może sprawić, że dokument będzie raczej duży i wywołać odpowiedzi TL; DR u współpracowników, więc uważam, że utworzenie trybów awarii i ich odpowiedzi jako linku z listy kontrolnej, a nie na samej stronie, tworzy niecodzienną listę kontrolną. Obejmuj hipertekstowość.
Dokument jako podręcznik
Rynek docelowy dla tego rodzaju dokumentacji to ludzie, którzy chcą dowiedzieć się więcej o tym, jak działa system. Dokumentacja w stylu „jak to zrobić” powinna być oparta na tej dokumentacji, ale częściej widzę ją jako uzupełnienie dokumentacji w stylu listy kontrolnej, która wspiera kopię decyzji podejmowanych w przepływie pracy.
To jest dokumentacja, w której uwzględniamy takie elementy do żucia, jak:
- Wyjaśnienie, dlaczego jest skonfigurowany w ten sposób.
- Ta sekcja może obejmować takie nietechniczne kwestie, jak polityka związana z zakupem i instalacją całości.
- Objaśnienie typowych trybów awarii i ich reakcji.
- Wyjaśnienie wszelkich umów o gwarantowanym poziomie usług, zarówno pisemnych, jak i faktycznych.
- De facto: „jeśli to się nie powiedzie w tygodniu finałowym, jest to problem zrzucania wszystkiego. Jeśli podczas przerwy letniej, wróć do łóżka i poradzisz sobie z tym rano”.
- Określanie celów aktualizacji i refaktoryzacji.
- Polityka może później być inna, dlaczego nie naprawimy złych pomysłów, które wprowadziliśmy na początku?
Które są bardzo przydatne do uzyskania kompleksowego zrozumienia całego systemu. Nie potrzebujesz kompleksowego zrozumienia, aby wykonywać proste zadania automatyzacji człowieka, potrzebujesz go, aby dowiedzieć się, dlaczego coś zepsuło się tak, jak to miało miejsce, i masz pomysł, jak sprawić, by nie zrobił tego ponownie.
Wspomniał także o dokumentacji odzyskiwania po awarii, która musi być listą kontrolną.
Rozumiem, masz moje współczucie.
Tak, dokumentacja DR musi być jak najbardziej podobna do listy kontrolnej.
Tak, dokumentacja DR jest najbardziej odporna na listy kontrolne ze względu na to, ile sposobów może się zepsuć.
Jeśli twoja lista kontrolna DR wygląda następująco:
- Zadzwoń do Dustina lub Karen.
- Wyjaśnij problem.
- Cofnij się.
Masz problem. To nie jest lista kontrolna, to przyznanie, że odzyskanie tego systemu jest tak złożone, że architekt musi się zorientować. Czasami to wszystko, co możesz zrobić, ale staraj się tego unikać, jeśli to w ogóle możliwe.
Idealnie dokumentacja DR zawiera listy kontrolne procedur dla kilku różnych rzeczy:
- Procedury segregowania, aby dowiedzieć się, co poszło nie tak, co pomoże zidentyfikować ...
- Procedury odzyskiwania dla niektórych przypadków awarii. Które jest obsługiwane przez ...
- Skrypty odzyskiwania napisane z dużym wyprzedzeniem, aby zminimalizować błędy ludzkie podczas odzyskiwania.
- Dokumentacja w stylu ręcznym na temat przypadków awarii, ich przyczyny i ich znaczenia.
Procedury segregowania są czasami całą dokumentacją DR, którą można wykonać dla niektórych systemów. Oznacza to jednak, że wywołanie 4 rano będzie bardziej zrozumiałe, a starszy inżynier przeprowadzający proces odzyskiwania będzie w stanie szybciej dotrzeć do rzeczywistego problemu.
Niektóre przypadki awarii mają proste procedury odzyskiwania. Dokumentuj je. Podczas ich dokumentowania możesz znaleźć przypadki, w których listy poleceń są wprowadzane w określonej kolejności, co jest doskonałym przykładem użycia dla skryptów; może zmienić 96-punktową procedurę odzyskiwania w 20-punktową. Nigdy nie dowiesz się, czy możesz coś napisać, dopóki nie zmapujesz procedury odzyskiwania akcja po akcji.
Dokumentacja w stylu ręcznym dla przypadków awarii jest ostatnim ogranicznikiem rowu, który należy zastosować, gdy nie ma żadnych procedur odzyskiwania lub procedury odzyskiwania nie powiodły się. Zawiera wskazówki Google potrzebne do znalezienia kogoś, kto miał ten problem i co zrobił, aby go naprawić.