Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) (Массовая правка: замена |800|450}} на |800|450}} {{youtubelink|}}) |
StasFomin (обсуждение | вклад) (→Видео) |
||
== Видео == {{vimeoembed|86286438|800|450}} {{youtubelink|}}|dCfnNsHjxHg}} <!-- {{webm-oseduconf|}} --> <poll> ALTERNATIVE REVOTE UNIQUE Оцените доклад «{{PAGENAME}}»: Отлично! Хорошо. Нормально… Не очень :( Просто хочу узнать результаты. </poll> == Слайды == |
Версия 22:56, 1 ноября 2014
Содержание
Аннотация
- Докладчик
- Андрей Михеев
В последние годы программистские компании стали использовать системы управления бизнес-процессами (СУБП) при автоматизации предприятий-клиентов. В данном случае использование СУБП является не требованием клиента, а архитектурным решением: Внедрение и сопровождение оказывается быстрее и дешевле традиционной автоматизации. Эти преимущества совпадают c преимуществами парадигмы ООП относительно процедурного программирования.
Проводя аналогию, можно утверждать, что через некоторое время потребуется большое количество специалистов с процессным мышлением, заметно отличающимся от традиционного мышления ИТ-специалистов. Обучение их надо начинать уже сегодня.
В докладе представлен опыт обучения студентов элементам этой технологии на свободном ПО RunaWFE, полученный в НИТУ МИСиС, МЭСИ и УГАТУ.
Видео
Слайды
Расширенные тезисы
Преимущества процессной автоматизации
На предприятиях с устойчивыми повторяющимися цепочками операций внедрение, настройка и сопровождение систем на основе СУБП оказывается быстрее и дешевле традиционной автоматизации, при которой для различных задач и подразделений разрабатываются отдельные компоненты приложения.
СУБП позволяют:
- Быстро адаптировать разработку к изменению задач и появлению новых идей за время разработки
- Понизить стоимость разработки за счет:
- Разработки бизнес-процессов средствами СУБП вместо написания кода
- Исключение взаимодействия программистов с заказчиком. Бизнес-аналитику и заказчику гораздо более комфортно взаимодействовать друг с другом при совместной разработке основных элементов схемы исполнимого бизнес-процесса, чем заказчику и программисту при обсуждении текста технического задания
- В этом случае программист освобождается от рутинных задач и может сосредоточиться на разработке сложных графических элементов и коннекторов, что повышает эффективность его труда
- Понизить стоимость технической поддержки
- Существенно понизить стоимость доработок и сопровождения
Эти преимущества (быстрее, дешевле, легче в поддержке и сопровождении) совпадают c преимуществами парадигмы объектно-ориентированного программирования по сравнению с почти вытесненной ей из практики парадигмой процедурного программирования. Понятие парадигма рассматривается в данном случае в терминах концепции парадигм программирования Роберта Флойда [1], которая является расширением концепции парадигм Томаса Куна, предложенной в работе «Структура научных революций» [2].
Потребность в специалистах, обладающих процессным мышлением, и предлагаемые подходы к их обучению. Новая парадигма объектно-ориентированного программирования потребовала новых специалистов, обладающих мышлением, сильно отличающимся от традиционного мышления процедурных программистов. Проводя аналогию с процессной автоматизацией, можно утверждать, что активно развивающаяся в настоящее время автоматизация с использованием СУБП, после достижения некоторого уровня использования в бизнесе, потребует большого количества специалистов — бизнес-аналитиков с процессным мышлением, заметно отличающимся от мышления ИТ-специалистов по традиционной автоматизации предприятий.
Готовить этих специалистов в ВУЗах имеет смысл уже сегодня. По аналогии с обучением программированию, обучение студентов разработке бизнес-процессов можно разделить на две части:
- изучение нотаций описания бизнес-процессов и обучение работе с конкретными СУБП (аналог обучения синтаксису языков программирования и работе с конкретными компиляторами)
- изучение различных возможных вариантов реализации в виде исполнимых бизнес-процессов тех или иных типичных ситуаций в бизнесе предприятия (аналог обучения приемам программирования)
Существуют прошедшие апробацию в российских ВУЗах курсы, посвященные первой части обучения (например, в работах [3-5] обобщен опыт обучения студентов разработке исполнимых бизнес-процессов в НИТУ МИСиС, МЭСИ и УГАТУ). В соответствии с программой курса обучения студенты изучают теорию исполнимых бизнес-процессов, графические нотации описания бизнес-процессов, основные компоненты типичных СУБП, а также получают практический опыт разработки и исполнения простейших бизнес-процессов. В рамках таких курсов обучения изучаются и закрепляются на практике вопросы работы с переменными бизнес-процессов, правилами выбора маршрута движения точек управления, возможности задания сроков выполнения заданий. Разработанные бизнес-процессы студенты исполняют под разными ролями в программной среде.
Учебные курсы, посвященные приемам построения различных решений процессной автоматизации на основе исполнимых бизнес-процессов, в настоящее время еще только создаются.
Рассмотрим приемы процессной реализации нескольких типичных сценариев, которые можно использовать для обучения студентов в рамках курса процессного управления второго типа.
- Действие должно быть выполнено одновременно двумя исполнителями (например, сотрудник должен передать документ долж-
ностному лицу, или расписаться в документе должностного лица). Как правило, студенты пытаются реализовать выполнение такого сценария путем последовательного расположения двух узлов на схеме бизнес-процесса, при этом исполнителем в первом узле является сотрудник, а во втором — должностное лицо.
Однако, практика эксплуатации СУБП на предприятиях показывает, что такое решение является неудачным. Обычно подписание (пе-
редача) документа происходит на рабочем месте должностного лица. Если сотрудник отметит выполнение задания до того, как пойдет с документом к должностному лицу, то во многих случаях эта отметка о выполнении задания окажется ложной, так как у сотрудника могут случиться более важные дела и он может изменить решение пойти к должностному лицу прямо сейчас. При этом задание будет удалено из его списка заданий и он легко может забыть, что задание реально не выполнено.
Если же сотрудник сначала пойдет к должностному лицу и подпишет (отдаст) документ, то задание у должностного лица появится только после того, как сотрудник вернется на свое рабочее место и отметит выполнение задания. Это может произойти через длительное время после реального выполнения задания и должностное лицо может уже не помнить, принимал ли он документ у сотрудника. Кроме того, в момент прихода сотрудника, должностное лицо не будет уверено, должно ли оно вообще принимать документ у сотрудника, т.к. у него не будет никакого относящегося к этому задания.
Поэтому практика процессного управления выработала другое решение. На схеме бизнес-процесса узлы, в которых даются задания двум исполнителям, располагаются не последовательно, а параллельно, то есть они находятся в параллельных ветках.
- Несколько действий подряд должны быть выполнены одновременно двумя исполнителями. — Практика работы с исполнимыми
бизнес-процессами на предприятиях показывает, что роли должностных лиц (например, «Бухгалтер», или «Кассир» соответствуют «ответственным» сотрудникам, а роли «Сотрудник» или «Подавший заявку» — гораздо менее «ответственным» сотрудникам, которые могут неделями не отмечать выполнение заданий. Поэтому, в данном случае требуется так составить схему бизнес-процесса, чтобы второстепенные задания, выполняемые сотрудником, не останавливали дальнейшее выполнение бизнес-процесса. То есть, каждое такое задание должно выполняться в параллельной ветке и после него не должно происходить выполнения существенных заданий бизнес-процесса.
- Схема бизнес-процесса может соответствовать алгоритму решения некоторой задачи. Рассмотрим бизнес-процесс, реализующий игру двух участников (студента и преподавателя). Игра состоит в следующем: есть кучка в 100 камней. Игроки ходят по очереди. За один ход игрок должен взять из кучки не менее одного, но не более 9 камней. Тот, кто возьмет последний камень, является выигравшим.
Кроме реализации самой игры бизнес-процесс должен содержать систему поддержки принятия решения, которая на каждом ходе советовала бы студенту, сколько ему надо взять камешков, чтобы обыграть преподавателя. Пример схемы бизнес-процесса, реализующей игру в камешки:
- Бизнес-процесс также может представлять собой решение математической задачи. Например, в качестве задания на разработку
бизнес-процесса сильным студентам можно предложить следующую задачу: В поликлинике есть N врачей, каждый из которых выдает справку определенного вида. Для каждого врача есть набор справок, которые нужно получить до того, как прийти к нему на прием за справкой (при обращении эти справки не отдаются врачу, а только предъявляются). На приеме врач может либо выдать справку, либо отказать в ее выдаче. Если врач отказал в выдаче, то при повторных обращениях от тоже будет отказывать. Требуется разработать бизнес-процесс, который будет давать задания пациенту («обратиться к врачу») и врачам («принять пациента») который позволит пациенту получить максимально возможное количество справок в поликлинике.
- В качестве учебных задач на разработку бизнес-процессов можно формулировать студентам задачи, относящиеся к различным клас
сам математических задач: логистические задачи, задачи динамического программирования, задачи, относящиеся к теории графов и т.п. При этом части схем бизнес-процессов, реализующих эти задачи, будут представлять собой блок-схемы соответствующих математических алгоритмов.
Использование свободного ПО с открытым кодом
- RunaWFE для обучения специалистов по процессной автоматизации
Для обучения студентов процессной автоматизации в курсах [3-5] применяется свободная система RunaWFE [6]. Использование свободного ПО для обучения обладает многими преимуществами. Использование свободного ПО позволяет легко внедрить курс обучения в учебный процесс любого российского ВУЗа: ПО бесплатно, доступно в интернете на сайте проекта RunaWFE [7], для установки системы RunaWFE не требуется каких-либо ключей или лицензионных файлов. Количество инсталляций не ограничено. Установить ПО, а также выполнять и проверять с его помощью практические работы студентов можно не только в учебных классах, но и на домашних компьютерах. Разработанные бизнес-процессы можно свободно передавать в другие ВУЗы без каких-либо затрат ВУЗов на приобретение ПО. Таким образом, преподаватели могут осуществлять кооперацию при разработке учебных курсов процессного управления, а также обмениваться различными идеями, относящимися к исполнимым бизнес- процессам.
Кроме того, в случае свободного ПО, разработанные в рамках учебной или научной деятельности бизнес-процессы можно внедрить на предприятии без каких-либо расходов предприятия на покупку ПО. Также возможно участие ВУЗов в разработке и тестировании системы RunaWFE, что позволяет полнее учесть в продукте потребности данного ВУЗа.
- Литература
- [1] Флойд Р. О парадигмах программирования. В кн.: Лекции лауреатов премии Тьюринга. М: Мир, 1993
- [2] Кун Т. Структура научных революций. М.: Прогресс, 1975
- [3] Куликов Г.Г., Михеев А.Г., Орлов М.В., Габбасов Р.К., Антонов Д.В. Изучение методологии BPMN на примере программного продукта RunaWFE. Лабораторный практикум по дисциплине «Автоматизированные информационные системы в производстве» и «Автоматизированные информационные системы в экономике». — Уфа. УГАТУ. 2010
- [4] Пятецкий В.Е, Михеев А.Г., Новичихин В.В. Система управления бизнес-процессами: основы разработки бизнес-процессов с помощью свободного программного обеспечения: практикум — М.: Изд. Дом МИСиС, 2013.
- [5] Михеев А.Г. Процессное управление на свободном программном обеспечении», — http://www.intuit.ru/studies/courses/2358/658/info
- [6] Михеев А.Г., Орлов М.В. Система управления бизнес-процессами и административными регламентами. // Программные продукты и системы, № 3 2011
- [7] Ссылка на сайт проекта RunaWFE: http://wf.runa.ru/