Scrum

Матеріал з Wiki.Zina
Перейти до навігації Перейти до пошуку

Scrum — методология управления проектами для гибкой разработки программного обеспечения. Scrum чётко делает акцент на качественном контроле процесса разработки.

Павила

[ред. | ред. код]
  1. У вас должен быть один человек в проекте, который уполномочен принимать решения о том, какую фичу стоит разрабатывать раньше, какую позже.
    «Кто платит, тот и музыку заказывает».
    Обычно этот человек работает на стороне заказчика. Или является бизнес аналитиком. Или быть может синхронизирует взгляды различных заинтересованных в разрабатываемом продукте заказчиков.
    В любом случае разработчикам проще, если такой человек есть, он доступен, и он такой один на проект (во избежание конфликтов).
    Его называют «Product Owner» (оставим без перевода)

  2. Product Owner поддерживает список требований-пожеланий к продукту. Этот список он сортирует (приоритезирует) по принципу «ценное сверху, менее ценное снизу».
    Такой список называется «Product Backlog» (без перевода).

  3. Собираясь на планирование короткой фазы проекта (итерации или «спринта» – дословно забега на короткую дистанцию), команда (а это все те, кто влияют на разрабатываемый продукт – архитекторы, дизайнеры, разработчики, тестировщики) выбирают из Product Backlog ту верхнюю часть, которую они считают, что реально начать и закончить (!) за этот короткий выделенный период.
    Так как часто для принятия подобных решений требуется пожертвовать детализацией фич, Product Owner принимает активное участие в подобном планировании.
    Таким образом заказчик и команда принимают удовлетворяющие всех решения: заказчик ожидает получить некий ценнейший набор функционала за довольно короткое время, команда же получает план, в который верит.

  4. По истечению оговоренного срока команда и заказчик встречаются для просмотра и обсуждения результатов. Это называется демонстрацией («де-монстрация» – изгонение монстров из софта).
    На выходе такого митинга мы имеем а) уменьшенные риски, за счёт доказательства работоспособности команды, технологий и требований; б) новые идеи по развитию нашего продукта (вряд ли он готов к продаже после двухнедельной работы); в) доверие заказчика и команды к друг другу.

  5. После всей перечисленной тяжёлой работы команда собирается и обсуждает серию экспериментов и задач, которые она думает ей помогут более эффективно работать в течение следующей итерации (спринта).
    Это называется ретроспектива (дословно «просмотр прошедшего»; или что-то в этом роде – лингвисты поправят).

  6. Забыл сказать – во время спринта членам команды скорее всего придётся синхронизировать свои усилия и помогать друг другу для более слаженной работы и достижения общего результата. Говорят, что хорошо это делать раз в день в течение 10-15 минут в присутствии всех членов команды. Это и называется Скрамом.

  7. Во время подобного обсуждения члены команды могут пожаловаться на проблемы, которые они не в силах устранить (падает сервер, пропадает интернет, слишком тёплое пиво…) Эти проблемы помогает устранить так называемый ScrumMaster – человек, который понимает принципы и тонкости Скрама, командной работы и «нежного лидерства». Он делает всё, чтобы команда максимально эффективно общалась с заказчиком, между собой и достигла своих обещаний и целей.

Ссылки

[ред. | ред. код]