Agile Data Science - концепции методологии
В этой главе мы сосредоточимся на концепции жизненного цикла разработки программного обеспечения, который называется «гибкая разработка». Методология Agile-разработки программного обеспечения помогает в создании программного обеспечения посредством сеансов инкремента за короткие итерации от 1 до 4 недель, чтобы разработка соответствовала меняющимся требованиям бизнеса.
Есть 12 принципов, которые подробно описывают методологию Agile:
Удовлетворенность клиентов
Наивысший приоритет отдается клиентам, которые уделяют особое внимание требованиям за счет своевременной и непрерывной поставки ценного программного обеспечения.
Приветствуя новые изменения
Изменения допустимы во время разработки программного обеспечения. Гибкие процессы предназначены для работы, чтобы соответствовать конкурентному преимуществу клиента.
Доставка
Доставка работающего программного обеспечения предоставляется клиентам в течение одной-четырех недель.
Сотрудничество
Бизнес-аналитики, аналитики качества и разработчики должны работать вместе на протяжении всего жизненного цикла проекта.
Мотивация
Проекты должны разрабатываться кланом мотивированных людей. Он обеспечивает среду для поддержки отдельных членов команды.
Личный разговор
Личный разговор - самый действенный и действенный метод передачи информации в команду разработчиков и внутри нее.
Измерение прогресса
Измерение прогресса - это ключ, который помогает определить ход разработки проекта и программного обеспечения.
Сохранение постоянного темпа
Agile-процесс ориентирован на устойчивое развитие. Бизнес, разработчики и пользователи должны иметь возможность поддерживать постоянный темп проекта.
Мониторинг
Обязательно уделять регулярное внимание техническому совершенству и хорошему дизайну для улучшения гибкой функциональности.
Простота
Agile-процесс делает все просто и использует простые термины для измерения незавершенной работы.
Самостоятельные условия
Agile-команда должна быть самоорганизованной и независимой с лучшей архитектурой; требования и проекты возникают из самоорганизованных команд.
Обзор работы
Важно проверять работу через регулярные промежутки времени, чтобы команда могла размышлять о том, как продвигается работа. Своевременная проверка модуля улучшит производительность.
Ежедневный Stand-up
Ежедневный стендап - это ежедневное статусное собрание членов команды. Он предоставляет обновления, связанные с разработкой программного обеспечения. Это также относится к устранению препятствий на пути развития проекта.
Ежедневный стендап - обязательная практика, независимо от того, как сформирована agile-команда, вне зависимости от местоположения ее офиса.
Список особенностей ежедневного стендапа следующий:
Продолжительность ежедневных стоячих встреч должна составлять примерно 15 минут. Это не должно длиться дольше.
Стенд-ап должен включать обсуждения обновления статуса.
Участники этой встречи обычно встают с намерением быстро закончить встречу.
История пользователя
История обычно представляет собой требование, которое сформулировано в нескольких предложениях простым языком и должно быть выполнено в течение одной итерации. Пользовательская история должна включать следующие характеристики:
Весь связанный код должен иметь соответствующие проверки.
Наборы модульных тестов для указанной итерации.
Должны быть определены все примеры приемочных испытаний.
Принятие продукта владельцем при создании истории.
Что такое скрам?
Скрам можно рассматривать как подмножество гибкой методологии. Это легкий процесс и включает в себя следующие функции:
Это структура процесса, которая включает в себя набор практик, которым необходимо следовать в последовательном порядке. Лучшая иллюстрация Scrum - это следующие итерации или спринты.
Это «легкий» процесс, означающий, что процесс должен быть как можно меньшим, чтобы максимизировать продуктивность за заданную продолжительность.
Процесс Scrum известен своим отличительным процессом от других методологий традиционного гибкого подхода. Он разделен на следующие три категории -
Roles
Artifacts
Ящики времени
Роли определяют членов команды и их роли на протяжении всего процесса. Команда Scrum состоит из следующих трех ролей:
Скрам Мастер
Владелец продукта
Team
Артефакты Scrum предоставляют ключевую информацию, о которой должен знать каждый участник. Информация включает подробную информацию о продукте, запланированных и выполненных действиях. Артефакты, определенные в структуре Scrum, следующие:
Резерв продукта
Бэклог спринта
График сжигания
Increment
Временные рамки - это пользовательские истории, которые планируются для каждой итерации. Эти пользовательские истории помогают в описании функций продукта, которые являются частью артефактов Scrum. Бэклог продукта - это список пользовательских историй. Эти пользовательские истории имеют приоритет и направляются на собрания пользователей, чтобы решить, какую из них следует обсудить.
Почему Скрам Мастер?
Скрам-мастер взаимодействует с каждым членом команды. Давайте теперь посмотрим, как работает Scrum Master с другими командами и ресурсами.
Владелец продукта
Скрам-мастер взаимодействует с владельцем продукта следующими способами:
Поиск методов для достижения эффективного продукта отставания в пользовательских историях и управления ими.
Помогаем команде понять потребности в ясных и лаконичных элементах бэклога продукта.
Планирование продукта в конкретной среде.
Обеспечение того, чтобы владелец продукта знал, как повысить ценность продукта.
Организация мероприятий Scrum по мере необходимости.
Скрам Команда
Скрам-мастер взаимодействует с командой несколькими способами:
Обучение организации внедрению Scrum.
Планирование внедрения Scrum для конкретной организации.
Помощь сотрудникам и заинтересованным сторонам в понимании требований и этапов разработки продукта.
Работа со Scrum-мастерами других команд для повышения эффективности применения Scrum указанной команды.
Организация
Скрам-мастер взаимодействует с организацией несколькими способами. Некоторые из них упомянуты ниже -
Коучинг и scrum-команда взаимодействуют с самоорганизацией и включают функцию кросс-функциональности.
Обучение организации и команд в тех областях, где Scrum еще не полностью принят или не принят.
Преимущества Scrum
Scrum помогает клиентам, членам команды и заинтересованным сторонам сотрудничать. Он включает в себя ограниченный по времени подход и постоянную обратную связь от владельца продукта, гарантирующую, что продукт находится в рабочем состоянии. Скрам дает преимущества различным ролям проекта.
Покупатель
Рассматриваются более короткие спринты или итерации, а пользовательские истории разрабатываются в соответствии с приоритетом и учитываются при планировании спринта. Это гарантирует выполнение каждого спринта и требований клиентов. Если нет, требования отмечаются, планируются и принимаются для спринта.
Организация
Организация с помощью мастеров Scrum и Scrum может сосредоточить усилия, необходимые для разработки пользовательских историй, тем самым уменьшая рабочую перегрузку и избегая переделок, если таковые имеются. Это также помогает поддерживать повышенную эффективность команды разработчиков и удовлетворенность клиентов. Такой подход также помогает увеличить потенциал рынка.
Менеджеры по продукту
Основная ответственность менеджеров по продукту - обеспечить поддержание качества продукта. С помощью Scrum Masters становится легко облегчить работу, быстро получить ответы и принять изменения, если таковые имеются. Менеджеры по продукту также проверяют, что спроектированный продукт соответствует требованиям заказчика в каждом спринте.
Команда разработчиков
Благодаря ограниченному по времени характеру и сохранению спринтов в течение меньшего времени, команда разработчиков с энтузиазмом видит, что работа отражена и выполнена правильно. Рабочий продукт увеличивает каждый уровень после каждой итерации или, скорее, мы можем назвать их «спринтом». Пользовательские истории, разработанные для каждого спринта, становятся приоритетом для клиентов, добавляя ценность итерации.
Вывод
Scrum - это эффективная среда, в которой вы можете разрабатывать программное обеспечение в командной работе. Он полностью разработан на принципах гибкости. ScrumMaster существует, чтобы помогать и всячески сотрудничать с командой Scrum. Он действует как личный тренер, который помогает вам придерживаться разработанного плана и выполнять все действия в соответствии с планом. Авторитет ScrumMaster никогда не должен выходить за рамки процесса. Он / она потенциально должны быть способны управлять любой ситуацией.