Где и как следует хранить техническую документацию по проекту?

«Где и как следует хранить техническую документацию по проекту?» — вопрос из категории Тестовая документация, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Техническую документацию следует хранить в системах, обеспечивающих версионность, доступность и совместную работу. Лучшая практика — хранить её рядом с кодом.

Основные подходы и инструменты:

  1. В системе контроля версий (Git) вместе с кодом

    • Преимущества: Единая версия документации и кода, история изменений, код-ревью для docs.
    • Структура в репозитории:
      project/
      ├── docs/           # Основная документация
      │   ├── api.md
      │   ├── architecture.md
      │   └── testing.md
      ├── README.md       # Точка входа
      └── src/            # Исходный код
    • Формат: Markdown (.md), AsciiDoc. Для API — OpenAPI/Swagger спецификации (.yaml/.json).
  2. Внутренние Wiki-системы

    • Инструменты: Confluence, Notion, Wiki в GitLab/GitHub.
    • Преимущества: Удобный редактор, мощный поиск, навигация, интеграции (Jira, Slack).
    • Недостаток: Документация может "отставать" от кода, если не синхронизирована.
  3. Специализированные инструменты

    • TestRail, Zephyr: Для хранения тест-кейсов и отчетов.
    • Swagger Hub, ReadTheDocs: Для публикации API и технической документации.

Ключевой принцип: Избегайте хранения критической документации в изолированных файлах (Google Docs, локальные .docx) без контроля версий и четкого процесса обновления.