SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Бережливая разработка
       Дмитрий Миндра
       Lohika, Одесса
@dmytromindra #agilebc
@dmytromindra #agilebc
О ПРОГРАММИСТАХ




@dmytromindra #agilebc
Программист 1.0


       Спецификация                                Программный продукт




          Спецификация на входе – программное обеспечение на выходе.
          Изменения в спецификациях не любит. Расценивает как угрозу.
          Старается всячески избегать изменений.

@dmytromindra #agilebc
Программист 2.0




          Программист 2.0 и клиент 2.0 учатся понимать друг друга.
          Программист 2.0 все еще боится изменений, поэтому приписывет к
          каждой версии продукта BETA.

@dmytromindra #agilebc
Программист 3.0




          Понимает клиента, его бизнес, разделяет ценности.
          Всегда готов к изменениям. Понимает и принимает их необходимость.
          Стремится делать рабочее и готовое к использованию ПО.

@dmytromindra #agilebc
Agile manifesto
    Люди и взаимодействие
         важнее процессов и инструментов
    Работающий продукт
         важнее исчерпывающей документации
    Сотрудничество с заказчиком
         важнее согласования условий контракта
    Готовность к изменениям
         важнее следования первоначальному плану


@dmytromindra #agilebc
12 принципов Agile
    1. Наивысшим приоритетом для нас является
    удовлетворение потребностей
    заказчика, благодаря регулярной и ранней
    поставке ценного программного
    обеспечения.

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

@dmytromindra #agilebc
12 принципов Agile
    3. Работающий продукт следует выпускать как
    можно чаще, с периодичностью
    от пары недель до пары месяцев.

    4. На протяжении всего проекта разработчики и
    представители бизнеса должны
    ежедневно работать вместе.




@dmytromindra #agilebc
12 принципов Agile
    5. Над проектом должны работать
    мотивированные профессионалы. Чтобы
    работа была сделана, создайте
    условия, обеспечьте поддержку и полностью
    доверьтесь им.

    6. Непосредственное общение является наиболее
    практичным и эффективным способом обмена
    информацией как с самой командой, так и внутри
    команды.

@dmytromindra #agilebc
12 принципов Agile
    7. Работающий продукт — основной показатель
    прогресса.

    8. Инвесторы, разработчики и пользователи
    должны иметь возможность поддерживать
    постоянный ритм бесконечно. Agile помогает
    наладить такой устойчивый процесс разработки.




@dmytromindra #agilebc
12 принципов Agile
    9. Постоянное внимание к техническому
    совершенству и качеству проектирования
    повышает гибкость проекта.

    10. Простота — искусство минимизации лишней
    работы — крайне необходима.




@dmytromindra #agilebc
12 принципов Agile
    11. Самые лучшие требования, архитектурные и
    технические решения рождаются
    у самоорганизующихся команд.

    12. Команда должна систематически
    анализировать возможные способы
    улучшения эффективности и соответственно
    корректировать
    стиль своей работы.


@dmytromindra #agilebc
Agile расчитывает на ...




@dmytromindra #agilebc
Обычно в наличии ...




@dmytromindra #agilebc
БЕРЕЖЛИВОЕ ПРОИЗВОДСТВО




@dmytromindra #agilebc
LEAN
     “                    ”
         Концепция Lean – это фактически Toyota
         Production System.



       TPS – это невероятно успешная Японская
       концепция оптимизации производства от
       компании Toyota. Благодаря TPS, Toyota
       добилась потрясающих результатов и
       пережила кризисы без потерь.
@dmytromindra #agilebc
Основа TPS
    Jidoka (自働化)
    (English: Autonomation - automation with
      human intelligence)

    Just-in-Time (ジャストインタイム) (JIT)




@dmytromindra #agilebc
Поток
    LEAN ориентирован на
    создание и поддержку
    потока создание и
    доставки ценностей.




@dmytromindra #agilebc
Поток




@dmytromindra #agilebc
Запасы


     Запасы
     (буфер)




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

     Когда уйдут все камни, может оказаться так, что вашей лодке достаточно литра
     воды для того, чтобы плыть!


@dmytromindra #agilebc
LEAN ПРОГРАММИРОВАНИЕ




                         Мэри и Том в своих книгах
                         изложили основные принципы
                         Lean Software Development




@dmytromindra #agilebc
Основные принципы
                  бережливой разработки




@dmytromindra #agilebc
#1 Оптимизируйте целое
            Оптимизация части системы будет всегда, с течением
            времени, выливаться в общую оптимизацию системы.

             Сфокусируйтесь на потоке создания ценности: от
              концепции к наличным деньгам.
             Предоставляйте полный продукт, способный
              решить поставленную проблему.
             Думайте о долгосрочной перспективе.




@dmytromindra #agilebc
#2 Устраняйте потери
            Потери все, что не представляет ценность для клиента.
            Три крупнейших статьи потерь:

             Создание неверного продукта: «Не существует
              ничего более бесполезного, чем эффективное
              выполнение ненужной работы».
             Помехи в понимании, являющимся основой
              разработки.
             Замусоривание – загрязнение потока работы частым
              переключением задач, большими списками
              запросов, накопление множества частично
              выполненных задач.


@dmytromindra #agilebc
#3 Встраивайте качество
            Если вы регулярно находите дефекты в процессе
            проверки, ваш процесс неисправен.

             Дефекты не должны выявляться в процессе
              окончательной проверки.
             Сделайте ваш процесс устойчивым к ошибкам, взяв
              за основу первенство тестов.
             Разрывайте зависимости. Архитектура системы
              должна позволять добавлять функциональность в
              любой момент.



@dmytromindra #agilebc
#4 Непрерывно обучайтесь
            Планирование полезно. Обучение крайне необходимо.

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




@dmytromindra #agilebc
#5 Быстрые результаты
            Начните с понимания того, что представляет ценность
            для заинтересованных лиц. Настройте поток создания
            этих ценностей.

             Быстрые результаты, высокое качество и низкая
              стоимость совместимы.
             Теория массового обслуживания применима к
              процессу разработки, а не только к серверам.
             Управлять потоком намного легче, чем управлять
              расписанием.



@dmytromindra #agilebc
#6 Вовлекайте каждого
            Время и энергия, ярких, творческих людей являются
            ограниченным ресурсом, а также конкурентным
            преимуществом. Люди, которым платят честно и
            адекватно, мотивированы:

            • Автономией: ответственность за выполнение
            значимых задач.
            • Мастерством: культура и среда, которая позволяет
            каждому стать мастером своего дела.
            • Целью: вера в цель работы.



@dmytromindra #agilebc
#7 Совершенствуйтесь с каждым днем
            Результаты не являются конечной целью – конечной
            целью является развитие людей и построение
            системы, способной давать результат.

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



@dmytromindra #agilebc
Повторим принципы
    #1 Оптимизируйте целое
    #2 Устраняйте потери
    #3 Встраивайте качество
    #4 Непрерывно обучайтесь
    #5 Быстрые результаты
    #6 Вовлекайте каждого
    #7 Совершенствуйтесь с каждым днем

@dmytromindra #agilebc
Раньше декларировались принципы:
          Устраняйте потери
          Усиливайте обучение
          Принимайте решения как можно позже
          Доставляйте результаты как можно
           раньше
          Давайте команде полномочия
          Встраивайте целостность
          Пытайтесь увидеть целое

@dmytromindra #agilebc
7 ИСТОЧНИКОВ ПОТЕРЬ
    1.       Экстра функциональность
    2.       Частично сделанная работа
    3.       Повторное изучение




@dmytromindra #agilebc         http://www.seppo.net/cartoons/displayimage.php?album=23&pid=678
…
    4. Передача задачи
    5. Переключение между задачами
    6. Задержки
    7. Дефекты




                             http://www.seppo.net/cartoons/displayimage.php?album=23&pid=785
@dmytromindra #agilebc
Практика
                         (советы)



@dmytromindra #agilebc
№0: Одна задача за один раз
     Попытка сделать несколько дел одновременно
     приводит к тому, что все они остаются недоделанными.




@dmytromindra #agilebc
№1: Все под контролем

“    Решил начать


                 ”
     проект, заведи систему
     контроля версий.


      Есоѓ райо жиѐжсѓися д
      пзжядий, жѐ лжомяѐ кєиь в
      сѓсияея джѐизжоя вязсѓй.



@dmytromindra #agilebc
№2: Небольшие шаги

                                      “     Тише едешь –
                                            дальше будешь.
                                                             ”
   Чем меньше шаги – тем меньше затраты.
   Большой шаг => увеличивает затраты.

  Пзѓ лвѓмяѐѓѓ ѐякжоьтѓеѓ тагаеѓ, иє
  сауя ѓеяять закжиаюуйю пзжгзаеей ѓ
  оягся джѐизжоѓзйять наизаиє взяеяѐѓ.
@dmytromindra #agilebc
№3: Автоматизируй

 “
                                  ”
    Не автоматизируй то, что
    можно вообще не делать.



  Чяе кжоьтя налас кєож
  авижеаиѓнѓзжваѐж, ияе
  кжоьтя взяеяѐѓ ѐа ѐжвєя
  ѓѐиязясѐєя наласѓ.


@dmytromindra #agilebc
№4: Интегрируйся

                             “   Самая лучшая стратегия –
                                 непрерывная интеграция.
                                                            ”
                Кад ижоьдж иє йёжлѓть жи
                эижй сизаиягѓѓ, пжявояюися
                пжиязѓ взяеяѐѓ ѓ дасясива.




@dmytromindra #agilebc
№5: Тестируй

“   Предотвращение
    ошибок в начале


                             ”
    эффективнее их
    исправления в конце.


   Мжлйоьѐєя иясиє – эиж кязямоѓвая
   занзакжида в сѓсиже вѓля. Эиж ѓ лвѓмяѐѓя
   еяодѓеѓ тагаеѓ, ѓ авижеаиѓнађѓя, ѓ
   пзжвязда ѐа сжживяисивѓя спяђѓрѓдађѓѓ.

@dmytromindra #agilebc
№6: Автоматизируй развертывание


                         “                   ”
                             Минимум ручной работы
                             при развертывании.



     Чяе еяѐьтя зйсѐжй закжиє, ияе еяѐьтя
     жтѓкжд. Тяе кєсизяя ѐжвєя рйѐдђѓѓ ѐасѐйи
     закжиаиь ѓ пзѓѐжсѓиь пжоьнй.


@dmytromindra #agilebc
№7: План Б

“   Обязательно оставлять
    возможность быстро


                 ”
    откатиться к предыдущей
    версии.

   Вжнежмѐжсиь жидаиѓиь ѓнеяѐяѐѓя
   пжожмѓияоьѐж кязямяи ѐязвѐйю сѓсияеє, а
   иадмя ѓнкавояяи жи сизаёа пязял
   занвязиєваѐѓяе ѐжвжй вязсѓѓ.


@dmytromindra #agilebc
№8: Ползучий фичуризм

                         “   По статистике 2/3 всей


                                                        ”
                             функциональности ПО
                             никогда не используется.
                                         Чѓсиєя йкєидѓ!



      Есоѓ вє сежмяия пзавѓоьѐж зассиавѓиь
      пзѓжзѓияиє, иж вамѐєя рйѐдђѓѓ ляоаиь
      кйляи пзжуя, закжиаиь ѐа вас жѐѓ ѐасѐйи
      заѐьтя, а лж еаожвамѐєё рйѐдђѓй ляож
      ежмяи вжжкуя ѐя лжйиѓ.

@dmytromindra #agilebc
№9: Сложность

“   Чем сложнее код, тем


                             ”
    сложнее добавление
    функциональности.




@dmytromindra #agilebc
№10: Удаляйте лишнее

                         “ ”
                          Этот класс не используется?
                          Удаляйте!



    Есоѓ жѐ пжѐалжкѓися, вє ягж ѐайляия в сѓсияея
    джѐизжоя вязсѓй. Нж иядйуая кана джла
    лжомѐа кєиь сѓсижй.



@dmytromindra #agilebc
№11: Откладывайте решения

 “  Чем позже вы принимаете
    решение, тем большей


                         ”
    информацией вы
    обладаете.
     Мѐжгѓя ѐасѓѐаюи пзжядиѓзжваѐѓя
     пзѓожмяѐѓя с канє лаѐѐєё. А лжсиаижсѐж оѓ
     вє ж ѐяй нѐаяия? Засасийю ѐяи. Мжмѐж
     жиожмѓиь эиж зятяѐѓя ? Лягдж! Пзжлязмѓиясь
     кян канє иад лжогж, дад эиж вжнежмѐж. Кжгла
     вє кян ѐяя ймя ѐя сежмяия жкжйиѓсь, вє кйляия
     нѐаиь жсяѐь еѐжгж ж яя сизйдийзя.
@dmytromindra #agilebc
Kanban & Kaizen




@dmytromindra #agilebc
Ретроспектива




@dmytromindra #agilebc
Сжвяиє:
    №0: Одна задача за один раз
    №1: Все под контролем
    №2: Небольшие шаги
    №3: Автоматизируй
    №4: Интегрируйся
    №5: Тестируй



@dmytromindra #agilebc
ѓ яуя ѐяеѐжгж
    №6: Автоматизируй развертывание
    №7: План Б
    №8: Ползучий фичуризм
    №9: Сложность
    №10: Удаляйте лишнее
    №11: Откладывайте решения



@dmytromindra #agilebc
Какой инструмент лучше?




@dmytromindra #agilebc
Спасибо !




@dmytromindra #agilebc

Weitere ähnliche Inhalte

Was ist angesagt?

Жизнь в стиле стартап в корпоративной среде: Agile в помощь?
Жизнь в стиле стартап в корпоративной среде: Agile в помощь?Жизнь в стиле стартап в корпоративной среде: Agile в помощь?
Жизнь в стиле стартап в корпоративной среде: Agile в помощь?ScrumTrek
 
Software craftsmanship 12 online highload systems
Software craftsmanship 12 online highload systemsSoftware craftsmanship 12 online highload systems
Software craftsmanship 12 online highload systemsPavel Veinik
 
Асхат Уразбаев, КПЭ и бонусы
Асхат Уразбаев, КПЭ и бонусыАсхат Уразбаев, КПЭ и бонусы
Асхат Уразбаев, КПЭ и бонусыScrumTrek
 
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!ScrumTrek
 
Статегия agile-трансформации крупной компании
Статегия agile-трансформации крупной компанииСтатегия agile-трансформации крупной компании
Статегия agile-трансформации крупной компанииAskhat Urazbaev
 
Масштабирование Agile в Единой фронтальной системе Сбербанка
Масштабирование Agile в Единой фронтальной системе СбербанкаМасштабирование Agile в Единой фронтальной системе Сбербанка
Масштабирование Agile в Единой фронтальной системе СбербанкаSergey Rogachev
 
Процесс Mindbox 2015
Процесс Mindbox 2015Процесс Mindbox 2015
Процесс Mindbox 2015Alexander Gornik
 
Александр Андронов, Engineering Assessment
Александр Андронов, Engineering AssessmentАлександр Андронов, Engineering Assessment
Александр Андронов, Engineering AssessmentScrumTrek
 
Производство счастья промышленными методами, для программистов и их менеджеров
Производство счастья промышленными методами, для программистов и их менеджеровПроизводство счастья промышленными методами, для программистов и их менеджеров
Производство счастья промышленными методами, для программистов и их менеджеровAnna Tarasenko
 
Дмитрий Грибов, Трава и грибы как средства управления разработкой
Дмитрий Грибов, Трава и грибы как средства управления разработкойДмитрий Грибов, Трава и грибы как средства управления разработкой
Дмитрий Грибов, Трава и грибы как средства управления разработкойScrumTrek
 
Иван Дубровин. Почему государство должно быть Agile?
Иван Дубровин. Почему государство должно быть Agile?Иван Дубровин. Почему государство должно быть Agile?
Иван Дубровин. Почему государство должно быть Agile?ScrumTrek
 
Почему Agile больше не работает
Почему Agile больше не работаетПочему Agile больше не работает
Почему Agile больше не работаетBoris Volfson
 
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...ScrumTrek
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продуктаAlexey Filimonov
 
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?SQALab
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продуктаAlexey Filimonov
 
Способы создания качественного программного продукта
Способы создания качественного программного продуктаСпособы создания качественного программного продукта
Способы создания качественного программного продуктаIngria. Technopark St. Petersburg
 
Гибкий подход (Agile,scrum)
Гибкий подход (Agile,scrum)Гибкий подход (Agile,scrum)
Гибкий подход (Agile,scrum)Irina Chernikova
 

Was ist angesagt? (20)

Жизнь в стиле стартап в корпоративной среде: Agile в помощь?
Жизнь в стиле стартап в корпоративной среде: Agile в помощь?Жизнь в стиле стартап в корпоративной среде: Agile в помощь?
Жизнь в стиле стартап в корпоративной среде: Agile в помощь?
 
Software craftsmanship 12 online highload systems
Software craftsmanship 12 online highload systemsSoftware craftsmanship 12 online highload systems
Software craftsmanship 12 online highload systems
 
Асхат Уразбаев, КПЭ и бонусы
Асхат Уразбаев, КПЭ и бонусыАсхат Уразбаев, КПЭ и бонусы
Асхат Уразбаев, КПЭ и бонусы
 
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!
Максим Цепков, Agile - то что на самом деле нужно гос.заказчикам!
 
Agile/Scrum
Agile/ScrumAgile/Scrum
Agile/Scrum
 
Статегия agile-трансформации крупной компании
Статегия agile-трансформации крупной компанииСтатегия agile-трансформации крупной компании
Статегия agile-трансформации крупной компании
 
Масштабирование Agile в Единой фронтальной системе Сбербанка
Масштабирование Agile в Единой фронтальной системе СбербанкаМасштабирование Agile в Единой фронтальной системе Сбербанка
Масштабирование Agile в Единой фронтальной системе Сбербанка
 
Процесс Mindbox 2015
Процесс Mindbox 2015Процесс Mindbox 2015
Процесс Mindbox 2015
 
Александр Андронов, Engineering Assessment
Александр Андронов, Engineering AssessmentАлександр Андронов, Engineering Assessment
Александр Андронов, Engineering Assessment
 
Производство счастья промышленными методами, для программистов и их менеджеров
Производство счастья промышленными методами, для программистов и их менеджеровПроизводство счастья промышленными методами, для программистов и их менеджеров
Производство счастья промышленными методами, для программистов и их менеджеров
 
Дмитрий Грибов, Трава и грибы как средства управления разработкой
Дмитрий Грибов, Трава и грибы как средства управления разработкойДмитрий Грибов, Трава и грибы как средства управления разработкой
Дмитрий Грибов, Трава и грибы как средства управления разработкой
 
Иван Дубровин. Почему государство должно быть Agile?
Иван Дубровин. Почему государство должно быть Agile?Иван Дубровин. Почему государство должно быть Agile?
Иван Дубровин. Почему государство должно быть Agile?
 
Почему Agile больше не работает
Почему Agile больше не работаетПочему Agile больше не работает
Почему Agile больше не работает
 
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...
Михаил Лукьянов, Дмитрий Шайхатаров, Agile среди водопадов. Использование SCR...
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продукта
 
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
 
Управление разработкой продукта
Управление разработкой продуктаУправление разработкой продукта
Управление разработкой продукта
 
Способы создания качественного программного продукта
Способы создания качественного программного продуктаСпособы создания качественного программного продукта
Способы создания качественного программного продукта
 
Презентация "Scrum с нуля"
Презентация "Scrum с нуля" Презентация "Scrum с нуля"
Презентация "Scrum с нуля"
 
Гибкий подход (Agile,scrum)
Гибкий подход (Agile,scrum)Гибкий подход (Agile,scrum)
Гибкий подход (Agile,scrum)
 

Andere mochten auch

Бережливая разработка ПО
Бережливая разработка ПОБережливая разработка ПО
Бережливая разработка ПОpoverhnost
 
Применение методологий Lean Startup & Customer Development для разработки нов...
Применение методологий Lean Startup & Customer Development для разработки нов...Применение методологий Lean Startup & Customer Development для разработки нов...
Применение методологий Lean Startup & Customer Development для разработки нов...MetaBeta
 
Lean development based on scrum
Lean development based on scrumLean development based on scrum
Lean development based on scrumPeter Horsten
 
Software Development in a Funky Manner to meet client requirements best
Software Development in a Funky Manner to meet client requirements bestSoftware Development in a Funky Manner to meet client requirements best
Software Development in a Funky Manner to meet client requirements bestPeter Horsten
 
Lean Thinking - Lean development and Agile methodologies lesson 2
Lean Thinking - Lean development and Agile methodologies lesson 2Lean Thinking - Lean development and Agile methodologies lesson 2
Lean Thinking - Lean development and Agile methodologies lesson 2Francesco Mapelli
 
История и принципы бережливого производства ПО
История и принципы бережливого производства ПОИстория и принципы бережливого производства ПО
История и принципы бережливого производства ПОAlexander Byndyu
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Developmentsushant.1409
 
Lean Software Development Principles
Lean Software Development PrinciplesLean Software Development Principles
Lean Software Development PrinciplesJohn Vajda
 

Andere mochten auch (9)

Бережливая разработка ПО
Бережливая разработка ПОБережливая разработка ПО
Бережливая разработка ПО
 
Применение методологий Lean Startup & Customer Development для разработки нов...
Применение методологий Lean Startup & Customer Development для разработки нов...Применение методологий Lean Startup & Customer Development для разработки нов...
Применение методологий Lean Startup & Customer Development для разработки нов...
 
Lean development based on scrum
Lean development based on scrumLean development based on scrum
Lean development based on scrum
 
Software Development in a Funky Manner to meet client requirements best
Software Development in a Funky Manner to meet client requirements bestSoftware Development in a Funky Manner to meet client requirements best
Software Development in a Funky Manner to meet client requirements best
 
Lean Thinking - Lean development and Agile methodologies lesson 2
Lean Thinking - Lean development and Agile methodologies lesson 2Lean Thinking - Lean development and Agile methodologies lesson 2
Lean Thinking - Lean development and Agile methodologies lesson 2
 
История и принципы бережливого производства ПО
История и принципы бережливого производства ПОИстория и принципы бережливого производства ПО
История и принципы бережливого производства ПО
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Lean vs scrum
Lean vs scrumLean vs scrum
Lean vs scrum
 
Lean Software Development Principles
Lean Software Development PrinciplesLean Software Development Principles
Lean Software Development Principles
 

Ähnlich wie Lean Software Development

Agileee Petelin самый непонимаемый принцип Agile Manifesto
Agileee Petelin самый непонимаемый принцип Agile ManifestoAgileee Petelin самый непонимаемый принцип Agile Manifesto
Agileee Petelin самый непонимаемый принцип Agile ManifestoAgileee
 
Scrum и kanban опыт не-применения
Scrum и kanban  опыт не-примененияScrum и kanban  опыт не-применения
Scrum и kanban опыт не-примененияitconnect2016
 
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.RuФорум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.RuYury Vetrov
 
Гибкие методологии при создании ИТ продукта.
Гибкие методологии при создании ИТ продукта.Гибкие методологии при создании ИТ продукта.
Гибкие методологии при создании ИТ продукта.Project Management Institute (PMI) in Ufa
 
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)10 лет развития продукта: чему можно научиться (Сергей Рыжиков)
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)Ontico
 
Внедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bankВнедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bankAlbina Iskhakova
 
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...SQALab
 
Mykola Mytko — "Быть, а не казаться Agile"
Mykola Mytko — "Быть, а не казаться Agile" Mykola Mytko — "Быть, а не казаться Agile"
Mykola Mytko — "Быть, а не казаться Agile" it-network
 
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продуктПрикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продуктПрофсоUX
 
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыAgile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыLuxoftAgilePractice
 
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыAgile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыLuxoftAgilePractice
 
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...Yandex
 
CEE-SECR-2011. Презентация Александра Калугина
CEE-SECR-2011. Презентация Александра КалугинаCEE-SECR-2011. Презентация Александра Калугина
CEE-SECR-2011. Презентация Александра КалугинаAlexander Kalouguine
 
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
Модуль 2: Лекция 9-10.  Обзор методологий, фреймворковМодуль 2: Лекция 9-10.  Обзор методологий, фреймворков
Модуль 2: Лекция 9-10. Обзор методологий, фреймворковYana Brodetski
 
Работа с требованиями в условиях Agile трансформации
Работа с требованиями в условиях Agile трансформацииРабота с требованиями в условиях Agile трансформации
Работа с требованиями в условиях Agile трансформацииAndrii Mandrika
 
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...Yury Vetrov
 

Ähnlich wie Lean Software Development (20)

Agileee Petelin самый непонимаемый принцип Agile Manifesto
Agileee Petelin самый непонимаемый принцип Agile ManifestoAgileee Petelin самый непонимаемый принцип Agile Manifesto
Agileee Petelin самый непонимаемый принцип Agile Manifesto
 
Agile architecture
Agile architectureAgile architecture
Agile architecture
 
Scrum и kanban опыт не-применения
Scrum и kanban  опыт не-примененияScrum и kanban  опыт не-применения
Scrum и kanban опыт не-применения
 
Scrum framework
Scrum frameworkScrum framework
Scrum framework
 
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.RuФорум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
 
Гибкие методологии при создании ИТ продукта.
Гибкие методологии при создании ИТ продукта.Гибкие методологии при создании ИТ продукта.
Гибкие методологии при создании ИТ продукта.
 
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)10 лет развития продукта: чему можно научиться (Сергей Рыжиков)
10 лет развития продукта: чему можно научиться (Сергей Рыжиков)
 
Внедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bankВнедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bank
 
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...
Продуктсорсинг - меняем аутсорсинг или как вместе с заказчиком создавать клас...
 
Mykola Mytko — "Быть, а не казаться Agile"
Mykola Mytko — "Быть, а не казаться Agile" Mykola Mytko — "Быть, а не казаться Agile"
Mykola Mytko — "Быть, а не казаться Agile"
 
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продуктПрикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
 
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыAgile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
 
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферыAgile Talks: Scrum Cookbook. Применение вне ИТ-сферы
Agile Talks: Scrum Cookbook. Применение вне ИТ-сферы
 
Agile
AgileAgile
Agile
 
Scrum Wars
Scrum WarsScrum Wars
Scrum Wars
 
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
 
CEE-SECR-2011. Презентация Александра Калугина
CEE-SECR-2011. Презентация Александра КалугинаCEE-SECR-2011. Презентация Александра Калугина
CEE-SECR-2011. Презентация Александра Калугина
 
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
Модуль 2: Лекция 9-10.  Обзор методологий, фреймворковМодуль 2: Лекция 9-10.  Обзор методологий, фреймворков
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
 
Работа с требованиями в условиях Agile трансформации
Работа с требованиями в условиях Agile трансформацииРабота с требованиями в условиях Agile трансформации
Работа с требованиями в условиях Agile трансформации
 
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
 

Mehr von Dmytro Mindra

Introduction to Value Planning for iHUB
Introduction to Value Planning for iHUBIntroduction to Value Planning for iHUB
Introduction to Value Planning for iHUBDmytro Mindra
 
Mastering public speaking skills
Mastering public speaking skillsMastering public speaking skills
Mastering public speaking skillsDmytro Mindra
 
XP Days Ukraine 2014 - Refactoring legacy code
XP Days Ukraine 2014 - Refactoring legacy codeXP Days Ukraine 2014 - Refactoring legacy code
XP Days Ukraine 2014 - Refactoring legacy codeDmytro Mindra
 
Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Dmytro Mindra
 
Building Windows Phone 8 Games With Unity3d
Building Windows Phone 8 Games With Unity3dBuilding Windows Phone 8 Games With Unity3d
Building Windows Phone 8 Games With Unity3dDmytro Mindra
 
IT Brunch - SpecFlow and Gherkin by Example
IT Brunch - SpecFlow and Gherkin by ExampleIT Brunch - SpecFlow and Gherkin by Example
IT Brunch - SpecFlow and Gherkin by ExampleDmytro Mindra
 
Odessa Pluralsight Study Group 28.11.2012
Odessa Pluralsight Study Group 28.11.2012Odessa Pluralsight Study Group 28.11.2012
Odessa Pluralsight Study Group 28.11.2012Dmytro Mindra
 
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012Dmytro Mindra
 
Compilable Specifications - XPDays Ukraine 2012
Compilable Specifications - XPDays Ukraine 2012Compilable Specifications - XPDays Ukraine 2012
Compilable Specifications - XPDays Ukraine 2012Dmytro Mindra
 
NetworkUA - 2012 - Introduction TypeScript
NetworkUA - 2012 - Introduction TypeScript NetworkUA - 2012 - Introduction TypeScript
NetworkUA - 2012 - Introduction TypeScript Dmytro Mindra
 
Ciklum .NET Saturday - Introduction to TypeScript
Ciklum .NET Saturday - Introduction to TypeScriptCiklum .NET Saturday - Introduction to TypeScript
Ciklum .NET Saturday - Introduction to TypeScriptDmytro Mindra
 
Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Dmytro Mindra
 
Lohika .Net Day - What's new in Windows Azure
Lohika .Net Day - What's new in Windows AzureLohika .Net Day - What's new in Windows Azure
Lohika .Net Day - What's new in Windows AzureDmytro Mindra
 
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012Dmytro Mindra
 
Windows Azure & NodeJS Microsoft SWIT 2012
Windows Azure & NodeJS Microsoft SWIT 2012 Windows Azure & NodeJS Microsoft SWIT 2012
Windows Azure & NodeJS Microsoft SWIT 2012 Dmytro Mindra
 
Craftsmanship - XP Days 2011
Craftsmanship - XP Days 2011Craftsmanship - XP Days 2011
Craftsmanship - XP Days 2011Dmytro Mindra
 
Odessa .NET User Group - 10.11.2011 - Applied Code Generation
Odessa .NET User Group - 10.11.2011 - Applied Code Generation Odessa .NET User Group - 10.11.2011 - Applied Code Generation
Odessa .NET User Group - 10.11.2011 - Applied Code Generation Dmytro Mindra
 
IT Brunch - 12.11.2011 - Myths about Design
IT Brunch - 12.11.2011 - Myths about DesignIT Brunch - 12.11.2011 - Myths about Design
IT Brunch - 12.11.2011 - Myths about DesignDmytro Mindra
 
NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET Dmytro Mindra
 

Mehr von Dmytro Mindra (20)

Introduction to Value Planning for iHUB
Introduction to Value Planning for iHUBIntroduction to Value Planning for iHUB
Introduction to Value Planning for iHUB
 
Mastering public speaking skills
Mastering public speaking skillsMastering public speaking skills
Mastering public speaking skills
 
XP Days Ukraine 2014 - Refactoring legacy code
XP Days Ukraine 2014 - Refactoring legacy codeXP Days Ukraine 2014 - Refactoring legacy code
XP Days Ukraine 2014 - Refactoring legacy code
 
Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2
 
Building Windows Phone 8 Games With Unity3d
Building Windows Phone 8 Games With Unity3dBuilding Windows Phone 8 Games With Unity3d
Building Windows Phone 8 Games With Unity3d
 
IT Brunch - SpecFlow and Gherkin by Example
IT Brunch - SpecFlow and Gherkin by ExampleIT Brunch - SpecFlow and Gherkin by Example
IT Brunch - SpecFlow and Gherkin by Example
 
Odessa Pluralsight Study Group 28.11.2012
Odessa Pluralsight Study Group 28.11.2012Odessa Pluralsight Study Group 28.11.2012
Odessa Pluralsight Study Group 28.11.2012
 
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012
Тестируем код с Visual Studio 2012 - XP Days Ukraine 2012
 
Compilable Specifications - XPDays Ukraine 2012
Compilable Specifications - XPDays Ukraine 2012Compilable Specifications - XPDays Ukraine 2012
Compilable Specifications - XPDays Ukraine 2012
 
NetworkUA - 2012 - Introduction TypeScript
NetworkUA - 2012 - Introduction TypeScript NetworkUA - 2012 - Introduction TypeScript
NetworkUA - 2012 - Introduction TypeScript
 
Ciklum .NET Saturday - Introduction to TypeScript
Ciklum .NET Saturday - Introduction to TypeScriptCiklum .NET Saturday - Introduction to TypeScript
Ciklum .NET Saturday - Introduction to TypeScript
 
Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012
 
Lohika .Net Day - What's new in Windows Azure
Lohika .Net Day - What's new in Windows AzureLohika .Net Day - What's new in Windows Azure
Lohika .Net Day - What's new in Windows Azure
 
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012
Web В РЕАЛЬНОМ ВРЕМЕНИ С Node.js - AgileBaseCamp - 2012
 
Windows Azure & NodeJS Microsoft SWIT 2012
Windows Azure & NodeJS Microsoft SWIT 2012 Windows Azure & NodeJS Microsoft SWIT 2012
Windows Azure & NodeJS Microsoft SWIT 2012
 
Craftsmanship - XP Days 2011
Craftsmanship - XP Days 2011Craftsmanship - XP Days 2011
Craftsmanship - XP Days 2011
 
DCI
DCIDCI
DCI
 
Odessa .NET User Group - 10.11.2011 - Applied Code Generation
Odessa .NET User Group - 10.11.2011 - Applied Code Generation Odessa .NET User Group - 10.11.2011 - Applied Code Generation
Odessa .NET User Group - 10.11.2011 - Applied Code Generation
 
IT Brunch - 12.11.2011 - Myths about Design
IT Brunch - 12.11.2011 - Myths about DesignIT Brunch - 12.11.2011 - Myths about Design
IT Brunch - 12.11.2011 - Myths about Design
 
NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET
 

Lean Software Development

  • 1. Бережливая разработка Дмитрий Миндра Lohika, Одесса
  • 5. Программист 1.0 Спецификация Программный продукт Спецификация на входе – программное обеспечение на выходе. Изменения в спецификациях не любит. Расценивает как угрозу. Старается всячески избегать изменений. @dmytromindra #agilebc
  • 6. Программист 2.0 Программист 2.0 и клиент 2.0 учатся понимать друг друга. Программист 2.0 все еще боится изменений, поэтому приписывет к каждой версии продукта BETA. @dmytromindra #agilebc
  • 7. Программист 3.0 Понимает клиента, его бизнес, разделяет ценности. Всегда готов к изменениям. Понимает и принимает их необходимость. Стремится делать рабочее и готовое к использованию ПО. @dmytromindra #agilebc
  • 8. Agile manifesto Люди и взаимодействие важнее процессов и инструментов Работающий продукт важнее исчерпывающей документации Сотрудничество с заказчиком важнее согласования условий контракта Готовность к изменениям важнее следования первоначальному плану @dmytromindra #agilebc
  • 9. 12 принципов Agile 1. Наивысшим приоритетом для нас является удовлетворение потребностей заказчика, благодаря регулярной и ранней поставке ценного программного обеспечения. 2. Изменение требований приветствуется, даже на поздних стадиях разработки. Agile-процессы позволяют использовать изменения для обеспечения заказчику конкурентного преимущества. @dmytromindra #agilebc
  • 10. 12 принципов Agile 3. Работающий продукт следует выпускать как можно чаще, с периодичностью от пары недель до пары месяцев. 4. На протяжении всего проекта разработчики и представители бизнеса должны ежедневно работать вместе. @dmytromindra #agilebc
  • 11. 12 принципов Agile 5. Над проектом должны работать мотивированные профессионалы. Чтобы работа была сделана, создайте условия, обеспечьте поддержку и полностью доверьтесь им. 6. Непосредственное общение является наиболее практичным и эффективным способом обмена информацией как с самой командой, так и внутри команды. @dmytromindra #agilebc
  • 12. 12 принципов Agile 7. Работающий продукт — основной показатель прогресса. 8. Инвесторы, разработчики и пользователи должны иметь возможность поддерживать постоянный ритм бесконечно. Agile помогает наладить такой устойчивый процесс разработки. @dmytromindra #agilebc
  • 13. 12 принципов Agile 9. Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость проекта. 10. Простота — искусство минимизации лишней работы — крайне необходима. @dmytromindra #agilebc
  • 14. 12 принципов Agile 11. Самые лучшие требования, архитектурные и технические решения рождаются у самоорганизующихся команд. 12. Команда должна систематически анализировать возможные способы улучшения эффективности и соответственно корректировать стиль своей работы. @dmytromindra #agilebc
  • 15. Agile расчитывает на ... @dmytromindra #agilebc
  • 16. Обычно в наличии ... @dmytromindra #agilebc
  • 18. LEAN “ ” Концепция Lean – это фактически Toyota Production System. TPS – это невероятно успешная Японская концепция оптимизации производства от компании Toyota. Благодаря TPS, Toyota добилась потрясающих результатов и пережила кризисы без потерь. @dmytromindra #agilebc
  • 19. Основа TPS Jidoka (自働化) (English: Autonomation - automation with human intelligence) Just-in-Time (ジャストインタイム) (JIT) @dmytromindra #agilebc
  • 20. Поток LEAN ориентирован на создание и поддержку потока создание и доставки ценностей. @dmytromindra #agilebc
  • 22. Запасы Запасы (буфер) Отказ от накопления запасов позволяет выявить камни т.е. узкие места. Что-то во время разработки вам мешает, но пока вы делаете планирование с запасом, вместо того, чтобы устранить эту проблему, вы включаете ее в план. Когда уйдут все камни, может оказаться так, что вашей лодке достаточно литра воды для того, чтобы плыть! @dmytromindra #agilebc
  • 23. LEAN ПРОГРАММИРОВАНИЕ Мэри и Том в своих книгах изложили основные принципы Lean Software Development @dmytromindra #agilebc
  • 24. Основные принципы бережливой разработки @dmytromindra #agilebc
  • 25. #1 Оптимизируйте целое Оптимизация части системы будет всегда, с течением времени, выливаться в общую оптимизацию системы.  Сфокусируйтесь на потоке создания ценности: от концепции к наличным деньгам.  Предоставляйте полный продукт, способный решить поставленную проблему.  Думайте о долгосрочной перспективе. @dmytromindra #agilebc
  • 26. #2 Устраняйте потери Потери все, что не представляет ценность для клиента. Три крупнейших статьи потерь:  Создание неверного продукта: «Не существует ничего более бесполезного, чем эффективное выполнение ненужной работы».  Помехи в понимании, являющимся основой разработки.  Замусоривание – загрязнение потока работы частым переключением задач, большими списками запросов, накопление множества частично выполненных задач. @dmytromindra #agilebc
  • 27. #3 Встраивайте качество Если вы регулярно находите дефекты в процессе проверки, ваш процесс неисправен.  Дефекты не должны выявляться в процессе окончательной проверки.  Сделайте ваш процесс устойчивым к ошибкам, взяв за основу первенство тестов.  Разрывайте зависимости. Архитектура системы должна позволять добавлять функциональность в любой момент. @dmytromindra #agilebc
  • 28. #4 Непрерывно обучайтесь Планирование полезно. Обучение крайне необходимо.  Предсказуемая производительность. Не пытайтесь спланировать будущее до мелочей, просто развивайтесь и будьте готовы к нему.  Оставляйте открытыми возможности. Делайте код устойчивым к изменениям.  Принимайте решения как можно позже. До этого собирайте информацию. @dmytromindra #agilebc
  • 29. #5 Быстрые результаты Начните с понимания того, что представляет ценность для заинтересованных лиц. Настройте поток создания этих ценностей.  Быстрые результаты, высокое качество и низкая стоимость совместимы.  Теория массового обслуживания применима к процессу разработки, а не только к серверам.  Управлять потоком намного легче, чем управлять расписанием. @dmytromindra #agilebc
  • 30. #6 Вовлекайте каждого Время и энергия, ярких, творческих людей являются ограниченным ресурсом, а также конкурентным преимуществом. Люди, которым платят честно и адекватно, мотивированы: • Автономией: ответственность за выполнение значимых задач. • Мастерством: культура и среда, которая позволяет каждому стать мастером своего дела. • Целью: вера в цель работы. @dmytromindra #agilebc
  • 31. #7 Совершенствуйтесь с каждым днем Результаты не являются конечной целью – конечной целью является развитие людей и построение системы, способной давать результат.  Провал – возможность научиться.  Стандарты существуют для того, чтобы их изменять и улучшать.  Используйте научный метод: гипотезы, эксперименты, документация, альтернати вы. @dmytromindra #agilebc
  • 32. Повторим принципы #1 Оптимизируйте целое #2 Устраняйте потери #3 Встраивайте качество #4 Непрерывно обучайтесь #5 Быстрые результаты #6 Вовлекайте каждого #7 Совершенствуйтесь с каждым днем @dmytromindra #agilebc
  • 33. Раньше декларировались принципы:  Устраняйте потери  Усиливайте обучение  Принимайте решения как можно позже  Доставляйте результаты как можно раньше  Давайте команде полномочия  Встраивайте целостность  Пытайтесь увидеть целое @dmytromindra #agilebc
  • 34. 7 ИСТОЧНИКОВ ПОТЕРЬ 1. Экстра функциональность 2. Частично сделанная работа 3. Повторное изучение @dmytromindra #agilebc http://www.seppo.net/cartoons/displayimage.php?album=23&pid=678
  • 35. 4. Передача задачи 5. Переключение между задачами 6. Задержки 7. Дефекты http://www.seppo.net/cartoons/displayimage.php?album=23&pid=785 @dmytromindra #agilebc
  • 36. Практика (советы) @dmytromindra #agilebc
  • 37. №0: Одна задача за один раз Попытка сделать несколько дел одновременно приводит к тому, что все они остаются недоделанными. @dmytromindra #agilebc
  • 38. №1: Все под контролем “ Решил начать ” проект, заведи систему контроля версий. Есоѓ райо жиѐжсѓися д пзжядий, жѐ лжомяѐ кєиь в сѓсияея джѐизжоя вязсѓй. @dmytromindra #agilebc
  • 39. №2: Небольшие шаги “ Тише едешь – дальше будешь. ”  Чем меньше шаги – тем меньше затраты.  Большой шаг => увеличивает затраты. Пзѓ лвѓмяѐѓѓ ѐякжоьтѓеѓ тагаеѓ, иє сауя ѓеяять закжиаюуйю пзжгзаеей ѓ оягся джѐизжоѓзйять наизаиє взяеяѐѓ. @dmytromindra #agilebc
  • 40. №3: Автоматизируй “ ” Не автоматизируй то, что можно вообще не делать. Чяе кжоьтя налас кєож авижеаиѓнѓзжваѐж, ияе кжоьтя взяеяѐѓ ѐа ѐжвєя ѓѐиязясѐєя наласѓ. @dmytromindra #agilebc
  • 41. №4: Интегрируйся “ Самая лучшая стратегия – непрерывная интеграция. ” Кад ижоьдж иє йёжлѓть жи эижй сизаиягѓѓ, пжявояюися пжиязѓ взяеяѐѓ ѓ дасясива. @dmytromindra #agilebc
  • 42. №5: Тестируй “ Предотвращение ошибок в начале ” эффективнее их исправления в конце. Мжлйоьѐєя иясиє – эиж кязямоѓвая занзакжида в сѓсиже вѓля. Эиж ѓ лвѓмяѐѓя еяодѓеѓ тагаеѓ, ѓ авижеаиѓнађѓя, ѓ пзжвязда ѐа сжживяисивѓя спяђѓрѓдађѓѓ. @dmytromindra #agilebc
  • 43. №6: Автоматизируй развертывание “ ” Минимум ручной работы при развертывании. Чяе еяѐьтя зйсѐжй закжиє, ияе еяѐьтя жтѓкжд. Тяе кєсизяя ѐжвєя рйѐдђѓѓ ѐасѐйи закжиаиь ѓ пзѓѐжсѓиь пжоьнй. @dmytromindra #agilebc
  • 44. №7: План Б “ Обязательно оставлять возможность быстро ” откатиться к предыдущей версии. Вжнежмѐжсиь жидаиѓиь ѓнеяѐяѐѓя пжожмѓияоьѐж кязямяи ѐязвѐйю сѓсияеє, а иадмя ѓнкавояяи жи сизаёа пязял занвязиєваѐѓяе ѐжвжй вязсѓѓ. @dmytromindra #agilebc
  • 45. №8: Ползучий фичуризм “ По статистике 2/3 всей ” функциональности ПО никогда не используется. Чѓсиєя йкєидѓ! Есоѓ вє сежмяия пзавѓоьѐж зассиавѓиь пзѓжзѓияиє, иж вамѐєя рйѐдђѓѓ ляоаиь кйляи пзжуя, закжиаиь ѐа вас жѐѓ ѐасѐйи заѐьтя, а лж еаожвамѐєё рйѐдђѓй ляож ежмяи вжжкуя ѐя лжйиѓ. @dmytromindra #agilebc
  • 46. №9: Сложность “ Чем сложнее код, тем ” сложнее добавление функциональности. @dmytromindra #agilebc
  • 47. №10: Удаляйте лишнее “ ” Этот класс не используется? Удаляйте! Есоѓ жѐ пжѐалжкѓися, вє ягж ѐайляия в сѓсияея джѐизжоя вязсѓй. Нж иядйуая кана джла лжомѐа кєиь сѓсижй. @dmytromindra #agilebc
  • 48. №11: Откладывайте решения “ Чем позже вы принимаете решение, тем большей ” информацией вы обладаете. Мѐжгѓя ѐасѓѐаюи пзжядиѓзжваѐѓя пзѓожмяѐѓя с канє лаѐѐєё. А лжсиаижсѐж оѓ вє ж ѐяй нѐаяия? Засасийю ѐяи. Мжмѐж жиожмѓиь эиж зятяѐѓя ? Лягдж! Пзжлязмѓиясь кян канє иад лжогж, дад эиж вжнежмѐж. Кжгла вє кян ѐяя ймя ѐя сежмяия жкжйиѓсь, вє кйляия нѐаиь жсяѐь еѐжгж ж яя сизйдийзя. @dmytromindra #agilebc
  • 51. Сжвяиє: №0: Одна задача за один раз №1: Все под контролем №2: Небольшие шаги №3: Автоматизируй №4: Интегрируйся №5: Тестируй @dmytromindra #agilebc
  • 52. ѓ яуя ѐяеѐжгж №6: Автоматизируй развертывание №7: План Б №8: Ползучий фичуризм №9: Сложность №10: Удаляйте лишнее №11: Откладывайте решения @dmytromindra #agilebc