Пробные занятия. Бесплатно!
Приглашаем всех желающих посетить бесплатные пробные занятия по курсам МВА и профессиональной подготовки. Занятия проходят в реальных группах, никаких постановочных занятий. Ознакомиться с расписанием пробных занятий, выбрать заинтересовавшее и зарегистрироваться на него можно здесь


Бережливая разработка программного продукта на примере виртуальной службы знакомств

Смирнов И.В.
выпускник группы MBA CIO-43
Школа IT-менеджмента
РАНХиГС при Президенте РФ

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

В дипломной работе рассматривается уже зрелая компания с уже существующим продуктом. Стартапы остаются за рамками данной работы.

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

На фоне стагнации рынка виртуальных знакомств база пользователей продуктов компании ЗАО «Мамба» количественно не растет. Ситуацию усугубляют новые конкурирующие мобильные приложения, которые в последнее время стали появляться чаще.Компании необходимо как-то удерживать свои лидирующие позиции на рынке. Для этого ей нужно занимать рыночные ниши новыми мобильными приложениями и развивать на международном рынке свои продукты. При этом, высокая скорость вывода на рынок продукта и его обновлений может оказаться ключевым конкурентным преимуществом. Этого можно достичь с помощью эффективного использования имеющихся в распоряжении компании технических и трудовых ресурсов, а также используя частую поставку обновлений и обратную связь от потребителей для совершенствования продуктов.

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

В 1990 году выходит книга Джеймса Вумека, Дэниела Джонса и Дэниела Руса «Машина, которая изменила мир», в которой приводятся доказательства того, что японские автомобильные компании существенно превосходят своих европейских конкурентов. При этом показатели японских производителей были выше в 2-10 раз. Данная книга положила начало настоящей революции в автомобильной промышлености. Именно в этой книге был введен термин «бережливое производство», суть которого «делать больше при помощи меньшего». Авторы книги описали производственную систему, которая была дешевле, быстрее и лучше, чем у конкурентов. Она требовала меньше места, меньше запасов, и меньше рабочего времени. В книге рассказывается о бережливом предприятии, включающем маркетинг, разработку и производство продукции.

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

В 2003 году Мэри и Том Поппендик в своей книге «LeanSoftwareDevelopment: AnAgileToolkit» адаптируют бережливую разработку и производство продукции к индустрии программного обеспечения. Авторы выявили виды потерь и сопоставили их с классическими видами потерь «бережливой философии», сформулировали принципы бережливой разработки программного обеспечения. Их работа помогла понять в чем заключается ценность программного обеспечения для потребителя и увидеть поток создания этой ценности для дальнейшего повышения его эффективности.

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

Деятельность по созданию любого продукта состоит из следующих этапов:

1.Сбор и анализ требований

2.Проектирование

3.Разработка

4.Тестирование

5.Функционирование

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

Эффективность потока = Время обработки / Время производственного цикла

 

·Время производственного цикла (ВПЦ) – время прохождения проекта по всему потоку создания ценности;

·Время обработки (ВО) – общее время выполнения работ без учета нахождения в очередях ожидания.

 

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

Самое интересное – анализ и результаты его проведения - представлены в четвертой главе. Здесь описаны бесплатные и платные виртуальные услуги компании, жизненный цикл разработки в соответствии со стандартом ГОСТ Р ИСО/МЭК 12207-2010.

Для определения текущего состояния деятельности по разработке программного обеспечения в компании была проанализирована реализация проекта виртуальной услуги «Фотолинейка». Общий срок реализации проекта, рассчитанный при проектировании, составил 176 рабочих часов. Но из-за переключения разработчиков на более приоритетные задачи и в результате возникающих блокировок задач проекта «Фотолинейка», а также дефектов и несоответствий требованиям, которые были выявлены на этапе тестирования, срок реализации проекта без учета простоев в очередях подразделений растянулся до 322 рабочих часов, а с учетом простоев в очередях 722 рабочих часа. Текущая эффективность потока составила:

Текущая эффективность потока = 322 часа / 722 часа = 44%

Факторами потери эффективности стали:

  • Выполнение подразделениями более приоритетных задач;
  • Простои задач в очередях подразделений;
  • Исправление дефектов и несоответствий требованиям, выявленных на этапе тестирования;
  • Повторное тестирование исправленных дефектов и несоответствий требованиям;
  • Ожидание в очереди на развертывание в производственную среду.
  • Главным шагом к бережливой разработке является переход от выталкивающей системы разработки, основанной на неограниченном объеме выполняемой работы и частом пересмотре приоритетов задач в очередях каждого подразделения, к вытягивающей системе разработки.Вытягивающая система разработки – это такая система разработки, в которой объем работы, находящейся в производстве, определенным образом ограничен. Объем работы и производительность компании в такой системе согласованы.Переход к вытягивающей системе поможет выявить и значительно сократить большинство потерь. Также необходимо регулярно предотвращать появлениеследующих видов потерь:

  • Частично выполненная работа;
  • Избыточные функциональные возможности;
  • Повторное приобретение знания;
  • Передача работы;
  • Переключение между задачами;
  • Задержки;
  • Дефекты.
  • И следовать принципам бережливой разработки программного обеспечения:

    1.Ликвидировать потери;

    2.Встраивать качество;

    3.Создавать знание;

    4.Откладывать необратимые решения;

    5.Доставлять быстро;

    6.Уважать людей;

    7.Оптимизировать целое.

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

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

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

    Основным источником потерь в разработке программного обеспечения являются запасы в виде частично выполненной работы (незавершенного программного кода). Данный вид потерь является причиной большинства остальных видов потерь.

    Также в четвертой главе проанализирована производительность компании, ее узкие места. На основе полученных данных разработано будущее состояние карты потока создания ценности. А в завершении четвертой главы выявлены причины всех 7 видов потерь и составлен их рейтинг.

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

    Таблица 1

    Причины потерь и инструменты их устранения

    Причина

    Инструменты ее устранения

    1

    Ожидание действий других участников проекта

    Командная работа

    Ограничение объема выполняемой работы

    Постоянный объем работы

    Визуальное управление

    2

    Чрезмерная загруженность исполнителя

    Командная работа

    Ограничение объема выполняемой работы

    Постоянный объем работы

    3

    Переключение на более приоритетные задачи

    Ограничение объема выполняемой работы

    Постоянный объем работы

    Измерения

    4

    Нехватка информации по проекту

    Командная работа

    Wiki

    Автоматически генерируемая документация

    5

    Участие исполнителей одновременно в нескольких проектах

    Ограничение объема выполняемой работы

    Постоянный объем работы

     

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

    В разделе «обобщение» подобраны инструменты для устранения потерь и даны рекомендации по совершенствованию деятельности компании по разработке программного обеспечения.

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

    Будущая эффективность потока = 320,25 часа / 385,25 часа = 83%

     

    Таблица 2

    Первые шаги по реорганизации системы процессов компании

    Задача

    Инструмент

    1

    Обеспечить частые поставки функциональности продукта (несколько раз в день)

    Непрерывное развертывание

    2

    Уменьшить долю ручного тестирования за счет его автоматизации

    Разработка через тестирование, приемочные тесты

    3

    Обеспечить единые архитектурные решения

    Концептуальное единство, экспертиза программного кода

    4

    Повысить читаемость и восприятие программного кода

    Стандарты кодирования, рефакторинг

    5

    Оперативно реагировать на возникающие проблемы

    Визуальное управление

    6

    Сохранять знания и обеспечить их общедоступность

    Автоматически генерируемая документация

    7

    Исключить перегруженность разработчиков и тестировщиков работой

    Измерения производительности

    8

    Исключить частое переключение между задачами

    Постоянный объем работы

     

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

    Голосов пока нет
    Школа IT-менеджмента Экономического факультета АНХ, 119571, Россия, г. Москва, проспект Вернадского, д. 82 корп. 2, офис 207, тел.: +7 (495) 933-96-00, Copyright @ 2008-2009