Agile At Scale

1,056 views
994 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,056
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
42
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Agile At Scale

  1. 1. ® IBM Software Group DRAFT Масштабирование Agile - возможные стратегии Дмитрий Лапыгин технический специалист по продуктам IBM Rational, IBM EE/A email: dmitry_lapygin@ru.ibm.com © 2008 IBM Corporation IBM Software Group | Rational software Содержание •Причины успеха и современные вызовы Agile DRAFT •Стратегии для больших команд •Распределенные команды •Agile в сложном окружении •Agile на уровне предприятия •Возможные сценарии с IBM Rational •Дополнительная информация 1
  2. 2. IBM Software Group | Rational software Повышение эффективности разработки ПО Рост производительности за счет: -Раннего DRAFT обнаружения и коррекции ошибок -Сокращения рутинной, непроизводительной деятельности Стоимость исправления дефекта возрастает вместе с продвижением по стадиям жизненного цикла ПО IBM Software Group | Rational software Успешность проектов разных типов 4.9 Iterative Quality 5.0 2.3 0.4 Agile DRAFT Functionality 1.8 2.7 5.6 6.0 3.9 Money 3.0 Traditional 0.2 0.8 Agile Iterative 4.4 Traditional Time 4.0 0.8 Ad-Hoc Ad-Hoc 0.8 Agile-команды дают более качественный результат, делают это быстрее, обеспечивают лучшее соответствие требованиям и обеспечивают более высокий ROI, чем традиционные команды DDJ 2008 Project Success 2
  3. 3. IBM Software Group | Rational software Причины успеха Agile-техник DRAFT Стоимость Время реакции IBM Software Group | Rational software Цикл Agile разработки DRAFT Source: www.ambysoft.com/essays/agileLifecycle.html 3
  4. 4. IBM Software Group | Rational software Расширение Agile на полный цикл первый фактор масштабирования DRAFT IBM Software Group | Rational software Факторы масштабирования Agile Размер команды Требования регуляторов Under 10 1000’s of Critical, Low risk developers DRAFT developers Audited Географическое Сложность приложений распределение Straight Intricate/ Co-located Global -forward Emerging Disciplined Корпоративная среда Agile Распределенные команды Project Enterprise Delivery (партнеры. подрядчики) focus focus Collaborative Contractual Сложность организции Сложность технологий Flexible Rigid Heterogeneous, Homogenous Legacy 4
  5. 5. IBM Software Group | Rational software Что такое Disciplined Agile? Это эволюционный подход (итеративный и постепенный) к поставке ПО, регулярно, вовремя и эффективно по стоимости DRAFT производящий высококачественное ПО в жизненном цикле, управляемом рисками и потребностями бизнеса. Обеспечивается тесным взаимодействием, дисциплиной и Основные принципы самоорганизацией при активном привлечении заинтересованных лиц “Fits just right” процесс для гарантии правильного понимания Постоянное тестирование их запросов командой. Тесное взаимодействие в команде Быстрый отклик на изменения Disciplined agile delivery обеспечивает Постоянное вовлечение заказчика повторяемость результата на основе Частый выпуск работающих решений необходимого количества формализма. IBM Software Group | Rational software Масштабирование - Agile scaling model (ASM) Базовая Agile разработка Фокус на реализации (кодирование) Цель – разработка высококачественной системы DRAFT с упором на самоорганизацию, взаимодействие и эволюционный подход Ориентация на полезность заказчику и выпуск работающих прототипов Небольшие локальные команды разработчиков Disciplined Agile Delivery Расширение agile на полный жизненный цикл систем Управление на основе рисков и требований бизнеса Самоорганизация в рамках организационной модели управления Небольшие, локальные команды, создающие простые решения Масштабирование Agile Disciplined Agile Delivery с учетом одного или нескольких факторов масштабирования 5
  6. 6. IBM Software Group | Rational software •Стратегии для больших команд •Распределенные команды DRAFT •Agile в сложном окружении •Agile на уровне предприятия •Возможные сценарии с IBM Rational •Дополнительная информация IBM Software Group | Rational software Влияние размера команды успешность попыток применения Agile 200+ 101 to 200 51-100 DRAFT Success 21 to 50 Attempt 11 to 20 6 to 10 1 to 5 0 50 100 150 Кол-во ответивших Source: Dr Dobb’s 2008 Agile Adoption Survey 6
  7. 7. IBM Software Group | Rational software Большие Аgile команды DRAFT Организуйте работу на основе архитектуры Не следует основываться на ролях Архитектурная стратегия должна отражать стратегию требований – формирование команд по функциональности или по компонентам Необходимо координировать управление проектом, управление требованиями и техническую реализацию. Пересмотрите некоторые роли при необходимости (например, Agile DBA) Предоставьте руководства по инфраструктуре и соглашениям по разработке (глоссарии. Правила наименования и т.п.) IBM Software Group | Rational software Каждая подкоманда имеет собственный product backlogs Обльшие и распределенные команды разделяются на подкоманды Каждая подкоманда имеет собственный список задач и Product Owner DRAFT Потребуется координация для зависимых задач разных подкоманд Необходимо обеспечить взаимодействие между подкомандами с минимальными задержками Burndown каждой команды должен встраиваться в burndown всего проекта Потребуется инструментальная поддержка “Complex Requirements” in Dr Dobb’s Journal, December 2008 www.ddj.com/architect/211800534?cid=Ambysoft 7
  8. 8. IBM Software Group | Rational software «Удлинение» итераций для компенсации усилий по координации No Iterations длительность итераций в проектах 6% > 8 Weeks 1% DRAFT 7-8 Weeks 2% 5-6 Weeks 7% 4 Weeks 23% 3 Weeks 17% 2 Weeks 33% 1 Week 9% < 1 Week 3% Source: Dr Dobb’s 2008 Agile Adoption Survey IBM Software Group | Rational software •Распределенные команды •Agile в сложном окружении DRAFT •Agile на уровне предприятия •Возможные сценарии с IBM Rational •Дополнительная информация 8
  9. 9. IBM Software Group | Rational software Рейтинг успешности Agile-проектов (%) распределенность команд DRAFT78 All 83 Co-Located Near Located 72 Far Located 60 0 20 40 60 80 100 Source: Dr Dobb’s 2008 Agile Adoption Survey IBM Software Group | Rational software Планирование итераций масштабирование Каждая подкоманда планирует свои итерации Рroduct owners должен знать о зависимостях DRAFT между зписками задач в итерациях подкоманд Ответсвенные за архитектуру (architecture owners) должны учитывать зависимости между архитектурой подсистем Лидеры коман должны учитывать основные зависимости с другими подсистемами, особенно если они имеют другое расписание итераций Вам потребуются средства автоматизации для распределенных команд, больших команд или команд, вынужденных соответствовать требованиям регуляторов. www.agilemodeling.com/essays/iterationModeling.htm 9
  10. 10. IBM Software Group | Rational software Планирование релизов масштабирование Для “команды команд” потребуется: Общий план релизов Планы релизов для каждой подкоманды Общий ритм (например 6 недель) DRAFT Ритм каждой подкоманды коррелирует с общим (1, 2, 3 или 6 недель) Начальная концепция (требования) и дизайн архитектуры – критически важные параллельные задачи. Чем сложнее проект, тем больше моделирования потребуется. (что не означает детальных спецификаций в начале проекта) Зависимость от внешних команд – критический фактор, особенно если это НЕ agile-команды (шансы их попадания в график в этом случае уменьшаются) http://www.agilemodeling.com/essays/initialRequirementsModeling.htm http://www.agilemodeling.com/essays/initialArchitectureModeling.htm IBM Software Group | Rational software Используйте лучшую стратегию для коммуникаций Используйте лучший из доступных в данный момент вариантов коммуникации Прямое общение (face-to-face) не DRAFT всегда может быть доступно Документация: •Наименее эффективное средство коммуникации из доступных •Один из вариантов обмена информацией, но в большинстве случаев доступны лучшие •Подходит для обзорной информации и информации для заинтересованных лиц и заказчиков 10
  11. 11. IBM Software Group | Rational software •Agile в сложном окружении •Agile на уровне предприятия DRAFT •Возможные сценарии с IBM Rational •Дополнительная информация IBM Software Group | Rational software Сложность технологии Потенциальные сложности: Гетерогенная среда Устаревшие данные DRAFT Устаревшие системы Интеграция с внешними системами Отсутствие технологий (например, работа с beta- версией) Open source с различными стратегиями лицензирования Программные пакеты Отсутствие или неполнота тестовых данных или планов 11
  12. 12. IBM Software Group | Rational software Agile и устаревшие системы Working With Legacy in Some 78% Way Integrating With DRAFT 57% Legacy Systems Evolving Legacy 51% Systems Working with 45% Legacy Data Source: Ambysoft Agile Project Initiation 2009 Survey www.ambysoft.com/surveys/projectInitiation2009.html IBM Software Group | Rational software Организационные сложности Культурные различия в организации могут существенно препятствовать прогрессу •Некоторые участники предпочитают работать в бюрократическом стиле DRAFT •Всеобъемлющая документация и рецензирование считаются необходимыми для успеха Существующие процессы, процедуры и стандарты могут противоречить agile подходу •Последовательные/вдопадные стратегии •Медленный процесс принятия решений (например, только через архитектурный комитет) Разные подразделения используют различные, часто противоречащие друг другу подходы •Разработчики хотят использовать agile подход, контроль качества хочет последовательный процесс Существующие бизнес-процессы снижают шанс на успех •Модели бюджетирования проектов •Стратегии управления ориентированы на «водопад» 12
  13. 13. IBM Software Group | Rational software Используйте подходящую стратегию управления Управление в стиле «Lean» Команды не работают в ваккуме DRAFT Самоуправление доолжно быть ограничено корпоративными правилами https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?la ng=en_US&source=swg-ldg Автоматический учет и отчетность по проекту Возможно автоматизировать большую часть Scrum- формализации Rational Team Concert (RTC) для отчетности по проекту Rational Insight для портфельной отчетности Адаптируйте корпоративные правила разработки “Укрепление” политик через инструменты статического анализа IBM Software Group | Rational software Управление разработкой в стиле Lean Соответствие HR Прагматичное правил и полезности Итеративность Простые и управление для IT Адаптация подходящие Поэтапная реализация Соответствие правил Вехи на основе рисков метрики заинтересованных лиц и DRAFT программ Постоянный полезности для IT Постоянное улучшение Проекты мониторинг приоритезируются с Аудируемость проекта бизнес-целями Разработка на основе сценариев Организация Процессы Миссия и Измерения Принципы Роли и Политики и ответственность Стандарты Самоорганизация команд Интегрированная среда ЖЦ Соответствие структуры Значимость корпоративных команд функциональности и активов архитектуре Гибкая архитектура 13
  14. 14. IBM Software Group | Rational software •Agile на уровне предприятия •Возможные сценарии с IBM Rational DRAFT •Дополнительная информация IBM Software Group | Rational software Agile практики управления • портфелем Корпоративная стратегия и требования регуляторов как критерии выбора • Фокус на сотрудничестве и возможностях, а DRAFT не контроле и исполнении приказов • Управление корпоративными рисками • Идентификация потенциальных проектов • Выбор наиболее выгодных проектов • Организация сходных проектов в программы • Наблюдение за текущими проектами и программами • Управление сервисными контрактами • Тесная работа с руководителями проектов • Мониторинг проектов www.enterpriseunifiedprocess.com 14
  15. 15. IBM Software Group | Rational software Agile практики и корпоративная архитектура DRAFT Source: www.agiledata.org/essays/enterpriseArchitecture.html IBM Software Group | Rational software Общие антишаблоны Вера в невозможность масштабирования Agile Применение традиционных подходов DRAFT к масштабированию для Аgile Предположение, что практики для локальных команд разработки могут остаться неизменными Предположение, что масштабирование Agile требует тяжелых бюрократических стратегий 15
  16. 16. IBM Software Group | Rational software •Возможные сценарии с IBM Rational DRAFT •Дополнительная информация IBM Software Group | Rational software Сценарий: Отсутствие опыта в Agile Потребности: Rational Team Concert Убедиться, что Agile работает в его случае Получить выгоды от Agile Препятствия: DRAFT Скепсис по поводу Agile Значительные изменения культуры разработки Возможное решение: Agile JumpStart для получения базовых навыков RTC для разработчиков 16
  17. 17. IBM Software Group | Rational software Сценарий: Улучшение Потребности: управляемости Rational Team Concert Улучшение мониторинга и контроля проектов Rational Method Composer Препятствия : DRAFT Традиционные проекты – трудно управлять Самоуправление незнакомо руководителям Детальное планирование и оценка – не в начале, а по ходу проекта Возможное решение: RTC для мониторинга в реальном времени RMC для уравления процессом 2-уровневое планирование Управление в стиле Lean IBM Software Group | Rational software Сценарий: организация большой Agile Потребности: команды Rational Requirements Comp Composer Сокращение времени и стоимости больших проектов Rational Team Concert Препятстия: DRAFT Увеличение сложности управления Rational Build Forge Rational Quality Manager Усложнение коммуникаций Rational Software Analyzer Возможное решение: Rational Method Composer RRC для начального моделирования требований RTC для разработки и мониторинга RBF для постоянной интеграции RQM для независимого тестирования RSAR для анализа качества кода RMC для использования практик больших команд 17
  18. 18. IBM Software Group | Rational software Сценарий: географическая распределенная Agile команда Rational Team Concert Потребности: Rational Requirements Comp Composer Использование сотрудников в разных регионах Ускорение разработки DRAFT Rational Build Forge Rational Method Composer Препятствия: Увеличение коммуникационных рисков Возможное решение: RTC прямо поддерживает распределенные команды BF для постоянной интеграцией между сайтами разработки RRC для начального моделирования требований RMC для практик распределенной разработки IBM Software Group | Rational software Сценарий: Agile в среде соответствия требованиям регуляторов Потребности: Rational Team Concert Трассируемость Управление рисками DRAFT Мониторинг проектов и отчетность Rational Quality Manager Rational Policy Tester Препятствия: Rational Software Analyzer Agile не считается подходящим в такой среде Rational Build Forge OSS инструменты не подходят Возможное решение: Rational Method Composer RTC для трассировки и мониторинга RQM для трассировки и гарантии качества RSAR и Policy Tester для гарантии качества RBF для трассировок на развернутую конфигурацию RMC для определения процесса Управление в стиле Lean 18
  19. 19. IBM Software Group | Rational software •Дополнительная информация DRAFT Dr. Dobb’s Journal’s 2008 Adoption Survey. www.ambysoft.com/surveys/agileFebruary2008.html Dr. Dobb’s Journal’s 2008 Project Success Survey. www.ambysoft.com/surveys/success2008.html Glazer, H. , Dalton, J. , Anderson, D.J., Konrad, M., Shrum, S. (2008). CMMI® or Agile: Why Not Embrace Both! www.sei.cmu.edu/publications/documents/08.reports/08tn003.html www.ibm.com/rational/agile/ www.ibm.com/developerworks/ www.ibm.com/developerworks/blogs/page/ambler www.jazz.net IBM Software Group | Rational software http://www.ibm.com/developerworks/ru/rational/ DRAFT 19
  20. 20. IBM Software Group | Rational software DRAFT https://jazz.net/ IBM Software Group | Rational software http://bit.ly/rug_russia DRAFT 20
  21. 21. IBM Software Group | Rational software DRAFT Дополнительная информация: • IBM Rational software • Architecture management • IBM Rational Software Delivery Platform • Rational trial downloads • Process and portfolio management • Leading Innovation Website • Change and release management • IBM Rational TV • Quality management • IBM Rational Business Partners © Copyright IBM Corporation 2007. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, the on-demand business logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. DRAFT 21

×