В такой кооперации могут быть заинтересованы обе стороны.
Авторы идей, передав свои идеи и теории в проекты разработки свободного ПО, получат, в конечном счете, инструмент, реализующий их идеи. При этом инструмент они получат бесплатно, при помощи данного инструмента они смогут передавать (продавать) реализацию своих идей другим людям и организациям, которым не придется платить за ПО. Например, преподаватели легко смогут передавать курсы практических занятий в другие ВУЗы. При реализации идей и теорий авторов на промышленных предприятиях последние смогут избежать расходов на приобретение ПО. Разработанное ПО можно свободно модифицировать при дальнейшем развитии идей и теорий.
Разработчики промышленного ПО, в свою очередь, получат идеи и теории, которые позволят разрабатываемому ПО приобрести качественные преимущества.
Приведем пример идеи из области процессного управления предприятием, примененной в свободном ПО.
Идея замещения исполнителей заданий при помощи специальных правил
Системы автоматизации процессного управления раздают задания исполнителям в соответствии со схемами бизнес-процессов, а также контролируют их выполнение.
Замещение исполнителей заданий используется в случаях, когда пользователь, которому предназначено задание, не имеет возможности его выполнить, — например, заболел, находится в отпуске или командировке. — Система перенаправляет задание другому пользователю.
Традиционно эту проблему решают при помощи импорта организационной структуры предприятия в систему процессного управления и использования функций замещения, основанных на положении сотрудников в административной системе управления. В некоторых системах эту проблему решают при помощи вставки программного кода, реализующего перенаправление заданий, непосредственно в бизнес-процессы.
Оба этих решения неудобны: Организационная структура предприятия является отдельной сущностью и дублировать ее в системе процессного управления нежелательно, она также используется в других системах предприятия (ERP, CRM и т.п.). В случае использования программного кода бизнес-процесс становится неудобным для модификации, для изменения замещения часто требуется привлекать программиста.
Но главное — эти решения неудобны управленцам, потому, что они не соответствует их
Идея состоит в следующем: В системе процессного управления определим набор правил замещения в качестве одного из свойств исполнителя заданий.
Реализация идеи
Идея была реализован в российском проекте разработки свободной системы управления бизнес-процессами и административными регламентами RunaWFE следующим образом:
В свойствах пользователя была добавлена возможность задавать набор правил замещения. Для конкретного пользователя правило замещения состоит из двух частей:
- Заместитель (Функция над организационной структурой предприятия, возвращающая пользователя-заместителя)
- Условие применения правила (Критерий)
На рис. 1 приведена форма задания правил замещения в свойствах пользователя
Рис. 1. Форма задания правил замещения
Для активации механизма замещения в свойствах пользователя был добавлен статус, который может принимать одно из двух значений:
- Активен
- Не активен
Механизм замещения применяется только к пользователям, имеющим статус «не активен».
Алгоритм обработки правил замещения
При формировании списка заданий исполнителя правила замещения, относящиеся к данному исполнителю, просматриваются сверху вниз до тех пор, пока либо не будет найдено первое по порядку подходящее правило замещения, в котором выполняется условие в «критерии» и заместитель имеет статус «Активен», либо будет выяснено, что ни одного подходящего правила нет.
В список заданий этого заместителя, если он будет найден, будет перенаправлено данное задание. На рис. 2 в качестве примера показан список задания пользователя Бабочкин, в который по правилу замещения перенаправлено задание пользователя Гусеницын.
Рис. 2. Перенаправленное задание в списке заданий пользователя
Практика использования показала, что идея оказалась удачной. Такой механизм замещения более удобен пользователям, чем традиционные решения.
Автор: amikheev