Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014) — различия между версиями

Материал из 0x1.tv

(Слайды)
(нет различий)

Версия 13:55, 15 февраля 2014

Аннотация

Докладчик
Андрей Михеев.jpg
Андрей Михеев

В последние годы программистские компании стали использовать системы управления бизнес-процессами (СУБП) при автоматизации предприятий-клиентов. В данном случае использование СУБП является не требованием клиента, а архитектурным решением: Внедрение и сопровождение оказывается быстрее и дешевле традиционной автоматизации. Эти преимущества совпадают c преимуществами парадигмы ООП относительно процедурного программирования.

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

В докладе представлен опыт обучения студентов элементам этой технологии на свободном ПО RunaWFE, полученный в НИТУ МИСиС, МЭСИ и УГАТУ.

Видео

Оцените доклад «Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014)»:

  •  Отлично!
  •  Хорошо.
  •  Нормально…
  •  Не очень :(
  •  Просто хочу узнать результаты.


Слайды

Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf Использование свободного ПО в учебном процессе - разработка, внедрение, методика преподавания (Андрей Михеев, OSEDUCONF-2014).pdf

Расширенные тезисы

Преимущества процессной автоматизации

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

СУБП позволяют:

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

Эти преимущества (быстрее, дешевле, легче в поддержке и сопровождении) совпадают c преимуществами парадигмы объектно-ориентированного программирования по сравнению с почти вытесненной ей из практики парадигмой процедурного программирования. Понятие парадигма рассматривается в данном случае в терминах концепции парадигм программирования Роберта Флойда [1], которая является расширением концепции парадигм Томаса Куна, предложенной в работе «Структура научных революций» [2].

Потребность в специалистах, обладающих процессным мышлением, и предлагаемые подходы к их обучению. Новая парадигма объектно-ориентированного программирования потребовала новых специалистов, обладающих мышлением, сильно отличающимся от традиционного мышления процедурных программистов. Проводя аналогию с процессной автоматизацией, можно утверждать, что активно развивающаяся в настоящее время автоматизация с использованием СУБП, после достижения некоторого уровня использования в бизнесе, потребует большого количества специалистов — бизнес-аналитиков с процессным мышлением, заметно отличающимся от мышления ИТ-специалистов по традиционной автоматизации предприятий.

Готовить этих специалистов в ВУЗах имеет смысл уже сегодня. По аналогии с обучением программированию, обучение студентов разработке бизнес-процессов можно разделить на две части:

  • изучение нотаций описания бизнес-процессов и обучение работе с конкретными СУБП (аналог обучения синтаксису языков программирования и работе с конкретными компиляторами)
  • изучение различных возможных вариантов реализации в виде исполнимых бизнес-процессов тех или иных типичных ситуаций в бизнесе предприятия (аналог обучения приемам программирования)

Существуют прошедшие апробацию в российских ВУЗах курсы, посвященные первой части обучения (например, в работах [3-5] обобщен опыт обучения студентов разработке исполнимых бизнес-процессов в НИТУ МИСиС, МЭСИ и УГАТУ). В соответствии с программой курса обучения студенты изучают теорию исполнимых бизнес-процессов, графические нотации описания бизнес-процессов, основные компоненты типичных СУБП, а также получают практический опыт разработки и исполнения простейших бизнес-процессов. В рамках таких курсов обучения изучаются и закрепляются на практике вопросы работы с переменными бизнес-процессов, правилами выбора маршрута движения точек управления, возможности задания сроков выполнения заданий. Разработанные бизнес-процессы студенты исполняют под разными ролями в программной среде.

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

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

  • Действие должно быть выполнено одновременно двумя исполнителями (например, сотрудник должен передать документ долж-

ностному лицу, или расписаться в документе должностного лица). Как правило, студенты пытаются реализовать выполнение такого сценария путем последовательного расположения двух узлов на схеме бизнес-процесса, при этом исполнителем в первом узле является сотрудник, а во втором — должностное лицо (См. Рис. 2).

Однако, практика эксплуатации СУБП на предприятиях показывает, что такое решение является неудачным. Обычно подписание (пе- редача) документа происходит на рабочем месте должностного лица. Если сотрудник отметит выполнение задания до того, как пойдет с документом к должностному лицу, то во многих случаях эта отметка о выполнении задания окажется ложной, так как у сотрудника могут случиться более важные дела и он может изменить решение пойти к должностному лицу прямо сейчас. При этом задание будет удалено из его списка заданий и он легко может забыть, что задание реально не выполнено.

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

Поэтому практика процессного управления выработала другое решение. На схеме бизнес-процесса узлы, в которых даются задания двум исполнителям, располагаются не последовательно, а параллельно, то есть они находятся в параллельных ветках (см. Рис. 2)

  • Несколько действий подряд должны быть выполнены одновременно двумя исполнителями. — Практика работы с исполнимыми

бизнес-процессами на предприятиях показывает, что роли должностных лиц (например, «Бухгалтер», или «Кассир» соответствуют «ответственным» сотрудникам, а роли «Сотрудник» или «Подавший заявку» — гораздо менее «ответственным» сотрудникам, которые могут неделями не отмечать выполнение заданий. Поэтому, в данном случае требуется так составить схему бизнес-процесса, чтобы второстепенные задания, выполняемые сотрудником, не останавливали дальнейшее выполнение бизнес-процесса. То есть, каждое такое задание должно выполняться в параллельной ветке и после него не должно происходить выполнения существенных заданий бизнес-процесса. Пример правильного построения схемы бизнес-процесса представлен на Рис. 3.

  • Схема бизнес-процесса может соответствовать алгоритму решения некоторой задачи. Рассмотрим бизнес-процесс, реализующий игру двух участников (студента и преподавателя). Игра состоит в следующем: есть кучка в 100 камней. Игроки ходят по очереди. За один ход игрок должен взять из кучки не менее одного, но не более 9 камней. Тот, кто возьмет последний камень, является выигравшим.

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

  • Бизнес-процесс также может представлять собой решение математической задачи. Например, в качестве задания на разработку

бизнес-процесса сильным студентам можно предложить следующую задачу: В поликлинике есть 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/

Примечания и отзывы