anatol filin pragmatic documentation 0 5
TRANSCRIPT
Прагматичный подход к документированию Веб-проектов
Анатолий ФилинГрамант
План доклада• Откуда ноги растут – набитые шишки• Какая вообще бывает документация и зачем она
нужна• Какие бывают проекты и команды• Роли на проекте
Откуда ноги растутНаучные библиотеки для российского суперкомпьютера Векторный Фортран, векторный ассемблер. Несколько человеко-лет
Трейдинговые системы. С, С++, Perl5. 3-10 человеко- лет
Система онлайновой рекламы. ColdFusion, Java. 50-100 человеко-лет
Заказные проекты. Java, PHP, Grails. 5–20 человеко-месяцев
Стиль документации = команда + проект
При чем здесь Веб?• Большая часть проектов – интерфейсные
(оболочечные)• Много проектов, которые копируют другие известные
проекты• Широкое использование API, других готовых
строительных блоков• Распределенные команды чаще, чем в традиционных
приложениях
Существенные параметры• По какому процессу работаем• Внутренний проект или аутсоурсинг• Требуемая точность оценки• Размер проекта• Полнота команды (свои дизайнеры, аналитики и т.д.)
Проект: глубина vs ширина
Проект: size matters
Роли на Веб-проекте
• Инвестор• Заказчик• Бизнес-аналитик• Системный аналитик• Менеджер проекта
• Разработчик• Проектировщик
интерфейсов• Тестировщик• Системный
администратор
Команда
ИнвесторРазработчики
ЗаказчикPM
Дизайнер
Куча документов• Бизнес-план: Рынок, Цели проекта, этапы, экономика• Концепция системы (Vision): 1-2 стр, с высоты птичьего полета• Набор фич (Features list): Что должна делать система по фичам• Бизнес-требования (Business requirements, BRD): Что? 5-20 страниц• Функциональные требования (Functional requirements, FRD): Как? 20-
100 страниц• Список рисков• Технические и архитектурные требования (Technical Architecture
Document, TAD)• Эскизы и макеты экранов• Требования к инфраструктуре (IAD)• User stories (Agile)
Поток документовКонцепциясистемы Бизнес-
требования Требования к архитектуре
или Список фич
Функциональныетребования
Макеты экранов
Риски
Требования к инфраструктуре
Тест-планБизнес-план
Уточнение стоимости
Роли и документыИнвестор Бизнес-план Концепция системы Бизнес-требования
Заказчик (Business owner)
Концепция Бизнес-требования или набор фич Функциональные требования, Макеты экранов
Бизнес-аналитик Видение, Бизнес-требования
Системный аналитик Бизнес-требования Функциональные требования
Разработчик Функциональные требования технические требования
Тестировщик Функциональные требования Требования к тестированию
Проектировщик интерфейсов
Бизнес-требования Макеты экранов
Системный администратор
Функциональные требования Требования к инфраструктуре
А где же аналитика?
Очевидные правила• Если нужна грубая оценка, делаем BRD, если нужна точная
оценка – делаем FRD • Если проектировщик интерфейсов вне команды, нужно задание
для проектировщика, либо FRD• Если проект «интерфейсный» достаточно BRD и макетов
экранов• Если проект «глубокий» нужна аналитика и соответственно FRD
Проект: корпоративный• Внутренний заказчик -> нужна грубая оценка по срокам• Монолитная команда• Небольшой проект: 3-5 человеко/месяцев
• Бизнес-требования – Экраны - Система
Проект: старт-ап• Внутренний заказчик -> нужна грубая оценка по срокам• Монолитная команда• Небольшой проект: 3-5 человеко/месяцев
• Бизнес-требования – Экраны - Система
А что если Agile?
stories
ите
рац
ии
Текущийсрез
системы
А теперь – мастер-класс
Берем проект, обсуждаем и решаем, какая будет нужна документация
Вопросы ?