Данный доклад предназначен для тех, кто только начинает изучать гибкие методы разработки программного обеспечения, которые обычно называют Agile.
Я расскажу базовые вещи о ценностях и принципах Agile, на основе которых развиваются современные Agile-методологии Scrum и Kanban. Мы рассмотрим вопрос, почему появилась гибкая разработка (на Западе и у нас), чем она отличается от традиционного подхода к разработке программного обеспечения и почему итеративные методологии стали фактически стандартом дефакто в софтверном мире.
В дополнение к управленческим практикам мы добавим инженерные практики из экстремального программирования, и поймем поймем почему без гибкой архитектуры не бывает гибкой разработки.
Также будет затронута тема внедрения Agile и типичные проблемы, с которыми приходится сталкиваться на этом пути.
Мир меняется. Высокая скорость изменений трансформирует бизнес-модели и сами организации. В новом мире решения надо принимать быстро и уметь синхронизировать работу большого количества людей. Важность по-настоящему командной работы растет. Появляются роли, главной задачей которых является построение эффективной команды.
— Речь идет о роли Scrum Master/Agile Coach. В докладе мы ответим на вопросы:
— Какое место они занимают в организации?
— Какими они должны быть?
— Что входит в их обязанности?
— Что они должны знать и уметь?
Основу подхода заложили два японских специалиста Hirotaka Takeuchi, Ikujiro Nonaka в статье The New New Product Development Game, от 1996 год. В статье обобщили опыт нескольких японских корпораций (Xerox, Toyota, Nec и другие), работающих с принципиально новыми продуктами. Ключевая идея статья заключалась в формировании самоорганизующихся команд, которые делают короткие итерации, автономны от других, мотивированы на результат командными целями, и повышает мастерство друг друга делясь друг с другом опытом.
С течением времени под этот подход формировалось все больше и больше проектных методик, пока в 2001 году на горнолыжном курорте не произошла встреча 17 специалистов по разработке ПО. На этой встрече была сформирована общая система ценностей по управлению проектами, в дальнейшем получившая название Agile – манифеста. 4 ценности и 12 принципов легли в основу множества методов согласно подходу Agile.
1. Люди и взаимодействие важнее процессов и инструментов;
2. Работающий продукт важнее исчерпывающей документации;
3. Сотрудничество с заказчиком важнее согласования условий контракта;
4. Готовность к изменениям важнее следования первоначальному плану.
Таким образом, не отрицая важности того, что справа, всё-таки больше ценится то, что слева.
C 2001 подход Agile существенно расширил свои границы и вышел за пределы IT-бизнеса. Теперь под зонтиком Agile находятся многие управленческие и инженерные фреймворки по управлению проектами, формируя зонтик Agile. Под этот зонтик попадают подходы Scrum и Kanban, Crystal и экстремальное программирование (XP), а также другие системы управления и инженерные практики.
Важно понимать, что Agile подходы работают не всегда, и Дейвом Снойденом была разработана Кеневин модель, которая показывает, что использовать экспериментальные практики, коими являются подходы Agile, можно в ситуациях, когда не до конца очевидны причинно-следствие связи проекта, цель представляет собой скорее видение, образ, а стоимость переделок не запредельно высока.
Тем ни менее, в случае инноваций и проектов с высокой степенью неопределенности, подходы Agile являются наилучшими из существующих в современном мире.
А вы никогда не задумывались, что писатели, поэты и другие деятели искусства не просто так писали свои произведения? Они программировали сознания под свой лад? В этом видео я попытаюсь сопоставить жанры искусства с языками программирования.
Почему термин «информационная безопасность» слишком широк, почему «кибербезопасность» точнее, откуда рождаются угрозы, какие есть средства их преодоления и кто этим занимается.