понедельник, 7 июня 2010 г.

Впечатления сурового челябинского программиста от AgileDays Екатеринбург


Суровый челябинский программист в пятницу, четвертого июня, побывал на интересном IT-мероприятии, которое проводилось в славном городе Екатеринбурге. Организаторами выступали СКБ Контур и ScrumTrek, генеральным спонсором являлась компания Naumen. Фотографии, темы докладов и некоторая информация об основных действующих лицах доступна на официальном сайте конференции, не знаю, правда, будет ли выложено видео. Здесь же я хочу поделиться своими впечатлениями.

Во-первых, конечно, самое главное - доклады и информация. Лично я езжу на конференции редко и только за этим, хотя такую точку зрения разделяют далеко не все. Судя по твиттеру, основную массу народа больше беспокоило отсутствие WiFi. Мне как человеку от управления проектами далекому и с Agile, Scrum, прочими XP и TDD не работавшему было интересно, хотя информационная составляющая могла быть несколько получше. На конференции было представлено девять докладов (исключая вступительные слова и доклад Максима Гапонова, который не состоялся):



1. Асхат Уразбаев. Обзор Agile-методологий. В целом доклад показался неинтересным. Докладчик очень быстро пересказал чек-лист, разработанный их же компанией и предоставленный каждому участнику в раздаточных материалах. После его доклада больше половины зала занялась чтением этого чек-листа. Польза от такого доклада весьма сомнительна.

2. Игорь Гольдберг. Agile и Контур. История взаимоотношений. Интересный доклад про то, как в СКБ Контур разрабатывают проекты (в том числе и довольно крупные), используя гибкие методологии. Понравилась честность докладчика, он не рекламировал ни СКБ Контур, ни Agile, прямо сказав, что есть команды, которые успешно работают и без гибких методологий. Понравилось детальное описание процесса разработки в тех группах, которые используют Scrum, правда я так понял, что мониторы у разработчиков стоят "лицом" наружу, что не очень хорошо с психологической точки зрения. Было много слайдов и фотографий, демонстрирующих процесс.

3. Михаил Заборов. Как правильная архитектура позволяет сделать большие проекты в Agile. Наиболее интересный доклад на конференции. Михаил произвел впечатление грамотного человека, понимающего то, о чем он говорит. Проекты подразделяются на большие (занято 7-9 человек, 7-8 лет) и очень большие (30-60 человек, 10-15 лет). Когда занято столько народу Agile не работает, поэтому создают команды по 7-8 человек, между которыми организуют взаимодействие. Естественно, что в таком случае надо делить не только команды, но и систему, а затем одна система будет разрабатываться одной командой, тем самым обеспечивается независимость команд друг от друга и отсутствие необходимости их синхронизировать (естественно, кроме API). В компании CustIS принято выделять подсистемы исходя из организационной структуры предприятия (интересный подход, позволяет автоматизировать предприятие по частям). В заключение были приведены примеры из жизни.

4. Никита Филиппов. Управление требованиями в Agile. Здесь было много воды и рекламы. Общий вывод Никиты: "Если ПО плохое, то у нас не Agile, а если хорошее - Agile", с чем сложно согласиться. По существу было сказано следующее:

- Необходимо внятно согласовывать требования с заказчиком.
- Требования нужно прорабатывать до начала итерации. Строго не рекомендуется менять требования в средине итерации.
- Вырабатывать требования должны не только аналитики, к этому нужно привлекать так же и заказчика.

5. Илья Гаврилов. Agile и Mission Critical System как гарантировать отсутствие критических дефектов: пример внедрения. Компания Exigen Services, в которой работает Илья, занимается разработкой приложений, для которых критична надежность функционирования и отсутствие дефектов. Особое место в докладе занимало описание трудноуловимых дефектов - т.н. "Серой зоны", по расчетам Ильи таких дефектов обычно около 50%, и описанию как бороться с нефункциональными требованиями (производительность, безопасность, надежность и т.д.). Основная идея - при выработке требований обязательно нужно привлекать админов, а не только бизнес-аналитиков. Большое внимание так же было уделено организации процедуры тестирования с учетом того, что заказчик за бугром и не всегда готов выделять дополнительные ресурсы.

6. Асхат Уразбаев , Никита Филиппов. Как продавать Agile. Интересный доклад, правда не совсем серьезный (а может это - его преимущество). Началось все со сценки "продай мне парное программирование"), которая была довольно вялой, но потом были даны довольно ценные советы по тому, как вести себя с заказчиком. Только не совсем понятно какое отношение имеют эти советы непосредственно к Agile, по-моему нужно всегда уметь говорить "нет" заказчику или договариваться "на берегу", независимо от используемой методологии. Ну и конечно, если долго и красиво что-то говорить заказчику, то он в конце-концов в это поверит.

7. Александр Бындю. Человеческий фактор и Agile. Если исключить приветственные выпендривания Александра и его наезд и навешивание ярлыков на организаторов, то доклад был интересным, но очень спорным. "Порадовал" чисто менеджерский подход "во всем виноваты программисты, а если они этого не понимают, то находятся на позиции "жертвы". Должен же программист находиться на позиции "автора" - решать свои проблемы сам, не напрягать бога менеджера, не отвлекать его своими делами, тогда всем будет хорошо.

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

8. Борис Вольфсон. Использование ICONIX для анализа требований в Scrum. Сначала был (да, собственно, и есть) UML, но UML - сложный формат и довольно избыточный. Много информации дублируется на разных диаграммах, книги по UML редко составляют менее 900 стр. и прочие страсти. ICONIX - процесс, который должен решить данные сложности - используется подмножество UML, при проектировании системы создаются диаграммы, которые должны быть понятны заказчику (основная - диаграмма прецедентов, понятны заказчику подразумевает, что не должно быть излишней детализации), в основу которого (процесса) положен анализ требований. В обще-то ICONIX был разработан для методологии "Водопад", однако в компании SoftLine его сумели применить для гибкой разработки, сделав итерационным (анализ требований, составление диаграмм, кодирование, тестирование, актуализация документации, анализ новых требований, ...).

9. Марат Бакиров. Team Foundation Server. Мне "понравилось" описание на официальном сайте конференции. Майкрософт. Такой Майкрософт. Цитирую: "зоопарк из различный опенсорс инструментов". Думаю, что этим все сказано.

Пару слов о тусовке и организации. Знакомиться я ни с кем не стал, как-то не было желания, но удалось пообщаться с некоторыми старыми знакомыми. Забавно было, что конференция позиционировалась больше как менеджерская, однако присутствовало много разработчиков в том числе и из Челябинска.

Народу было так много, что не всем хватило места в конференц-зале, люди стояли сзади, люди стояли вдоль стен. Так же были существенные проблемы с проектором - со второй половины зала, особенно с конца, слайды были абсолютно не видны. Ситуация, когда включили второй проектор сзади, положение не спасла, т.к. вертеть головой туда-сюда не очень то удобно.

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

В целом, несмотря на недочеты, мероприятию можно поставить твердую четверку. Видно, что организаторы и спонсоры постарались, за что им отдельное спасибо, и, надеюсь, что следующая встреча будет лучше.

UPD1: Выложена аудиозапись конференции.

UPD2: Мероприятие продолжится в Санкт-Петербурге и Самаре. Если вы хотите выступить с докладом или оказать спонсорскую поддержку - обратитесь к организаторам.

Понравилось сообщение - подпишитесь на блог или читайте меня в twitter

3 комментария:

Владимир Кузнецов комментирует...

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

Лично у меня только положительные эмоции от поездки. Удалось взглянуть на привычные вещи немного с другой стороны.

Unknown комментирует...

Спасибо за добрый отзыв..
только в цифрах явная ошибка :-(
(Большой проект - 7-9 чел x 7-8 лет)
(Очень Большой проект - 30-60 чел x 10-15 лет). 800 человек - это уже Microsoft ....
Михаил Заборов..

Unknown комментирует...

@Михаил
Виноват, исправил.

Отправить комментарий

Любой Ваш комментарий важен для меня, однако, помните, что действует предмодерация. Давайте уважать друг друга!