«Новые методики — ценный капитал»
25-26 сентября в рамках Сибирских интернет — недель прошла новая конференция «ProfitConf». Основной круг тем конференции вращался вокруг веб-разработок, разработок для мобильных платформ и управления веб-проектами. На конференции побывали и сотрудники компании «Икстенс».
В первый день конференции было запланировано два потока докладов, разделенных на четыре секции: backend-разработка, frontend-разработка, разработка под мобильные платформы и управление проектами. Формат предполагал короткие на 30-40 минут доклады (длившиеся в реальности несколько дольше). В секции разработки под мобильные платформы говорили о программировании и дистрибуции приложений под современные мобильные платформы: iOS, Android и другие. В секции управления проектами организаторы собрали доклады о том, как создавался тот или иной продукт и о внедрении гибких методик управления командой от ScrumTrek и Softline; в секции разработки -, доклады лидеров компаний, нацеленные на техническую аудиторию, лекции об алгоритмах, языках программирования и инструментах для разработки, в секции клаент-сайд — доклады, касающиеся верстки и работы с javascript в веб-разработке.
На второй день конференции прошло три мастер-класса, посвященных верстке: CSS3, HTML5, мобильные платформы, responsive design, верстке почтовых рассылок; Agile: основные принципы и инженерные практики XP и разработке веб-приложений на Erlang.
— В первый день я прослушал три доклада, так или иначе относящихся к Agile, Scrum и Extreme Programming, — делится впечатлениями от конференции руководитель проектов «Икстенс» Андрей Шамне. — Наиболее интересным показалось выступление Антона Каткова об основных принципах Agile и Scrum; также запомнился рассказ руководителя веб-разработок Softline об их опыте внедрения Scrum у себя в компании. Мой второй день был полностью посвящен мастер-классу Антона Каткова о Scrum. Тема эта весьма обширна, и хотя запланированные на мастер-класс 6 часов растянулись почти до 8, очень многие вопросы остались неотвеченными. Обсудили многие трудности перехода компании с общепринятой системы разработки на Scrum, связанные с этим переходом неизбежные риски и очевидные преимущества. В результате у меня сложилось впечатление, что Scrum-методология, хоть и не является панацеей, предлагает принципиально более качественную, ориентированную на конечный полезный результат систему работы, которая позволит не только улучшить качество производимого компанией продукта, но и способствует созданию уникальной атмосферы взаимного сотрудничества в достижении общей цели. А именно этого зачастую не хватает современным компаниям. Важный момент, на мой взгляд, и в том, что Scrum не является чем-то наносным, искусственным. Многие вещи, которые он постулирует, кажутся очевидными, многие компании и отдельные специалисты пользуются ими, не зная Scrum. Это значит, что теория Scrum родилась из опыта многих людей, а значит, по определению несет в себе рациональное зерно, и внедрение ее, в том или ином виде, в любой IT-компании, стремящейся к развитию, неизбежно.
— На лекциях и мастер-классах, которые я посетил, речь шла как об Agile в общем, так и о конкретных практиках Scrum и XP (Extreme Programming), — рассказывает руководитель проектов «Икстенс» Алексей Колченко. Для своих коллег он резюмировал полученную информацию, мы публикуем некоторые его выводы:
«Scrum — набор практик, опыт многих команд со всего света. В первую очередь подходит для команд, разрабатывающих продукт;
Обладание ролью Scrum master исключает обладание ролью Product owner и наоборот;
User story можно строить не только от лица юзера. US от лица системы, глуповато выглядит, но делать так можно, и это работает. Например: «я сторонняя система, получаю ордера для того чтобы их обработать и привести к xml формату».
Ежедневный Scrum митинг помогает нам держать руку на пульсе. Хороший scrum митинг занимает не более 15 минут в день.
Ретроспектива помогает нам выявить негативные и позитивные стороны прошедшего спринта и сделать выводы.
Демонстрация в конце спринта, в которой участвует вся команда — еще один механизм повышения качества работы.
Сквозная идея Scrum — «Непрерывный процесс совершенствования» (Kaizen: The Key to Japan‘s Competitive Success).
User story законченная на 99% — еще неготовая User story. Законченной она будет только после тестирования.
User story можно разбивать на задачи, которые для удобства можно оценивать по времени, но делать это необязательно
Все дискуссии должны быть лимитированы по времени. Отличная идея при планировании спринта использовать песочные часы.
Интересен подход построения команды по принципу «часть пишет новые фичи, часть фиксит баги». Это сочетание Kanban и Scrum. По Scrum делаем основные релизы, по Kanban — багофикс релизы. Scrum помогает нам планировать и делать задачи в срок (конечно, основное преимущество Scrum — это гибкость), Kanban — помогает выявить ограничения процесса, решать проблемы максимально быстро. Важным фактором такого подхода является коллективное владение кодом (CCO) – то есть каждый член команды несёт ответственность за весь исходный код. Одно из преимуществ ССО — ускорение процесса разработки, поскольку при появлении ошибки её может устранить любой программист.
Новые технологии, уже написанные до нас и отшлифованные временем — ценный капитал, его нужно накапливать и при надобности использовать».
Информацию на эту тему можно найти на сайте agilemanifesto.org/principles.html
Сайт конференции sibinetweek.ru/program/7/profitconf