Философия гибкой разработки

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

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

Классификация гибких моделей разработки

Agile — это образ мышления, набор ценностей и принципов. Agile — это способ мышления и действия. Agile — это короткие циклы, итеративная и поэтапная доставка, быстрые сбои, получение обратной связи, раннее предоставление бизнес-ценности клиентам, а также людям, сотрудничеству и взаимодействию. Agile — это образ мышления, в основе которого лежит прозрачность, проверка и адаптация. Agile, однако, не состоит из каких-либо  ролей , событий или  артефактов . Это образ мышления. Например,  Scrum  является одним из широко используемых фреймворков под эгидой Agile, который может помочь вам стать более гибким, однако в движении Agile существует гораздо больше фреймворков, таких как Kanban, XP, Crystal и многие другие, как показано на рисунке. ниже:

  • Экстремальное программирование XP (экстремальное программирование)
  • СКРАМ
  • Канбан
  • Наклонять
  • Кристаллический метод
  • Метод разработки динамической системы

Среди них наиболее популярны XP и SCRUM.

Скрам

Scrum — это структура, в рамках которой люди могут решать сложные адаптивные проблемы, продуктивно и творчески создавая продукты максимально возможной ценности. Он используется для управления программными проектами и разработки продуктов или приложений. Основное внимание уделяется стратегии адаптивной разработки продукта, в которой кросс-функциональная команда работает как единое целое для достижения общей цели в течение 2–4 недель ( спринт ). Он состоит из набора ценностей, артефактов, ролей, церемоний, правил и лучших практик.

Скрам Фреймворк

Наклонять

Бережливое производство началось с производственной системы Toyota, или TPS, которая произвела революцию в производстве физических товаров в 1950-х, 60-х и позже. Бережливое производство сохраняет свои позиции в производстве, но также находит новые применения в работе с знаниями, помогая предприятиям во всех отраслях  устранять потери, улучшать процессы и стимулировать инновации . Разработка программного обеспечения является естественным применением методологии бережливого производства, потому что, как и производство, она обычно следует определенному процессу, имеет определенные условия принятия и приводит к получению ощутимой ценности. Ключевые концепции, лежащие в основе всей практики методологии бережливого производства, которые мы называем столпами бережливого производства. Они есть:

  • Постоянное улучшение
  • Уважение к людям
  • Легкое лидерство

Канбан

Канбан — это наглядный метод управления рабочим процессом, который популярен среди бережливых команд. Фактически, 83% команд, практикующих бережливое производство, используют Канбан для визуализации и активного управления созданием продуктов с упором на непрерывную доставку, не перегружая при этом команду разработчиков. Как и Scrum, Kanban — это процесс, призванный помочь командам работать вместе более эффективно.

Канбан основан на 3 основных принципах:

  • Визуализируйте, что вы будете делать сегодня (рабочий процесс): просмотр всех элементов в контексте друг друга может быть очень информативным.
  • Ограничьте объем незавершенной работы (WIP): это помогает сбалансировать подход, основанный на потоке, чтобы команды не начинали и не выполняли слишком много работы одновременно.
  • Улучшение потока: когда что-то закончено, в игру вступает следующий по приоритету элемент из невыполненной работы.

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

Метод разработки динамических систем (DSDM)

DSDM — это структура, состоящая из восьми принципов, жизненного цикла и продуктов, ролей и обязанностей, а также нескольких лучших практик. Они лежат в основе и поддерживают философию предоставления стратегически согласованных бизнес-преимуществ как можно раньше, чтобы обеспечить организации максимально возможную отдачу от инвестиций (ROI).

DSDM — это методология, в которой сроки и качество отдаются приоритету над функциональностью, которая фиксирует стоимость, качество и время в начале и использует метод приоритизации MoSCoW, который разбивает проект на четыре различных типа требований:

  • Должен иметь (М)
  • Должно быть (С)
  • Мог бы ©
  • Не будет (W)

В основе DSDM Atern лежат восемь принципов. Эти принципы определяют для команды позицию, которую они должны занять, и образ мышления, который они должны принять для последовательной работы.

  1. Сосредоточьтесь на потребностях бизнеса
  2. Доставить вовремя
  3. Сотрудничать
  4. Никогда не жертвуйте качеством
  5. Стройте постепенно на прочном фундаменте
  6. Разрабатывайте итеративно
  7. Общайтесь непрерывно и четко
  8. Демонстрация контроля

Экстремальное программирование

Экстремальное программирование  (XP), первоначально описанное Кентом Беком, стало одной из самых популярных и противоречивых методологий Agile. XP — это дисциплинированный подход к быстрой и непрерывной доставке высококачественного программного обеспечения. Он предназначен для улучшения качества программного обеспечения и скорости отклика перед лицом меняющихся требований клиентов. Это способствует высокой вовлеченности клиентов, быстрой обратной связи, непрерывному тестированию, непрерывному планированию и тесной командной работе для предоставления работающего программного обеспечения с очень частыми интервалами, обычно каждые 1–3 недели.

Объяснение экстремального программирования

Каковы ключевые ценности гибких методов?

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

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

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

12 лучших практик

Дополняя Agile-манифест, Agile Alliance также определил набор из 12 основополагающих принципов, которые служат руководством и более подробными пояснениями в дополнение к Agile-манифесту:

Гибкая разработка — 12 лучших практик
  1. Нашим наивысшим приоритетом является удовлетворение потребностей клиентов за счет своевременной и непрерывной поставки ценного программного обеспечения.
  2. Приветствуйте меняющиеся требования, даже на поздних стадиях разработки. Гибкие процессы используют изменения для конкурентного преимущества клиента.
  3. Поставляйте работающее программное обеспечение часто, от пары недель до пары месяцев, отдавая предпочтение более коротким временным рамкам.
  4. Деловые люди и разработчики должны ежедневно работать вместе на протяжении всего проекта.
  5. Создавайте проекты вокруг мотивированных людей. Обеспечьте им необходимые условия и поддержку и доверьте им выполнение работы.
  6. Самый эффективный и действенный метод передачи информации команде разработчиков и внутри нее — беседа лицом к лицу.
  7. Работающее программное обеспечение является основным мерилом прогресса.
  8. Гибкие процессы способствуют устойчивому развитию.
  9. Спонсоры, разработчики и пользователи должны иметь возможность поддерживать постоянный темп на неопределенный срок.
  10. Постоянное внимание к техническому совершенству и хорошему дизайну повышает маневренность.
  11. Простота — искусство максимизировать количество невыполненной работы — имеет важное значение.
  12. Лучшие архитектуры, требования и проекты создаются самоорганизующимися командами. Через регулярные промежутки времени команда размышляет о том, как стать более эффективной, а затем соответствующим образом настраивает и корректирует свое поведение.

Резюме

Agile Development — одно из самых модных словечек в индустрии разработки программного обеспечения, которое представляет собой другой способ управления проектами разработки программного обеспечения. Это не конкретный метод разработки программного обеспечения, а общий термин для набора методов и практик, основанных на ценностях и принципах, изложенных в Манифесте Agile. Решения развиваются благодаря сотрудничеству между самоорганизующимися межфункциональными командами, использующими соответствующие практики для своего контекста.

Гибкая разработка Чтение

Leave a Reply

Ваш адрес email не будет опубликован.