Олег Бунин (Онтико) | Менеджмент и бизнес-процессы в...
TRANSCRIPT
Менеджмент и бизнес-процессы в разработке highload-проекта
Олег Бунин[email protected]
К нам пришёл заказчик!
Первая версия процесса
Стадия №1Подготовим описание
задачи
Результат стадии №4
Матрица задачи -> часы специалистов разных
специальностей
Первая версия процесса
Вторая версия процесса
Стадия №3Декомпозиция на
задачи
Требования к описаниям задач:
1. Задачи атомарны;2. Чем меньше по объёму – тем лучше (< 1 дня);3. Грамотный русский язык;4. Запрещается копипастить из скайпа;5. Дизайн-макеты, скриншоты – всё для фронта;6. Задача не меняется со временем;7. Запрещено использовать кванторы всеобщности,
типа “заменить на всех страницах”;8. Все устные обсуждения фиксируются в описании;9. Запрещено ставить подзадачи в комментариях.
Результат стадии №3Сформирован список
задач
Вторая версия процесса
Третья версия процесса
Стадия №5
Корректировка результата
Разработчики всегда ошибаются!
Разные коэффициенты для разных
специальностей
Разные коэффициенты для разных классов задач (обычные и
инфраструктурные)
Результат стадии №5Реальный объём
проекта
Третья версия процесса
Но объём проекта не равен календарному
плану!
Четвёртая версия процесса
Стадия №6Формирование
календарного плана
Что важно учитывать:
1. Взаимосвязи между разработчиками;2. Взаимосвязи между задачами;3. Атомарность этапов;4. Управление процессом:
- время на SCRUM;- время на планёрки;- время на ретроспективы.
До 20% уходит на планирование!
Нужно ли учитывать тот факт, что эффективное время работы менее 8
часов в сутки?
Проверьте, не забыли ли:
1. Время на регрессионное тестирование перед сдачей этапов;2. Время на деплои этапов;3. Известные (и неизвестные отпуска);4. Буферное время между этапами;5. Время на технический долг;6. Праздники и отходняк;7. Текучка кадров, время на поиск и обучение сотрудников;8. Корпоративные мероприятия, выезды для объединения
команды и поднятия боевого духа;9. Время на обработку изменений (не реализацию, а
обработку);10. Поиск и вовлечение подрядчиков.
PS: Даже если у вас Agile и горизонт планирование в две недели вы всё равно могли это забыть
Результат стадии №6Диаграмма Ганта
Добавляем аналитиков и менеджеров
(как целое, 67% менеджера не бывает)
Результат стадии №6Диаграмма Ганта с
менеджерами
Стадия №7Составляем смету
Мы переводим календарный план, в котором учтено всё, в смету.
Умножаем месяцы из календарного плана на ставки специалистов.
Поздравляю!
Вы получили себестоимость
проекта.
Четвёртая версия процесса
Эй! Уважаемый!
А где highload?
В чём технические отличия обычного
проекта от highload-проекта?
В простом проекте данные хранятся так,
как их удобно хранить.
В highload-проекте данные хранятся так, как
их удобно выводить.
Возникающие особенности и риски
1.Нарушается логическая связь между простотой
элемента и простотой его реализации
2.Программисты чаще ошибаются в расчёте требуемых ресурсов
4 изменения в бизнес-процессы
1.Для точной оценки требуемых
ресурсов потребуется привлекать высококвалифицированных
технических специалистов для разработки технического дизайна.
2.К разработке технического дизайна
допускается только полностью описанный эпик.
В описании эпика должна содержаться вся необходимая информация:
1. Верхнеуровневое описание;2. Детальное описание бизнес-логики;3. Дизайн-макеты;4. Ссылки на страницы в прототипе;5. Критерии приёмки для тестирования;6. Ответы на потенциальные вопросы;7. Описание перспектив развития функционала;8. Нетехнические требования.
Это не совсем техническое задание –это документ, удобный
для разработки
3.К оценке добавляется целый ряд
инфраструктурых задач.
Добавьте инфраструктурные задачи:
1. Нагрузочное тестирование;2. Пуско-наладочные работы;3. Разработка JS-машины;4. Кроссбраузерность (и мобильные браузеры);5. Мультиязычность;6. Тестирование безопасности;7. Отказоустойчивость;8. Миграция данных;
Проверьте, не забыли ли highload-задачи:
1. Заложено ли время на сборку страниц?2. Разработка заглушек для SOA;3. Время на проектирование API;4. Согласование взаимодействие между серверными и клиентскими
разработчиками;5. Code review – в крупном проекте тимлид будет занят только им;6. Разработка документации для редакторов, коммуникация
специалистов с заказчиком;7. Время на изучение новых технологий;8. Юнит-тесты;9. Время на изготовление рыб (изображений, текстов, объектов) для
демонстрации;10. Аналитические работы;11. Время на технический дизайн;12. Обновление и модификацию технического задания.
Пятая версия процесса
Готовим описание проекта / фичи /
итерации
Проектирование технического
дизайна
4.Компетенций менеджера
недостаточно – разработчиками управляет тимлид.
Сессия вопросов и ответов
Как организован сам процесс разработки?
Напиши на [email protected]и получи три документа
1. Структурирование и использование JIRA;2. Инструкция по подготовке эпиков;3. Правила написания технического дизайна.