Я разработчик-любитель, и все мои программы до сих пор были достаточно просты, чтобы их можно было документировать в коде. При чтении кода было ясно, что я делаю с теми или иными действиями (моим стандартным тестом было просмотреть код через 6 месяцев и понять все при первом чтении - и у меня небольшой объем памяти).
Теперь я сталкиваюсь с программой, которая перерастает мои способности запоминать различные взаимодействия между
- сам код
- индексы в базе данных
- взаимодействие между различными модулями (рабочий код ядра и библиотечный)
Моя текущая документация - это доска, где у меня есть все виды полей и стрелок, которые указывают на код, на индексы базы данных, на выполняемые действия, на изменение состояния и т. Д. Просто для справки, фрагмент беспорядка:
Мой вопрос заключается в том, существует ли стандартный или именованный набор лучших практик (названных в том смысле, что это набор методов, которые были сгруппированы под определенным именем) для документации более сложных продуктов.
Какие ключевые слова мне следует искать (общие попытки «стандартов архитектуры программного обеспечения для документов» и подобные изменения обычно приводили к созданию программного обеспечения для рабочих процессов или построению систем САПР с архитектурой).
Я также ожидаю, что не может быть общих лучших практик для описаний высокого уровня, и что каждый строит свою собственную философию.