воскресенье, 25 ноября 2007 г.

Грибной сезон

Была больше месяца назад на грибах. Дошли руки обработать фотки и выложить более-менее подробный рассказ на моем Кулинарном блоге. Хотелось добавить, что поскольку собирать грибы я очень люблю, то это будут не самые последние фотки грибочков от меня:)

Вот еще несколько удачных фоток с предыдущих грибных сезонов:
1. Притаившиеся лисички

2. Статный белый гриб

3. Сказочный мухомор, выглядит как будто не настоящий:)

4. И еще один мухомор.

пятница, 9 ноября 2007 г.

Agile

Недавно была на тренинге по технологиям гибкой разработки (Agile). Проводил тренинг Асхат Уразбаев (Certified Scrum Master, лидер и вдохновитель сообщества www.agilerussia.ru и сообщества www.agileukraine.org). Что вам сказать? Узнала там, что некоторые вещи мы все-таки на практике делаем не так. Есть куда рости, куда усовершенствовать процесс и самих себя.
Для тех, кто не знаком с методологиями Agile, ниже короткий обзор данной технологии.

Из наиболее используемых сейчас технологий разработки наиболее популярными являются RUP и Agile.

RUP использует стандартный водопадный процесс разработки, когда даже при итерационном подходе разработка ведется последовательно. При этом достаточно длительное время (несколько месяцев) клиент может не видеть результатов работы. Изначально пишется практически вся документация, потом, видя полную картину, принимаются архитектурные решения, ну, и собственно разработка, тестирование, стабилизация, выкладка.

Классическая водопадная модель выглядит так:


Соответственно в ситуации, когда оказывается, что расхождения между тем, что хотел заказчик, и тем, что сделали разработчики, существенны, то это выливается в копеечку. Особенно важно не допустить ошибок на стадии постановки требований или проектирования. Данные ошибки в результате стоят больше.

Agile также имеет итерационный и инкрементальный подход. При этом высокоприоритетный функционал делается в первую очередь. Длительность итерации составляет 2-4 недели. Соответственно заказчик раньше видит результат и раньше дает обратную связь, в результате в меньшую копеечку выливаются переделки.

Уже сформировался наиболее общий Agile подход, включающий в себя практики SCRUM и XP.

Модель разработки SCRUM:



Коротко, процесс разработки по общему Agile подходу имеет следующий вид. Процесс разработки делится на итерации. Каждая итерация начинается с презентации предложений по функционалу на итерацию с приоритетами (Story Card Presentation).
Далее идет оценка данного функционала по приоритетам (Estimation). Потом формируется список задач на итерацию исходя из продуктивности команды и данных оценок (Iteration Backlog). Далее каждый день идет разработка. При этом проводятся Daily Scrum Meetings. По окончанию разработки проходит Ретроспектива (некий анализ процесса разработки) и заканчивается итерация демонстрацией сделанного функционала.
А дальше все по новой:)

Конечно, еще очень много тонкостей коммуникации и организации, о которых я не упоминала, но об этом можно было бы еще день, если не больше рассказывать:-).

Дополнительные ссылки на русском языке:
  • Множество литературы и информации можно найти здесь.
  • Статья о современных процессах разработки тут.