Методологии проектного управления
Waterfall
Основные этапы
Аналитика (определение требований)
Проектирование
Разработка (реализация)
Тестирование
Эксплуатация и техническая поддержка
Манифест методологии
Следуйте правилам
Нет ТЗ (технического задания)— нет продукта
Чем подробнее ТЗ, тем лучше продукт
Следите, чтобы не было изменений
Основные принципы
Жесткая последовательность этапов разработки
переход к новому этапу только после успешного завершения предыдущего
фиксирование стоимости продукта
заказчик не привлекается к непосредственному процессу разработки
изменения могут быть внесены только после завершения всего процесса разработки
Преимущества
Удобная отчетность
Оценка стоимости и сроков проекта
Понятная и проста] структура процесса разработки
Стабильность задач
Недостатки
Лишенный гибкости продукт
"Стойкость" к изменениям
Инерционность
Повышенный риск
Выбор методологии
Подходит компаниям, если
большая часть или вся работа над проектом проводится на аутсорсе
есть четкая концепция продукта
нет ограниченности во времени
создание бизнеса на соблюдении строгой последовательности выполнения задач
НЕ подходит команиям, если
компания хочет создать инновационный продукт или крупный проект
компания не уверена в концепции
финансовые ресурсы не являются ключевым ограничением
гибридная методология
Agile
Основа гибкой методологии — разбиение проектов на маленькие рабочие кусочки, называемые пользовательскими историями.
Основные принципы
Наивысшим приоритетом для нас является удовлетворение потребностей заказчика, благодаря регулярной и ранней поставке ценности
Изменение требований приветствуется даже на поздних стадиях разработки. Agile-процессы позволяют использовать изменения для обеспечения конкурентного преимущества
Работающий продукт следует выпускать как можно чаще, с периодичностью от двух недель до двух месяцев
На протяжении всего проекта разработчики и представители бизнеса должны ежедневно работать вместе
Над проектом должны работать мотивированные профессионалы. Чтобы работа была сделана, создайте им условия, обеспечьте поддержку — и полностью им доверьтесь
Непосредственное общение — наиболее практичный и эффективный способ обмена информацией как с самой командой, так и внутри команды
Работающий продукт — основной показатель прогресса
Agile помогает наладить устойчивый процесс разработки. Инвесторы, разработчики и пользователи должны иметь возможность бесконечно поддерживать постоянный ритм
Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость проекта
Простота как искусство сократить до минимума лишнюю работу крайне необходима
Самые лучшие требования, архитектурные и технические решения рождаются у самоорганизующихся команд
Команда должна систематически анализировать возможные способы улучшения эффективности и соответственно корректировать стиль своей работы
Манифест Agile
Люди и взаимодействие важнее процессов и инструментов
Работающий продукт важнее исчерпывающей документации
Сотрудничество с заказчиком важнее согласования условий контракта
Готовность к изменениям важнее следования первоначальному плану
Преимущества
Короткие и понятные итерации
Высокая степень вовлеченности исполнителей, организаторов и заказчиков проекта
Во главе угла стоит рабочий продукт как основной показатель прогресса проекта
Минимизация рисков, благодаря гибской системе внесения изменений
Недостатки
Стимулирование постоянных изменений проекта
Повышенные требования к квалификации и опыту команды
Философский характер методологии
Сложность подсчета итоговой суммы работы
факторы выбора
Agile подходит компаниям, если
start -up
работает опытная команда
нужно быстро получить рабочую версию
заказчик выступает в качестве партнера
продукт разрабатывается в сфере, подверженной постоянным изменениям
НЕ подходит компаниям, если
компания не готова тратить доп ресурсы на налаживание коммуникаций
продукт должен быть создан к конкретному сроку
бюджет ограничен
нужна документация по всем процессам
Семейство методов
Scrum
ключевые шаги в технологии
выбор владельца продукта
сбор команды проекта
поиск скрам-мастера
составление эклог продукта
планирование спринтов
организация ежедневных пятнадцатиминутных "мин-апов"
проведение обзора рабочих частей продукта
проведение ретроспективы
основные элементы
Product Backlog
Sprint Backlog
Sprint Goal
Sprint Burndown Chart
преимущества
самоорганизованные команды
работающий улучшенный продукт после каждой итерации
легко адаптировать продукт к рынку
легко маштабируется
подходит для всего
недостатки
требуется экспертиза в команде
страх отпустить вожжи
если известны все требования к продукту - нецелесообразно
требует дополнительной роли scrum - мастера
плохо подходит для больших команд
Extreme
Programming (XP)
Lean
RUP
Crystal
DSDM
FDD
Kanban
цель - получать готовый качественный продукт вовремя
преимущества
визуализация потока предоставления ценности
быстрое понимание узких мест системы
обеспечение качества
недостатки
большой уровень гибкости, можно уйти не туда
рушит российский менталитет ТК РФ