Главное не результат, главное процесс

BPM-блог Анатолия Белайчука

Archive for December 2008

Очень стильная презентация

Можно ли уложить 100 слайдов в 10-минутную презентацию? А вот проверьте: http://blog.gardeviance.org/2008/10/gang-up-now-before-aas-cloud-gets-you.html

Речь в презентации идет об относительно новых концепциях SaaS и Cloud Computing, но вы получите удовольствие, даже если вам нет никакого дела до этих материй. Обожаю когда серьезные вещи излагаются не суконным языком, а в артистическом стиле. Хотел бы я уметь так делать презентации: великолепный язык, креативный видеоряд и при этом четкая логика и полезная информация.

Что еще может ИТ?

Как-то сидя на лекции Переслегина и слушая его пророчества - апокалиптические, но все же при этом каким-то непонятным образом оптимистические - задал себе вопрос, который теперь меня не отпускает: а что по-крупному даст наша отрасль в обозримом будущем? Скажем, в ближайшие 10-20 лет (ближе загадывать неинтересно, дальше - бесполезно)? ”По-крупному” - имеется в виду такого, что бы всерьез изменило нашу жизнь.

Оглядываясь назад, таких вещей за прошедшие 50 лет не так уж и много наберется:

  1. Мобильные телефоны - бесспорно. Как мы раньше без них встречи назначали? А если еще в незнакомом месте - вообще мрак.
  2. Интернет: паутина, почта, социальные сети, дистанционное обучение и т.д. (Или интернет на первом месте? Ладно, неважно.)
  3. Компьютерное проектирование, станки с ЧПУ, роботизированное производство. Где-нибудь еще пользуются кульманами?
  4. Бухгатерские программы - пожалуй, тот объем работы, который они сейчас делают, люди вручную уже и не осилят.
  5. Компьютерные игры. Изменили сознание уже не одному поколению - засчитываем однозначно.
  6. Навигатор в кармане - с натяжкой. Это скорее все же космос, чем компьютер.
  7. Всяческие базы данных, хранилища нужных и ненужных документов? Опять-таки с натяжкой. Иногда кажется, что можно было бы и без них обойтись.
  8. Глобальные финансы, биржи и т.п. Неочевидно. Ну да, по компьютерным проводам быстрее чем по телеграфу, но так ли это принципиально?
  9. Автоматический перевод. Уже практически состоялся. Литературного перевода от компьютера ждать не надо, но уже сейчас американцы читают русские или китайские сайты и понимают что там написано.
  10. Вещи в быту незаметные, но которые не стоит недооценивать: оружие. Хотя вояки на удивление мало взяли от ИТ. Системы наведения, криптография, “эшелоны” всякие… и все, что ли?

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

ОК, вернемся к исходному вопросу: что в будущем? Квантовые компьютеры? Искусственный интеллект? Виртуальная реальность? Микро-роботы для медицины и для войны? Как-то это все я неотчетливо себе представляю. Поэтому вот мой прогноз:

1. Машина времени

Правда, только одностороннего действия. Смотрите: если устройства хранения информации будут прогрессировать тем же темпом, то через 15 лет на одном винте уже будет помещаться петабайт информации. Далее, камеры видеонаблюдения уже на каждом углу: на улице, в офисах и домах. Осталось дело за малым: завязать их все в единую сеть хранения видеоинформации и разработать софт, который сможет отслеживать перемещение какого-либо объекта во времени и в пространстве.

Нечто подобное всплывало в материалах по расследованию терактов в Лондоне - но очевидно, пока это делается вручную. А если довести до ума, то, во-первых, легче будет бороться с преступностью. А во-вторых, это дело можно коммерциализировать - например, разве не интересно посмотреть кино “как я гулял по Флоренции прошлым летом”?

Кстати, можно совместить одно с другим: представьте себе тысячи добровольных Шерок-Холмсов, сидящих дома и выслеживающих, скажем, угонщика машины. Опять-таки, нечто подобное уже делается: в Штатах гражданам предложили стать виртуальными рейнджерами - следить за мексиканской границей со своего компьютера и докладывать властям о нарушениях. Желающих будет более чем достаточно. А что - все лучше, чем шпионить за соседями в окошко.

2. Всеобщая идентификация

RFID уже проникают в нашу жизнь, а в перспективе - каждая тряпка что на нас надета, каждая мелочевка на нашем столе будет способна ответить: “это я!”. (Читали у Лема: “это мы, опилки!”?) А если теперь это совместить с глобальными сетями, базами данных и односторонней машиной времени - вот тут-то матрица нас поимеет по полной!

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

Странно что до сих пор RFID не встроили в банкноты. Думаю, уже скоро. Так исчезнет последний островок свободы - наличные деньги. Должно быть, найдутся достаточно влиятельные люди, которым это придется не по вкусу, но и они смогут только оттянуть момент.

3. Распознавание речи

Реально полезная вещь, и вроде уже решение близко. А то записывать научились, но ведь прослушивать записи - это мучение, а расшифровывать - еще хуже. Вот у нас в институте лекции по матану читал Кудрявцев - один-в-один по своему учебнику. Ну и смысл ходить на лекции? Я быстро понял, что учебник читаю раз в 5 быстрее.

Вот сейчас сижу, стучу по клавиатуре, наживаю себе артроз. Нафига, спрашивается? Лучше бы я сидя в массажном кресле надиктовал, а потом поправил текст в редакторе.

Конечно, в результате, как сейчас молодое поколение (да и не только они) предпочитает аудиокниги, так следующее разучится уже и писать. Но зато риторика расцветет, и люди снова научатся говорить.

4. Смерть шахмат

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

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

Анти-паттерн: “Оркестровка сквозного процесса”

Определение:

  • Процессом масштаба предприятия (”enterprise process”) или, что то же самое, сквозным (”end-to-end process”) называется бизнес-процесс, замкнутый по входу и выходу на внешнего заказчика и проходящий через более чем одно подразделение верхнего уровня.

Аксиома:

  • Инициатива BPM окупится только если вы беретесь за сквозные процессы.

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

Типичные ошибки:

  1. BPM-вендоры любят иллюстрировать возможности своих продуктов на вспомогательных процессах типа “Прием на работу” или “Отчет о командировочных расходах” и тем самым провоцируют заказчиков заниматься тем же самым. Для тренировки сгодится, но за подобными процессами просто слишком мало денег, чтобы оправдать затраты на проект масштаба компании. А иным проект BPM не может быть по определению.
  2. Половина потенциальных клиентов предлагает заняться процессом “Заключение договора”. Тут с ценой вопроса все в порядке, но это, как бы сказать, не вполне процесс. Правильнее рассматривать его как фрагмент сквозного процесса “Продажа товара/услуги”. Ведь заказчика интересует конечный результат, т.е. показатели процесса в целом, и не факт, что именно этот фрагмент процесса критичен. (Такое сужение “рамки” и называется субоптимизацией.)
  3. И совсем тяжелый случай: “Вот у нас тут есть процесс, мы его хорошо знаем и уже автоматизировали, давайте для сравнения сделаем его в BPM.” То есть давайте устроим соревнование лучшего с хорошим. Если вы хотите, чтобы ваш проект оценило руководство, вы обязаны не просто реализовать какой-то процесс в BPM, но добиться в результате этого существенного улучшения его показателей. Врядли вы этого добьетесь на процессе, с которым уже основательно поработали.

Итак, будем считать, что мы все делаем правильно и взялись, скажем, за процесс “От заказа до оплаты” - классический пример сквозного процесса. (Хорошие вопросы - почему именно этот процесс и как выбрать самый подходящий из множества процессов компании - но они заслуживают отдельного развернутого ответа, так что об этом в другой раз.)

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

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

В чем изъян подобной схемы? В ней неявно предполагается (поскольку на диаграмме присутствует только один пул), что производство работает синхронно с продажами: пока нет клиентского заказа, производство стоит в ожидании, есть заказ - начинает его выполнять. В свою очередь, если детализировать производство, то в нем появится приобретение материалов и комплектующих - теперь уже синхронизованное с производством.

Но бизнес не работает по принципу “раз-два-три”!

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

Технически такая схема работы реализуется не одним синхронным, как на приведенной диаграмме, а несколькими асинхронно исполняемыми процессами, которые обмениваются друг с другом данными и/или сообщениями. Такую схему можно нарисовать в BPMN и исполнить средствами BPMS, и на мой взгляд, это - коренное преимущество BPMS от традиционных систем workflow. Но подробнее о правильной схеме - в следующий раз, а пока замечу, что асинхронность характерна не только для рассматриваемого, а вообще для сквозных бизнес-процессов.

Определения:

  • Последовательность и логика выполнения задач в рамках одного процесса называется оркестровкой (”process orchestration”).
  • Логика асинхронного, координируемого при помощи сообщений выполнения нескольких процессов называется хореографией (”process choreography”).

Теорема:

  • Сквозные бизнес-процессы моделируются хореографией, а не оркестровкой.

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

Часто встречающиеся попытки ограничиться в подобных задачах оркестровкой являются ничем иным, как использованием анти-паттерна, который я называю “Оркестровка сквозного процесса”.

Много ли процессов в ваших BPM-проектах?

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

Вообще-то я всегда считал, что BPM - это для тех, у кого “ERP уже есть, а счастья еще нет”. Но выяснилось, что во-первых, компаний, достигших нирваны полной автоматизации, как-то не видно. А во-вторых, продвинутые компании не желают автоматизировать то, что у них еще не автоматизировано, традиционными методами, а хотят сразу заложить в свою недостающую функциональность процессную составляющую. Я был бы последним, кто стал бы их в этом упрекать, но в итоге мы попадаем в проекты, в которых “в нагрузку” к процессной составляющей идет приличный кусок разработки более-менее традиционных корпоративных приложений. И большую часть времени наши разработчики и аналитики тратят не на бизнес-процессы, а на эти приложения! В принципе ничего страшного - мы этим занимаемся больше 15 лет - просто скучноватое это занятие по сравнению с работой над бизнес-процессами.

И на форуме sql.ru помнится были высказывания в таком духе, что мол BPMS - не панацея, потому что “все равно до фига руками делать”.

Но вот сегодня мне пришла в голову мысль: а чего, собственно, расстраиваться по этому поводу? Дело-то просто в том, что при помощи BPMS процессная часть задачи решается играючи, а остальной объем работы каким был, таким и остался. Представим на минуточку, что мы решаем те же две составные части задачи - процессную и традиционную - но без BPMS. Объем работы над процессной частью увеличится в разы, и баланс изменится.

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

Вывод: не столько с BPMS хорошо, сколько без него плохо!

Семинар по BPM для аудитории UML2.ru

Коллеги с дружественного ресурса UML2.ru проявляют все больший интерес к теме BPM. Причем интерес специфический - идущий не от ИТ-шника, что встречается чаще, а аналитика.

Как известно, концепция BPM существенно меняет стиль взаимодействия бизнеса и ИТ, а значит, и деятельность аналитика - ведь именно эта фигура обычно осуществляет коммуникации на границе между теми и другими. Отсюда возникла идея такого специального семинара - не столько о BPM и BPMS вообще (честно, на эту тему выступать надоело уже до чертиков), сколько об анализе в парадигме BPM. (А BPM - это именно парадигма, о чем будет сказано отдельно.) Наверное проведу небольшую демонстрацию BPMS в действии - почему это нужно см. в предыдущей заметке.

Была еще идея разобрать какой-нибудь кейс, но это наверное будет перебор - столько материала в один семинар не вложить. К тому же разборы кейсов, по задумке, должны стать содержанием семинаров под эгидой BPMS.ru, идея которых там сейчас активно обсуждается.

Дата: четверг 18.12, время: с 18:00 до 21:00, адрес: Покровский бульвар. Доступ открытый и бесплатный, но внимание: при условии заблаговременной регистрации. Все подробности и регистрация - на livents.ru.

Уровни процессного мышления

Брюс Силвер обубликовал в своем блоге заметку о трех уровнях BPMN: “BPMN’s Three Levels, Reconsidered“. (Это продолжение темы, начатой ранее: “Three Levels of Process Modeling with BPMN“.) Исходя из своего двухлетнего опыта преподавания BPMN, Брюс замечает, что многие студенты (чуть ниже он даже говорит о “большинстве”) просто хотят документировать, анализировать и усовершенствовать свои процессы и не интересуются исполняемыми моделями. Брюс называет это первым уровнем использования BPMN. Второй уровень охватывает также моделирование потока заданий, пригодное для непосредственного исполнения внутри BPMS, включая логику переходов, исключения, события, пересылку сообщений (процессная хореография подразумевается, хотя и не упоминается).

Но проблема ли это BPMN?

Мне нравится фраза на обложке новой книги Марка МакГрегора “Winning With Enterprise Process Management” (свободно скачивается на markmcgregor.com):

…процессное мышление принимает разные формы: BPM, непрерывное усовершенствование процессов, шесть сигм, бережливые шесть сигм, реинжиниринг бизнес-процессов и другие…

Марк прав: дело в мышлении. В процессном мышлении. В разных видах процессного мышления, чтобы быть точными.

Помните время, когда объетно-ориентированное программирование еще только изобрели? Было замечено, что дело не в языках программирования. Если вы ухватили идею, вы можете писать объектно-ориентированные программы хоть на Фортране (и кое-кто это делал, когда еще не было приличных компиляторов C++). И конечно можно писать на 100% функциональный код на C++ (что многие и делают).

Также в это время было замечено, что гораздо легче научить C++ новичка, чем опытного программиста на C. Причина заключалась в том, что в первом случае речь идет об инсталлировании определенного мышления (в данном случае объектно-ориентированного), а во втором - о смене типа мышления. Последнее оказалось намного труднее.

Сейчас я сталкиваюсь с абсолютно тем же у тех, кто пытается понять что такое BPMN (BPM, BPMS - не важно). Те, кто занимается бизнес-процессами годами и накопили опыт в реинжиниринге, ISO9000 и т.п., не могут взять в толк - что такого крутого в исполняемых моделях процессов? Они всегда считали, что исполнение - это “детали реализации”, что-то о чем должны беспокоиться ИТ-шники. Некоторые из них приходят в настолько сильное раздражение, что говорят или пишут, что в BPM нет ничего нового, что это чистый маркетинг, что это “зонтичная концепция” и т.д.

Напротив, студенты и начинающие консультанты приходят в восторг от возможностей, открываемых этой концепцией. Когда вы просто рисуете диаграмму процесса, вы можете нарисовать десяток - все будут правильными, и все разными. Это неправильно. Когда включается исполнение - даже в простейшем виде, с автоматически генерируемыми экранами и без всякой интеграции - вы начинаете иметь дело не с диаграммами, а с единственно-правильной диаграммой. Аналитик больше не имеет возможности нарисовать несостоятельную диаграмму: если он это делает, диаграмма возвращается к нему от разрабочика со словами “к сожалению, в таком виде исполнить нельзя, пожалуйста исправьте”.

Возвращаясь к теме тренинга BPMN - Брюс использует для своих занятий Process Modeler for Microsoft Visio by itp commerce. Это могло бы быть отличным выбором - высокая степень совместимости с BPMN, богатые возможности имитационного моделирования (simulation) - но в нем нет исполнения. А объяснить что такое исполнение при помощи слов и слайдов невозможно - это надо видеть.

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

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

Я это сделал!

Свершилось. Я обзавелся блогом. Кто такой “я” и про что блог - смотри тут и тут.

А прямо здесть - пара слов по свежим следам на тему чего мне это стоило. Начну с конца: на все - про все ушло 4 дня. Два на дизайн, два - на кастомизацию вордпресса.

Хотя дизайн - это наверное не про этот сайт. Лучше скажу “на верстку”. Я хотел добиться (и добился) того, чего не нашел ни в одном из готовых шаблонов вордпресса:

  • кроссбраузерности (и в частности, нормальной работы в IE6)
  • “резиновой” верстки
  • переменных шрифтов

Этого требует юзабилити, как я ее понимаю. Охотно допускаю, что профессиональный дизайнер считает ровно наоборт: что слово “дизайн” можно употреблять только если все выглядит строго так, как решил дизайнер. Что автоматически означает фиксированную верстку и шрифты.  Так юзабилити приносится в жертву дизайну.

» читать дальше

Copyright © 2008-2010 Анатолий Белайчук. Спасибо Wordpress и Yahoo.  Контент  Комментарии