Содержание
- + Методалогии разработки ПО
-
+
Проектирование систем
- + API
- + UML
- + Интеграции
- + Моделирование данных
- + Представление данных
- BPMN
- C4 model
- Domain Driven Design
- EPC
- IDEF0
- Архитектор
- Архитектура
- Интерфейс
- Карта экосистемы
- Когда стоит выбирать микросервисы
- Контекстная диаграмма
- Ролевая модель
- Проектирование систем
- + Развёртывание
-
+
Разработка
- + Git
- + Linux OS
- + Mac OS
- + Подходы организации кода
- + Языки программирования
- Виды программирования
- Интерпритатор
- Компилятор
- Разработка
-
+
Сеть
- + OSI
- + Защита
- CDN
- ngrok
- Сеть
- – Системный анализ
- + Требования
- + Хранение данных
- + Языки разметки
Виды
- Технические задания (спецификации)
описывают требования к продукту в части функциональности, производительности, безопасности, масштабируемости и т. д.
- Проектная документация
представляет архитектуру и дизайн-решения, включая диаграммы и схемы, описания и характер взаимодействия компонентов, а также другие технические аспекты решения.
- Пользовательская документация
содержит информацию по эксплуатации продукта, в том числе по установке, настройке, запуску, использованию, резервному копированию, отладке, описанию интерфейсов и т. д.
- Тестовая документация
включает в себя методики, планы, сценарии и результаты испытаний.
- Документация по безопасности
описывает способы защиты информации и управления рисками, в том числе рекомендации по обеспечению защищенности, стандарты, процедуры, политики и др.
Критерии качества документация
- Точность.
Фактическая достоверность и актуальность информации, отсутствие ошибок.
- Ясность
Четкая структура, простой стиль изложения, лаконичность. Полезные инструкции, понятные примеры, наглядные графические материалы.
- Полнота
Охват всех необходимых аспектов продукта в разрезе функциональных возможностей и потенциальных сценариев использования.
- Согласованность
Стиль, тон, терминология и оформление — всё должно согласовываться в рамках материала и соответствовать назначению документа.
- Удобство использования
Предельно ясная организация материалов, качественная навигация, возможность сквозного поиска по документам.
- Релевантность
Максимальное соответствие запросам заинтересованных сторон, ответы на поставленные вопросы, помощь в решении проблем.
- Технологичность
Простота сопровождения и обновления.
Для чего нужна документация
- Обеспечение коммуникации.
Передает техническую информацию и детали проекта менеджерам, разработчикам, тестировщикам, клиентам и т. д. Помогает всем заинтересованным сторонам понять цели, требования, архитектуру, дизайн, способы реализации и другие аспекты проекта.
- Обмен знаниями.
Фиксирует знания и позволяет обмениваться ими как внутри проектной команды, так и за ее пределами. Зачастую выступает отправной точкой для дальнейшего развития и помогает при сопровождении решений.
- Обеспечение соответствия требованиям.
Помогает приводить продукт в соответствие с юридическими, регуляторными и прочими требованиями. Упрощает реализацию аудитов, сертификаций и других оценочных процедур.
- Обеспечение качества.
Позволяет разрабатывать продукт в соответствии с установленными стандартами качества.
- Управление рисками.
Помогает выявлять и при необходимости снижать проектные риски. Используется для документирования принятых решений, предположений и компромиссов, которые могут представлять интерес для реализации будущих проектов.
Структура документов
RFC
-
Глоссарий
-
Цель
-
Решаемые проблемы
-
Сроки, зависимости, риски
-
Предложения по дальнейшему развитию (опционально)
-
Функциональные требования (в формате User Story)
-
Нефункциональные требования
-
Артефакты системного дизайна:
- Модель С4
- ER и sequence диаграммы
- BPMN
Описание backend
-
Общее описание (+ sequence диаграмма);
-
Описание методов (или ссылка на Swagger или OpenApi):
- входящие данные (с примером),
- исходящие данные (с примером),
- алгоритм работы,
- список ошибок.
-
Описание базы данных (если несколько таблиц - с ER диаграммой):
- наименование поля,
- тип поля,
- краткое описание.
-
Нефункциональные требования.
Описание frontend
-
Дизайн
-
Схема переходов
-
Описание процесса
-
Для каждого экрана:
- Макет,
- Элементы экрана:
- Логика заполнения элемента,
- Логика при взаимодействии с элементом,
- Требования к отображению элемента.