Когда я писал свои, я всегда писал два- три набора. Контрольный список выполненных задач, с приложением MUCH LONGER об архитектуре системы, включая причины, по которым все делается так, как есть, вероятные точки опоры при подключении к сети и абстрактные предположения дизайна. затем следует список вероятных проблем и способов их решения, за которым следует более длинный раздел с информацией о том, как работает система, почему она так поступает, и другой информацией, полезной для направления людей в правильном направлении, если случится что-то уникальное.
На моей последней работе мы должны были написать документ, чтобы даже сотрудники службы поддержки 1-го уровня могли вернуть вещи обратно. Это требовало контрольных списков, которые, как правило, устарели в течение 3 месяцев после написания. Нам настоятельно рекомендовалось по возможности писать руководства по устранению неполадок, но когда в дереве непредвиденных обстоятельств содержится более трех веток, вы просто не сможете написать этот документ, не углубляясь в абстракции.
При выходе моей последней работе, я повернулся в 100 страницы «Как сделать свою работу» руководство перед отъездом. В нем были абстрактные вещи, философия дизайна, а также точки интеграции. Поскольку я, по-видимому, писал для другого сисадмина, который собирался заменить меня, я нацелил его на кого-то, кто мог бы взять абстрактные понятия и превратить их в конкретные действия.
Прошло пять лет, и я считаю, что мое мнение об этом несколько изменилось. Оба документа , как Руководство и документ в качестве контрольной таблицы имеют очень ценные места в иерархии документации и оба должны быть произведены. Однако они нацелены на очень разную аудиторию.
Документ как контрольный список
Целевым рынком для этого вида документации являются коллеги, которые хотят узнать, как это сделать. Они бывают двух типов:
- Сотрудники, которые просто хотят знать, как сделать что-то, и не имеют времени пролистать пятнадцатистраничное руководство и выяснить, как это сделать.
- Процедуры, которые довольно сложны в действиях, но должны выполняться только время от времени.
Нетерпение - это драйвер для первого рода. Возможно, ваш коллега на самом деле не хочет знать, почему вывод должен быть передан через 90-символьное регулярное выражение perl, просто это должно быть для того, чтобы закрыть заявку. Обязательно включите в контрольный список утверждение типа «Для подробного объяснения того, почему этот рабочий процесс выглядит следующим образом, перейдите по этой ссылке» для тех, кто хочет знать, почему.
Второй момент касается процедур, которые не часто выполняются, но содержат подводные камни. Контрольный список действует как карта, чтобы избежать «Обреченной гибели» от того, что ее просто обгоняют. Если контрольный список хранится в репозитории документации, он избавляет от необходимости искать электронную почту в течение времени, когда старый администратор отправил HOWTO.
На мой взгляд, хорошая контрольная документация также включает разделы о возможных точках отказа и ответах на эти ошибки. Это может сделать документ довольно большим и инициировать ответы TL; DR в коллегах, поэтому я считаю, что превращение режимов сбоев и их ответов в ссылку из контрольного списка, а не на саму страницу, создает неясный контрольный список. Примите гипертекстуальность.
Документ как руководство
Целевым рынком для этого вида документации являются люди, которые хотят узнать больше о том, как работает система. Документация стиля «как сделать что-то» должна быть получена из этой документации, но чаще я вижу ее как дополнение к документации в стиле контрольного списка для поддержки решений, принятых в рабочем процессе.
Это документация, в которую мы включаем такие жевательные кусочки, как:
- Объясняя, почему он настроен таким образом.
- Этот раздел может включать такие нетехнические вопросы, как политика, связанная с тем, как все это было приобретено и установлено.
- Объяснение распространенных режимов отказов и их ответов.
- Объяснение любых соглашений об уровне обслуживания, как в письменном виде, так и де-факто.
- Де-факто: «если это не удастся в течение финальной недели, то это проблема« все по капле ». Если во время летнего перерыва вернитесь спать и займитесь этим утром».
- Установка целей обновления и рефакторинга.
- Позже политика может измениться, почему бы нам не исправить некоторые плохие идеи, которые появились в начале?
Которые все очень полезны для получения полного понимания всей системы. Вам не нужно полное понимание для выполнения простых задач автоматизации человека, вам нужно выяснить, почему что-то сломалось так, как было, и понять, как это сделать, чтобы это больше не повторилось.
Вы также упомянули документацию по аварийному восстановлению, которая должна быть контрольным списком.
Я понимаю, у вас есть мои симпатии.
Да, документация по DR должна быть как можно более похожа на контрольный список.
Да, документация по DR наиболее устойчива к контрольным спискам из-за того, как много вещей может сломаться.
Если ваш контрольный список DR выглядит так:
- Позвони Дастину или Карен.
- Объясните проблему.
- Отойди.
У тебя проблема. Это не контрольный список, это признание того, что восстановление этой системы является настолько сложным, что архитектор должен это выяснить. Иногда это все, что вы можете сделать, но старайтесь избегать этого, если это вообще возможно.
В идеале документация DR содержит контрольные списки процедур для нескольких разных вещей:
- Процедуры сортировки, чтобы выяснить, что пошло не так, что поможет определить ...
- Процедуры восстановления для определенных случаев отказа. Который поддерживается ...
- Сценарии восстановления написаны заранее, чтобы минимизировать человеческие ошибки при восстановлении.
- Ручная документация о сбоях, причинах их возникновения и их значении.
Процедуры сортировки иногда представляют собой всю документацию DR, которую вы можете сделать для некоторых систем. Но наличие этого означает, что вызов в 4 часа утра будет более понятным, и старший инженер, выполняющий восстановление, сможет быстрее справиться с реальной проблемой.
В некоторых случаях отказа есть прямые процедуры восстановления. Документируйте их. При их документировании вы можете встретить случаи, когда списки команд вводятся в определенном порядке, что является отличным вариантом для сценариев; это может превратить процедуру восстановления на 96 пунктов в процедуру на 20 пунктов. Вы никогда не узнаете, сможете ли вы что-то написать, пока не сопоставите действие процедуры восстановления с действием.
Ручная документация для случаев сбоя - это последняя остановка, которая должна использоваться, когда нет процедур восстановления или процедуры восстановления не выполнены. Он предоставляет Google-подсказки, необходимые для того, чтобы найти кого-то еще, у кого была эта проблема, и что они сделали, чтобы ее исправить.