Эта методология подойдет для организации работы в маленьких командах и проектах. Пока крупные компании предпочитают Scrum и Agile, эта методология выигрывает за счет своей простоты. Расскажем, что она из себя представляет.
Немного истории
Crystal Clear разработал Алистер Кокберн, известный в качестве одного из создателей манифеста гибкого программирования. Он долго исследовал и анализировал практики коммерческой разработки, принятые в разных командах.
А в 1994 году использовал свои наблюдения, консультируя проект Orange. По мотивам этой работы он написал книгу, а в 1998 году создал семейство методологий Crystal. Обычно их разделяют в зависимости от количества людей в команде.
Crystal Clear предназначена для групп до 8 разработчиков. Есть еще Red для команд из 50-100 сотрудников, Yellow для 10-20 и т.д.
Основные принципы
Разработка по Crystal Clear стоит на трех китах:
- Осмотическая коммуникация. Односторонняя диффузия похожа на коммуникацию разработчиков во время проекта. Таким образом участники общаются друг с другом и воспринимают информацию.
- Быстрая доставка. В основе методологии лежат частые релизы новых версий программного обеспечения. Разработчики должны стараться разбивать обновление на более мелкие части.
- Рефлексия. Она считается главным способом работы над улучшением продукта. Команде необходимо регулярно собирать и анализировать информацию о положительных и негативных изменениях в работе.
Из чего состоит
В основу этой методологии положили шесть основных понятий. Именно по ним нужно строить процесс разработки.
- Проектирование. В него входит подготовка, доставка и так называемый «ритуал завершения», который представляет собой анализ и работу над ошибками. Последние два цикла могут повторяться несколько раз. А общий цикл может длится до двух недель.
- Доставка. В нее входит дополнительная калибровка плана выхода нового программного обеспечения и несколько итераций. В итоге команда должна выпустить готовый к использованию код. Затем проводится его доставка и последующий анализ. Цикл может длится от одной недели до нескольких месяцев.
- Итерации. В них входит три основные части: планирование, интеграция и завершение.
- Единица измерения. В ее качестве могут принимать как один рабочий день, так и неделю. Ими отмеряют каждый цикл. В конце нужно созывать встречу и создавать отчеты.
- Период интеграции. В него входит собственно написание кода, его интеграция в соответствующий продукт и проверка работоспособности системы. Есть два пути: можно внедрять новый код ежедневно (еженедельно) или сделать это непрекращающимся процессом, параллельным разработке.
- Собственно разработка. Это процесс программирования, когда каждый из команды пишет код, проверяет его и интегрирует в общую систему.
Основные техники Crystal Clear
Эту методологию обычно настраивают в два раунда. На первом проводят интервью с разработчиками и создают базу знаний опыта команды. На втором занимаются обменом опыта, анализом сильных и слабых сторон команды с обсуждением решения проблем.
В качестве техник используют:
- Блиц-планирование с составлением тайминга задач и дорожной карты проекта.
- Парное программирование — совместная работа над одной задачей двух коллег.
- Воркшоп рефлексии — часовое совещание, на котором обсуждают слабые места продукта и возможности по их улучшению.
- Slide-by-slide — техника разработки, в процессе которой два коллеги сидят рядом, могут видеть работу друг друга, но занимаются разными задачами. Именно за счет такой близости должна производиться осмотическая коммуникация.
No comments.