Galvojums




НазваниеGalvojums
страница3/14
Дата публикации12.07.2013
Размер0.64 Mb.
ТипРеферат
exam-ans.ru > Информатика > Реферат
1   2   3   4   5   6   7   8   9   ...   14

Kanban


Kanban – Agile методология разработки ПО, основанная в 2004 году на системе, используемой в компании Toyota. Kanban основывается лишь на трёх принципах:

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

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

  • Измерение времени цикла – измерение среднего времени на выполнение задачи вне зависимости от её сложности. На основе данной информации необходимо улучшать процесс так, чтобы время цикла было как можно меньше. [7]



Рис. 1. Пример доски Kanban
    1. Lean


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

Первый шаг для освоения бережливого мышления - понимание того, что такое ценность для потребителя, и определение действий и ресурсов, абсолютно необходимых для того, чтобы создавать ценность. Работа по выявлению того, что создает ценность, а что нет, должна быть проведена честно и беспристрастно, так как многим людям трудно признаваться в том, что их труд не добавляет ценности конечному продукту и, следовательно, создаёт потери. [8] В Lean определено 7 типов производственных потерь:

  • Перепроизводство (экстра функциональность).

  • Излишние запасы (требования).

  • Излишняя обработка (дополнительные шаги разработки).

  • Ненужные перемещения (поиск информации).

  • Выпуск дефектной продукции (дефекты, не выявленные при тестировании).

  • Ожидание (ожидание решений, ожидание клиентов).

  • Ненужная транспортировка (передача проекта, требований, знаний, развертывание систем).

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

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

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

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

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

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

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

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

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

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

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

В итеративной разработке может эффективно использоваться метод Plan-Do-Check-Act. Например, во время первой итерации переход проекта от дизайна к разработке или от разработке к тестированию может быть несколько сырым. Это нормально, так как первая итерация обеспечивает обучение проектной команды, а последующие итерации позволят команде улучшить процесс.

В некотором смысле использование итераций во время разработки ПО делает его похожим на производственный процесс, поскольку процессы разработки повторяются, что позволяет применять цикл Деминга. Появляется возможность следовать простому Plan-Do-Check-Act принципу.

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

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

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

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

Высокое качество и креативность партнеров по цепочке поставок значительно перевешивает выгоды от традиционных тендеров и частой смены поставщиков. Партнерские компании помогают друг другу улучшать дизайн продукта и их поток, объединяя системы, которые позволяют материалам двигаться точно вовремя с минимальным количеством бумаг или совсем без бумаг. Такое сотрудничество является длительным, приносящим конкретные плоды.
1   2   3   4   5   6   7   8   9   ...   14

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2015
контакты
exam-ans.ru
<..на главную