Введение в Agile и Scrum
Agile - это методология разработки программного обеспечения, обладающая пропускной способностью для быстрой адаптации к изменяющимся требованиям проекта и для адаптации к разработке нового продукта, пока проект продолжается или после завершения проекта, в отличие от традиционного управления проектом.
Давайте поймем отличительное преимущество, которое Agile имеет перед традиционной методологией управления проектами:
Традиционный подход:
- Детальное планирование перед началом
- Позволяет принять минимальные изменения
- Фиксированное определение проекта
Гибкий подход:
- Требуется минимальное планирование перед стартом
- Примет и адаптируется к изменениям
- Фиксированное время и стоимость
Scrum является наиболее широко используемым и популярным подходом для реализации гибкой методологии.
Мы вскоре перейдем к разделу Scrum, но сначала давайте посмотрим больше на гибкую структуру.
Принципы гибкого манифеста
- Удовлетворение потребностей клиентов является наивысшим приоритетом, который достигается за счет непрерывной и ранней доставки ценного программного обеспечения.
- Поставьте работающее программное обеспечение за короткий промежуток времени с непрерывной разработкой нового программного обеспечения / продуктов в соответствии с тем же подходом.
- Мы должны быть в состоянии соответствовать изменяющимся требованиям, даже если они запаздывают в течение жизненного цикла SDLC.
- Члены команды должны всегда оставаться мотивированными, и для этого должна быть обеспечена достаточная поддержка и хорошая обстановка.
- Разработчики и бизнесмены должны ежедневно работать вместе на протяжении всего проекта.
- Наиболее эффективным способом общения считается общение лицом к лицу.
- Устойчивое развитие. Все члены команды должны быть в состоянии поддерживать постоянный темп.
- Рабочий продукт / программное обеспечение считается основной мерой прогресса.
- В конце дня основное внимание должно быть уделено техническому совершенству и надежному дизайну.
- Простота должна соблюдаться на протяжении всего процесса SDLC
- Команды должны продемонстрировать постоянную эффективность и принять любые изменения для повышения эффективности.
- Надежный дизайн и архитектура происходят из самоорганизующихся команд.
Подходы для гибкой реализации:
Ссылка: https://goo.gl/images/fkZqGe
- SCRUM - это итеративный подход, в котором есть нечто, называемое спринтом, которое длится до одной или двух недель. Такой подход позволяет командам регулярно предоставлять рабочий продукт или программное обеспечение.
- Kanban - для реализации гибкого подхода используется визуальная структура. Здесь нет спринтов фиксированной длины, и команда получает задание из приоритетного задела.
- Экстремальное программирование (XP) - этот подход призван улучшить качество программного обеспечения и скорость реагирования за счет использования простоты, обратной связи и принятия изменений.
- Разработка на основе функций (FDD). Этот подход включает в себя 5 основных действий: - Разработка общей модели, создание списка функций, планирование по функциям, проектирование по функциям и построение по функциям.
- Адаптивная разработка систем (ASD) - этот подход может быть использован для построения сложных программ и систем и в основном сосредоточен на совместной работе команды и самоорганизации. Он включает в себя 3 повторяющихся действия: «Размышляй», «Сотрудничай» и «Учись».
- Метод динамической разработки системы - DSDM - это гибкий метод, который следует итеративному и инкрементальному подходу, который в значительной степени основан на методологии быстрой разработки приложений. В нем рассматриваются общие сбои проектов, такие как проблемы бюджета проекта, несоблюдение сроков и т. Д.
- Бережливая разработка программного обеспечения - Бережливая разработка программного обеспечения - это гибкий подход, основанный на 7 основных принципах: устранение потерь, расширение возможностей команды, быстрая доставка, оптимизация всего, повышение качества сборки, откладывание решений и усиление обучения.
Что такое Scrum?
В предыдущих разделах мы уже видели подходы, которые используются для реализации Agile-процесса, и Scrum был одним из них, Scrum - одна из наиболее важных и наиболее широко используемых Agile-методологий. Скрам - это итеративный подход, в котором есть то, что называется спринтами, которые длятся до одной или двух недель. Такой подход позволяет командам регулярно предоставлять рабочий продукт или программное обеспечение. Здесь обязанности, роли и встречи решаются в Scrum, а спринты - это графики, в которых есть планирование спринта, демонстрация спринта, ежедневные тренировки и ретроспектива спринта.
Скрам Роли / Скрам Команды:
Ссылка: https://goo.gl/images/XpNHBe
- Scrum Master - Scrum Master - это роль, которая отвечает за команду Scrum, которая будет следовать методологии Scrum. Scrum Master организует встречи, поощряет команду, облегчает планирование и отслеживание, решает проблемы и устраняет узкие места. Scrum Master также связывается с владельцем продукта, чтобы удостовериться, что резерв продукта готов к следующему спринту.
- Владелец продукта - Владелец продукта отвечает за анализ и передачу версии Программного обеспечения команде Scrum. Владелец продукта также координирует свою работу с Scrum Master, чтобы принять решение о резервных записях продукта для спринтов.
- Команда разработчиков - Команда разработчиков состоит из профессионалов, которые отвечают за постоянную разработку, тестирование и поставку программного обеспечения. Они определяют, как доставлять куски работ частыми шагами.
Шаги в Scrum Flow:
Ссылка: https://goo.gl/images/6YTUPf
- Журнал ожидания продукта - Журнал ожидания продукта поддерживает список характеристик продукта. Владелец продукта и Scrum Master несут ответственность за расстановку приоритетов в пунктах отставания на основе пользовательских историй и требований.
- Планирование спринта - это встреча, которую проводит Scrum Master, и владелец продукта представляет подробную информацию о незавершенном производстве продукта, устанавливает критерии приемки поставки и группу разработчиков, которые определяют работу и усилия, которые они выполняли ежедневно.
- Уточнение журнала невыполненных работ. Для обновления журнала незавершенного производства мы используем уточнение журнала невыполненных работ. Здесь пользовательские истории делятся на более мелкие части, а любые ненужные пользовательские истории удаляются.
- Ежедневная схватка - это ежедневная 15-минутная встреча, на которой обсуждаются три основных вопроса: что было сделано вчера, каков план на сегодня и каковы препятствия.
- Совещание по рассмотрению спринта - это собрание проводится в конце каждого спринта, где демонстрируется живая демонстрация, чтобы продемонстрировать, что было достигнуто в течение спринта.
- Ретроспективное собрание по спринту. Мы также можем назвать это собрание успешным, когда команда обсуждает процесс, который работал или не работал во время спринта, с их обходными путями.
Вывод
В этой статье мы увидели, что Agile - это методология разработки программного обеспечения, обладающая пропускной способностью для быстрой адаптации к изменяющимся требованиям проекта и для адаптации к разработке нового продукта, пока проект продолжается или после завершения проекта, в отличие от традиционного управления проектами, в то время как Scrum наиболее широко используемый и популярный подход к внедрению гибкой методологии.
Рекомендуемые статьи
Это было руководство к тому, что такое Agile и Scrum. Здесь мы обсудили различные подходы Agile и Scrum. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
- Что такое искусственный интеллект
- Agile Scrum Интервью Вопросы
- Что такое SDLC
- Agile против Scrum против водопада