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

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

Archive for August 2010

Сторонний инструментарий для BPMS

Я часто использую аналогию между системами управления базами данных (DBMS) и бизнес-процессами (BPMS):

  1. Когда-то давным-давно компьютерные программы состояли из одних алгоритмов.
  2. Потом в какой-то момент выяснилось, что алгоритмы и данные - это разные сущности. Профессор Вирт написал свою знаменитую книгу “Алгоритмы и структуры данных”, и появилось понимание, что для работы с данными нужен специальный инструментарий. Возник новый класс программного обеспечения под названием DBMS.
  3. Аналогичным образом, в какой-то момент появилось понимание того, что процесс лучше не сводить к алгоритмам или данным, а рассматривать как самостоятельную сущность, требующую специального инструментария. Так появились BPMS.

Теперь вспомним, как прогрессировали пользовательские интерфейсы к базам данных:

  1. Вначале каждая DBMS поставлялась со своим собственным инструментарием. Например, Informix 4GL для СУБД Informix или Oracle Forms для СУБД Oracle.
  2. Затем стали появляться универсальные инструменты, позволяющие работать с различными СУБД. Например, в 80-е Unify создал Accell 4GL, функционально очень близкий с Informix 4GL и Oracle Forms, но отличавшийся от них тем, что мог работать и с собственной СУБД Unify, и со всеми ведущими на тот момент СУБД: Informix, Oracle, Sybase. На этом этапе универсальность достигалась просто: поставщик встраивал в свой продукт поддержку той или иной СУБД. Преимущество, которое получал клиент: с таким инструментарием он мог безболезненно сменить СУБД. И это не абстракция: так, Сбербанк в свое время смог сменить СУБД Unify на Oracle, безболезненно перенеся миллионы строк кодов, написанных на Accell. Причем если бы даже Сбербанк сразу сделал ставку на Oracle, то и в этом случае у него были бы сейчас серьезные проблемы, так как, в отличие от Unify, который продолжает исправно выпускать для Accell новые версии, Oracle прикрыл Forms. (Повторяю, речь идет о прикладной системе масштабом многих миллионов строк исходного кода.)
  3. В конце концов появился поставщик инструментария настолько мощный, что он сумел заставить поставщиков СУБД стандартизировать программные интерфейсы: Microsoft предложил ODBC. Потом JDBC пошел уже по накатанной дорожке. Поставщикам СУБД пришлось на это пойти, чтобы не оказаться на обочине, но они делают все, чтобы их собственные проприетарные интерфейсы оставались более быстрыми или предоставляли доступ к нестандартным расширениям данной конкретной СУБД. Поэтому не является чем-то необычным инструментарий, который поддерживает, скажем, Oracle и MS-SQL по их собственным протоколам, а всех остальных - по ODBC.

Хотя Microsoft Studio и Oracle JDeveloper достаточно популярны, множество приложений для СУБД от Microsoft и Oracle разрабатывается не на них, а на Delphi, PHP и бог знает чем еще. Так что большинство прикладных разработчиков предпочитает вариант 3.

Как же обстоит дело с интерфейсами к BPMS? Очевидно, они сейчас находятся на шаге 1, и это печально.

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

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

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

По функциональности такой продукт должен поддерживать:

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

А вы воспользовались бы таким инструментом? Или он уже есть, а я просто отстал от жизни? Или вы собираетесь, или уже разрабатываете что-то подобное?

И снова здравствуйте!

Как известно, все хорошее рано или поздно заканчивается. Но наша передача мой блог - нет!

А что долго не писал - так лето ведь. Отпуск, моря… Заинтересованным лицам сообщаю: в Севастополе открылся новый музей в помещении Михайловского равелина (так его почему-то называют, хотя по-настоящему это батарея).

Рекомендую - экспозиция, собранная частными (!) коллекционерами, не уступает экспозиции Музея Черноморского флота в Севастополе.

На 35-й батарее (это уже про вторую оборону) тоже много сделано, и водят интересные экскурсии.

К тому же появилось новое увлечение: яхтинг. В мае прошел теорию, в июне - недельную практику в водах Сицилии:

Теперь я дипломированный шкипер:

Спасибо Национальной ассоциации шкиперов RAYS и отдельное большое спасибо инструктору Владимиру Ватрунину. Правда шкипер я пока номинальный, а чтобы стать настоящим, надо набирать практику. Поэтому запланировал походы в воды Хорватии и Таиланда. Так что если мобильный отвечает “абонент недоступен”, то возможно, я в данный момент в двадцати милях от берега.

Вот такая получилась пауза. Отчасти из-за отвлечений, отчасти потому, что устал. Не знаю как кому, а мне писательство дается тяжело. Способов два: либо выдавливать из себя слово за словом и как-то соединять их в предложения, но тогда получается натужно.

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

Спасибо всем, кто высказал слова поддержки. Пока вам мои мысли интересны и полезны, буду продолжать.

27.08.10 | Прочее |     Комментарии: закрыто

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