Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Scrum его достоинства, недостатки и критика

Лекция



Привет, сегодня поговорим про гибкие методологии разработки по, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое гибкие методологии разработки по, scrum , настоятельно рекомендую прочитать все из категории Разработка программного обеспечения и информационных систем.

Scrum (от англ. scrum «толкучка») — методология управления проектами, активно применяющаяся при разработке информационных систем для гибкой разработки программного обеспечения. Scrum четко делает акцент на качественном контроле процесса разработки. Кроме управления проектами по разработке ПО Scrum может также использоваться в работе команд поддержки программного обеспечения (software support teams), или как подход управления разработкой и сопровождением программ: Scrum of Scrums.

  • Введение. Манифест
  • Основные принципы
  • Понятие командной ответственности
  • Стадии продуктивности Agile-команды
  • Agile-артефакты:
    • Issue types:
      • Epic
      • Story
      • Technical tasks & Subtasks
    • Project backlog
    • Sprint Backlog
    • Roles: Product Owner, Scrum master
    • Meetings:
      • Daily
      • Planning
      • Retrospective
      • Sprint Close
      • Grooming
    • Понятия Story Points and Team Velocity.
    • QA in Agile:
      • Кооперация с РМ-ом, Scrum Master-ом и/или Product Owner-ом
      • Проактивность и инициативность
    • Виды KPI

Историческая справка

Scrum его достоинства, недостатки и критика
Схватка (Scrum) в регби между Newport и London Welsh в 1904

Подход впервые описали Хиротака Такэути и Икудзиро Нонака в статье The New Product Development Game(Гарвардский Деловой Обзор , январь-февраль 1986). Они отметили, что проекты, над которыми работают небольшие команды из специалистов различного профиля, обычно систематически производят лучшие результаты, и объяснили это как «подход регби». В 1991 году ДеГрейс и Шталь в книге «Нечестивые проблемы, праведные решения» ссылались на этот подход, как на Scrum (толкотня; схватка вокруг мяча (в регби)), спортивный термин, приведенный в статье Такэути и Нонакой. Кен Швабер в начале 1990-х использовал подход, который привел Scrum в его компанию. Впервые метод Scrum был представлен на общее обозрение задокументированным, четко сформированным и описанным совместно Швабером и Джефом Сазерлендом на OOPSLA’96 (англ.) в Остине. Швабер и Сазерленд на протяжении следующих лет работали вместе, чтобы обработать и описать весь их опыт и лучшие практические образцы для индустрии в одно целое, в ту методологию, что известна сегодня как Scrum. Швабер объединил усилия с Майком Бидлом в 2001 году, чтобы детально описать метод в книге «Agile Software Development with SCRUM» .

Определения

Scrum его достоинства, недостатки и критика
Скрам-процессы

Скрам

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

Спринт

Спринт[10] — итерация в скраме, в ходе которой создается функциональный рост программного обеспечения. Жестко фиксирован по времени. Длительность одного спринта от 2 до 4 недель. В отдельных случаях, к примеру согласно Scrum стандарту Nokia, длительность спринта должна быть не более 6 недель. Тем не менее, считается, что чем короче спринт, тем более гибким является процесс разработки, релизы выходят чаще, быстрее поступают отзывы от потребителя, меньше времени тратится на работу в неправильном направлении. С другой стороны, при более длительных спринтах команда имеет больше времени на решение возникших в процессе проблем, а владелец проекта уменьшает издержки на совещания, демонстрации продукта и т. п. Разные команды подбирают длину спринта согласно специфике своей работы, составу команд и требований, часто методом проб и ошибок. Для оценки объема работ в спринте можно использовать предварительную оценку, измеряемую в очках истории. Предварительная оценка фиксируется в бэклоге проекта. На протяжении спринта никто не имеет права менять список требований к работе, внесенных в бэклог спринта.

Бэклог Проекта (Project backlog)

Бэклог проекта — это список требований к функциональности, упорядоченный по их степени важности, подлежащих реализации. Элементы этого списка называются «пожеланиями пользователя» (user story) или элементами бэклога (backlog items). Бэклог проекта открыт для редактирования для всех участников скрам процесса.

Бэклог спринта (Sprint backlog)

Бэклог спринта — содержит функциональность, выбранную владельцем проекта из Бэклога проекта. Все функции разбиты по задачам, каждая из которых оценивается скрам-командой. Каждый день команда оценивает объем работы, который нужно проделать для завершения спринта[11].

Диаграмма сгорания задач (Burndown chart)

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

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

Существуют разные виды диаграммы:

  • диаграмма сгорания работ для спринта — показывает, сколько уже задач сделано и сколько еще остается сделать в текущем спринте.
  • диаграмма сгорания работ для выпуска проекта — показывает, сколько уже задач сделано и сколько еще остается сделать до выпуска продукта (обычно строится на базе нескольких спринтов).

Дополнительные определения

История спринта (Sprint Story)

Требуемую функциональность, которую добавляют в бэклог, часто называют историей. Зачастую история имеет следующую структуру: «Будучи пользователем <тип пользователя> я хочу сделать <действие>, чтобы получить <результат>». Такая структура удобна тем, что понятна как разработчикам так и заказчикам.

Остановка спринта (Abnormal Termination)

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

Покер планирования (Planning Poker)

Очки за пользовательскую историю (Story Points)

Абстрактная метрика оценки сложности истории, которая не учитывает затраты в человекочасах. Обычно используют одну из следующих шкал: ряд Фибоначчи(1,2,3,5,8,13,21,34,55); линейную шкалу (1,2,3,4 … n); степень двойки (1,2,4,8 … 2n); размеры одежды (XS, S, M, L, XL).

Задачи истории спринта (Sprint Story Tasks )

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

Критерий готовности (Definition of Done (DoD))

Критерии, определяющие степень готовности элемента из журнала пожеланий пользователя.

Скорость команды

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

Роли в скрам-процессе

По методике Scrum в производственном процессе есть определенные роли, разбитые на 2 группы «свиней» и «кур». Эти названия были использованы из-за шутки[12]

Свинья идет по дороге. Курица смотрит на нее и говорит: «А давай откроем ресторан!» Свинья смотрит на курицу и отвечает: «Хорошая идея, и как ты хочешь его назвать?» Курица думает и говорит: «Почему бы не назвать „Яичница с беконом“?». «Так не пойдет, — отвечает свинья, — ведь тогда мне придется полностью посвятить себя проекту, а ты будешь вовлечена только частично».

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

Основные роли (Core roles) в методологии скрам («Свиньи»)

«Свиньи» полностью включены в проект и в скрам-процесс.

  • Скрам-мастер (Scrum Master) — проводит совещания (Scrum meetings) следит за соблюдением всех принципов скрам, разрешает противоречия и защищает команду от отвлекающих факторов. Данная роль не предполагает ничего иного, кроме корректного ведения скрам-процесса. Руководитель проекта скорее относится к владельцу проекта и не должен фигурировать в качестве скрам-мастера.
  • Владелец продукта (Product Owner) — представляет интересы конечных пользователей и других заинтересованных в продукте сторон.
  • Скрам-команда (Scrum Team) — кросс-функциональная команда разработчиков проекта, состоящая из специалистов разных профилей: тестировщиков, архитекторов, аналитиков, программистов и т. д. Размер команды в идеале составляет 7±2 человека. Команда является единственным полностью вовлеченным участником разработки и отвечает за результат как единое целое. Никто кроме команды не может вмешиваться в процесс разработки на протяжении спринта.

Дополнительные роли (Ancillary roles) в методологии скрам («Куры»)

  • Пользователи (Users)
  • Клиенты, Продавцы (Stakeholders) — лица, которые инициируют проект и для кого проект будет приносить выгоду. Они вовлечены в скрам только во времяобзорного совещания по спринту (Sprint Review).
  • Управляющие (Managers) — люди, которые управляют персоналом.
  • Эксперты-консультанты (Consulting Experts)

Артефакты

Обязательные поля

  • ID — уникальный идентификатор, порядковый номер, применяемый для идентификации историй в случае их переименования.
  • Название (Name) — краткое описание истории. Оно должно быть однозначным, чтобы и разработчики, и владелец проекта могли понять, о чем идет речь и отличить одну историю от другой.
  • Важность (Importance) — степень важности данной истории, по мнению владельца проекта. Обычно представляет собой натуральное число, иногда для этой цели используются числа Фибоначчи. Чем больше значение, тем выше приоритет.
  • Предварительная оценка (initial estimate) — начальная оценка объема работ, необходимого для реализации истории по сравнению с другими историями. Измеряется в story point’ах. Приблизительно соответствует числу «идеальных человеко-часов».
  • Как продемонстрировать (how to demo) — краткое пояснение того, как завершенная задача будет продемонстрирована в конце спринта. Данное поле может представлять собой код автоматизированного теста для приемо-сдаточного испытания.

Дополнительные поля

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

  • Категория (track). Например, «панель управления» или «оптимизация». При помощи этого поля владелец проекта может легко выбрать все пункты категории «оптимизация» и установить им низкий приоритет.
  • Компоненты (components) — указывает, какие компоненты (например, база данных, сервер, клиент) будут затронуты при реализации истории. Данное поле состоит из группы checkbox’ов, которые отмечаются, если соответствующие компоненты требуют изменений.
  • Инициатор запроса (requestor). владелец продукта может захотеть хранить информацию о всех заказчиках, заинтересованных в данной задаче. Это нужно для того, чтобы держать их в курсе дела о ходе выполнения работ.
  • ID в системе учета дефектов (bug tracking ID) — если вы используете отдельную систему отслеживания ошибок, тогда в описании истории полезно хранить ссылки на все дефекты, которые к ней относятся.

Встречи

Планирование спринта (Sprint Planning Meeting)

Происходит в начале новой итерации Спринта.

  • Из бэклога проекта выбираются задачи, обязательства по выполнению которых за спринт принимает на себя команда;
  • На основе выбранных задач создается бэклог спринта. Каждая задача оценивается в идеальных человеко-часах;
  • Решение задачи не должно занимать более 12 часов или одного дня. При необходимости задача разбивается на подзадачи;
  • Обсуждается и определяется, каким образом будет реализован этот объем работ;
  • Продолжительность совещания ограничена сверху 4-8 часами в зависимости от продолжительности итерации, опыта команды и т. п.
    • (первая часть совещания) Участвует владелец проекта и скрам команда: выбирают задачи из бэклога продукта;
    • (вторая часть совещания) Участвует только команда: обсуждают технические детали реализации, наполняют бэклог спринта.

Ежедневное совещание (Daily Scrum meeting)

  • начинается точно вовремя;
  • все могут наблюдать, но только «свиньи» говорят;
  • длится не более 15 минут;
  • проводится в одном и том же месте в течение спринта.

В течение совещания каждый член команды отвечает на 3 вопроса:

  • Что сделано с момента предыдущего ежедневного совещания?
  • Что будет сделано с момента текущего совещания до следующего?
  • Какие проблемы мешают достижению целей спринта? (Над решением этих проблем работает скрам мастер. Обычно это решение проходит за рамками ежедневного совещания и в составе лиц, непосредственно затронутых данным препятствием.)

Скрам над скрамом (Scrum of Scrums)

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

  • Что каждая команда сделала с момента предыдущего ежедневного совещания?
  • Что каждая команда сделает к следующему ежедневному совещанию
  • Есть ли проблемы, мешающие или замедляющие работу каждой команды?
  • Нужно ли другой команде сделать что-то из задач вашей команды?

Обзор итогов спринта (Sprint review meeting)

Проводится в конце спринта.

  • Команда демонстрирует прирост функциональности продукта всем заинтересованным лицам.
  • Привлекается максимальное количество зрителей.
  • Все члены команды участвуют в демонстрации (один человек на демонстрацию или каждый показывает, что сделал за спринт).
  • Нельзя демонстрировать незавершенную функциональность.
  • Ограничена четырьмя часами в зависимости от продолжительности итерации и прироста функциональности продукта.

Ретроспективное совещание (Retrospective meeting)

Проводится в конце спринта.

  • Члены команды высказывают свое мнение о прошедшем спринте.
  • Отвечают на два основных вопроса:
    • Что было сделано хорошо в прошедшем спринте?
    • Что надо улучшить в следующем?
  • Выполняют улучшение процесса разработки (решают вопросы и фиксируют удачные решения).
  • Ограничена одним—тремя часами.

критика SCRUM

Скрам не работает, когда он насильно насаждается в организации, культура которой плохо совместима с принципами гибкого управления.
Scrum его достоинства, недостатки и критика

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

  1. Сложность внедрения: Одним из основных критических моментов является сложность внедрения Scrum в больших и сложных организациях. Переход к Scrum может потребовать значительных усилий в обучении, изменении культуры и процессов.

  2. Не всегда подходит: Scrum имеет свои ограничения и может не быть наилучшим выбором для всех проектов и команд. Например, для проектов, требующих высокой степени предсказуемости или жестких сроков, другие методологии, такие как Waterfall, могут быть более подходящими.

  3. Склонность к бюрократии: Некоторые критики утверждают, что Scrum может стать слишком бюрократическим и создавать избыточные процессы, особенно если его применяют неправильно.

  4. Проблемы с командной динамикой: Не во всех командах происходит успешное внедрение Scrum. В некоторых случаях это может привести к конфликтам и недовольству среди членов команды.

  5. Ограничение на изменения: Scrum нацелен на минимизацию изменений во время спринтов, что может затруднить адаптацию к изменяющимся требованиям или приоритетам.

  6. Ежедневные совещания предназначены для менеджеров: На ежедневных стендапах может возникнуть нежелательная тенденция, когда они становятся мероприятием, предназначенным для информирования менеджеров о текущей ситуации, а не для обсуждения рабочих задач.

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

  8. Крайне продуктивные разработчики, которые не работают как команда: В некоторых случаях Scrum может поддерживать продуктивность индивидуальных разработчиков, но не способствовать формированию сплоченных команд. противоречие между качественными программистами-одиночками и успешными командами. Когда все придерживаются методологии Scrum, некоторые разработчики могут достичь высокой производительности, но это может привести к отсутствию настоящей командной работы. без правильных стимулов самоорганизация команды становится недостижимой целью. Он говорит: "Члены команды будут решать задачи так, как им удобно, или так, как им предписано. Если это не способствует формированию команды, многие задачи могут остаться не выполненными, и члены команды будут двигаться в разные стороны, без организации".Он также добавляет: "Более того, если позволить каждому разработчику выбирать собственные методы решения задач, это может усложнить процесс отладки кода".

  9. Сложные задачи отодвигаются на потом: В Scrum может возникнуть тенденция откладывать решение сложных задач до более поздних этапов проекта.

  10. Возможности продукта оказываются важнее качества кода: Основное внимание уделяется функциональным возможностям продукта, а не качеству кода.

  11. Отсутствие времени на обсуждение рабочих вопросов с коллегами: Разработчики могут быть заняты выполнением задач и не иметь времени на обсуждение и совместное решение вопросов.

  12. Недавно выявленным ошибкам приходится ждать своей очереди: Ошибки могут быть выявлены после завершения спринта и рассматриваться как новые задачи.

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

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

  15. Если вы хотите быть более эффективными, вы должны добавить процесс, а не убирать его.
  16. Нас заставляли нас ходить на «церемонии», произносят название для кучи встреч: стендапы, планировки, ретроспективы и Scrum of Scrums. Об этом говорит сайт https://intellect.icu . Мы тратили больше времени на разговоры, чем на работу.
  17. Нам запретили ноутбуки на встречах. Мы должны были стоять. Мы передавали мяч по кругу, чтобы привлечь внимание.
  18. Мы тратили больше времени на оценку сторипоинтов, чем на написание программного обеспечения. Story points измеряют сложность, а не время, но нам нужно было решить, сколько story points поместится в спринте.
  19. Мы измерили, сколько стоит один сторипоинт, а затем написали контракты, в которых клиенты платили за пакет из «500 сторипоинтов».Руководство растерялось, когда обнаружило, что 500 сторис в одном проекте не совпадают с 500 сторис в другом проекте. Мы провели много встреч, чтобы исправить это.
  20. Представьте, что у вас есть менеджер, скрам-мастер, продакт-владелец и технический руководитель. Вы должны были отвечать всем им и никому из них одновременно.
  21. Мы платили людям, которые говорили нам, достаточно ли быстро мы сжигаем поинты. Разве сюжетные точки не были о сложности, а не о времени? Неважно.
  22. Я верю в Agile, но это не Agile. Мы пригласили профессиональных Scrum-тренеров. Мы заплатили людям из нашей команды, чтобы они прошли сертификацию.
  23. Мы попробовали Scrum так и по другому. Мы потратили на это годы. Результат всегда был один и тот же: это не работало.
  24. Scrum — это раковая опухоль, которая съест вашу команду разработчиков. Scrum не для разработчиков; это еще один инструмент для менеджеров чувствовать, что они контролируют ситуацию.
  25. Но лучше о Scrum отзываются те, кто смотрит вам в глаза и говорит: «Если это не работает для вас, вы делаете это неправильно. Scrum — это все, что работает для вашей команды».

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

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

КРИТИКА SCRUM

Итак, Скрам. Самая популярная методология гибкой разработки программного обеспечения, которую используют около 70 % гибких команд. О чем все это? Это хорошо или это отстой? Сделал ли Scrum нашу жизнь лучше? Давайте погрузимся.

Scrum его достоинства, недостатки и критика


SCRUM ПРЕДПОЛАГАЕТ, ЧТО ВЫ МОЖЕТЕ ДОСТОВЕРНО ОЦЕНИТЬ ПРОДОЛЖИТЕЛЬНОСТЬ ЗАДАЧИ.

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

  1. Скрытая сложность. Если вы не делаете что-то, что делали раньше, используя те же самые инструменты и те же методы, трудно предсказать, насколько сложной будет данная задача. Сегодняшние инструменты и методы меняются так быстро, что вы почти никогда не делаете что-то одинаково. Таким образом, на решение одной проблемы, которая выглядит угрожающе, уходит 30 минут; другая проблема, которая кажется простой, занимает 3 дня.
  2. Непоследовательные накладные расходы. Каждую неделю наше время занимают кризисы клиентов, ошибки, которые прошли ваши тесты, проблемы с вашими библиотеками, которые требуют от вас разветвления и исправления, необходимый рефакторинг, обнаруженный требованием функции, и тысячи других «вещей, которые возникают». Их невозможно запланировать или предвидеть, и они приводят к регулярному, но непостоянному увеличению накладных расходов, которые отвлекают нас от выполнения плана.
  3. Отвлекающие факторы, которые влияют на вас по-разному. Если вы разработчик, вы работаете в двух основных режимах: поток и зависание. Если вы находитесь в состоянии Потока (подробнее об этом позже), вы знаете, что вам нужно делать, и делаете это быстро. Но малейшее отвлечение может привести к полной остановке всего дела. Отвлечения — это плохо, когда вы находитесь в Потоке. Но если вы находитесь в состоянии Застревания, вы не знаете, что не так, и используете научный метод, пока не решите проблему. Джон Коуэн говорит :«Застой нельзя преодолеть с помощью воли или планирования, его можно преодолеть только прозрением, а приход прозрения непредсказуем. Стремление к пониманию часто может быть тем, что мешает его достижению. Девиз «Спи на этом» отражает представление о том, что блокирование сознательного разума может быть правильным решением, позволяющим бессознательному действовать, часто давая ключ к проблеме, как будто из ниоткуда. Отвлечение — не менее успешный подход. Поэтому во время тупика перерывы действительно желательны, поскольку они позволяют отвлечься». Поскольку отвлечение влияет на разработчиков по-разному, в зависимости от того, в каком режиме мы работаем, мы не можем знать, станут ли неизбежные отвлекающие факторы на этой неделе большим подспорьем или большим препятствием для выполнения работы.

Эти три вещи разрушают элегантность Scrum, из-за чего становится очень сложно оценить, сколько времени займет работа.

Scrum его достоинства, недостатки и критика

Мало того, Scrum предполагает, что вы можете оценить, сколько времени займут задачи других людей! Планирование покера предполагает, что каждый член команды может иметь разумное представление о том, сколько времени займут задачи всех остальных в других частях системы. А поскольку Scrum выступает за межфункциональные команды, это означает, что специалист по обеспечению качества оценивает, сколько времени займет работа разработчика. Это означает, что разработчик оценивает, сколько времени займет работа дизайнера. Это совершенно нереально.

Scrum его достоинства, недостатки и критика

Теперь некоторые люди сразу же заметят: мы не измеряем задачи Scrum по времени, мы измеряем их по сложности, усилиям, очкам или чему-то еще. К сожалению, это всего лишь симпатичная маленькая обертка, которая ловко пытается успокоить разработчиков, которые говорят, что оценки программирования неточны, и удовлетворить менеджеров проектов, которым все еще нужны оценки. Потому что даже если вы используете эту оболочку, Scrum все равно требует, чтобы вы указали, какой объем работы вы собираетесь выполнить в этом спринте – в этой итерации с фиксированным временем. Scrum хочет, чтобы вы неоднократно отвечали на вопрос: «Какой объем работы мы можем выполнить при наличии определенного количества работников и фиксированного количества времени?»По определению, это уравнение требует от вас – неявно или явно – оценить, сколько времени займет каждая рабочая задача. Итак, как бы вы это ни раскручивали, Scrum предполагает, что вы можете надежно оценить продолжительность задачи.

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

Scrum его достоинства, недостатки и критика

Некоторые люди говорят, что вам нужно оценить, сколько времени займет все, ради ваших клиентов. Что ж, я думаю, что оценки чаще ошибочны, чем верны, поэтому сроки и даты в нашей работе имеют тенденцию быть неточными. Привычка оценивать вещи означает, что вы часто ошибаетесь в своих оценках, и это создает скользкую дорожку, которая приводит либо к недоверию клиентов из-за того, что работа занимает больше времени, чем первоначально ожидалось, либо к снижению мастерства, поскольку у вас возникает искушение «просто сделать это». потому что вы пытаетесь оправдать свою оценку, хотя знаете, что следующему парню, который прикоснется к этому коду, придется плохо.

Scrum его достоинства, недостатки и критика


SCRUM ОТЛИЧНО ПОДХОДИТ ДЛЯ ЛЮДЕЙ, КОТОРЫЕ НЕ ПРОГРАММИРУЮТ

Скрам прекрасно вписывается в график менеджера, но не в график создателя . Пол Грэм ввел этот термин в своей классической статье о разнице между менеджерами и создателями в вопросах тайм-менеджмента.

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

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

Когда вы используете время таким образом, встретиться с кем-то — это просто практическая проблема. Найдите свободное место в своем расписании, забронируйте его, и все готово.

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

Когда вы действуете по графику создателя, встречи становятся катастрофой. Одна-единственная встреча может испортить целый день, если разбить ее на две части, каждая из которых слишком мала, чтобы сделать что-то сложное… Для кого-то, у кого график создателя, провести встречу - это все равно, что создать исключение. Это не просто заставляет вас переключаться с одной задачи на другую; он меняет режим, в котором вы работаете. Я считаю, что одна встреча иногда может повлиять на целый день. Встреча обычно затягивается как минимум на полдня, если ее прерывать утром или днем…

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

Я не думаю, что собрания — это зло, но они обходятся очень дорого, особенно для создателей. Большинству компаний и команд разработчиков программного обеспечения необходимо время от времени встречаться по разным вопросам, но Scrum предписывает еще больше, что усугубляет эту проблему. Между ежедневными стендапами, планированием спринта, обзором спринта, ретро-спринтом, ежедневными проверками, очисткой отставания, демонстрациями продуктов, собраниями компании и техническими тренингами легко проводить достаточное количество совещаний каждую неделю, чтобы держать ваших создателей в состоянии постоянного похмелья . .

Scrum его достоинства, недостатки и критика


ВСТРЕЧИ НАРУШАЮТ ПОТОК

Ладно, большое количество встреч не вписывается в график создателя, но почему? Это потому, что встречи нарушают Flow . Михай Чиксентмихайи, ведущий психолог, специализирующийся на теме Потока, задает вопрос:

продолжение следует...

Продолжение:


Часть 1 Scrum его достоинства, недостатки и критика
Часть 2 СКРАМ ИЗМЕРЯЕТ НЕПРАВИЛЬНЫЕ ВЕЩИ - Scrum его достоинства, недостатки и
Часть 3 Вау!! 😲 Ты еще не читал? Это зря! - Scrum его достоинства, недостатки и критика

См.также

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

Ответы на вопросы для самопроверки пишите в комментариях, мы проверим, или же задавайте свой вопрос по данной теме.

создано: 2015-01-11
обновлено: 2023-09-26
432



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


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

Разработка программного обеспечения и информационных систем

Термины: Разработка программного обеспечения и информационных систем