Microsoft BizTalk Server 2004 – автоматизація документообігу та інтеграція систем підприємства

В міру зростання та розвитку корпоративної інформаційної інфраструктури нерідко виявляється, що окремі її підсистеми, такі, як бухгалтерія, відділ кадрів, відділ продажів, які виросли з невеликих і, як правило, різнорідних додатків, "говорять на різних мовах", використовують різні протоколи та формати даних. Навіть якщо початково це було готове рішення, а не розроблене всередині компанії, все одно високі шанси, що програмні продукти були куплені у різних фірм і тому слабо "розуміють один одного". Група завдань, що вирішують ці проблеми, об'єднується під назвою Enterprise Application Integration (EAI) – інтеграція систем (додатків) підприємства.

Коли ж різні системи починають розуміти один одного, виникає проблема автоматизації різних процесів, від технологічних та синхронізації комунікаційних протоколів до бізнес-процесів, в першу чергу процесів документообігу (наприклад, автоматизації процесу продажу – від отримання замовлення до контролю платежу і доставки товару, оформлення і затвердження внутрішніх документів), проходження процедур ISO 9000 і т. п. Особливе значення набувають процеси ad hoc, які можуть змінюватися в ході виконання (у закордонній літературі їх також часто називають human-oriented workflow). Ця група завдань відноситься до управління бізнес-процесами, або workflow management.

Саме ці дві групи завдань – EAI і workflow management – і покликаний вирішувати BizTalk Server. Випущена недавно версія BizTalk Server 2004 забезпечує ще більш потужний, швидкий і економічне рішення, ніж її попередники, BizTalk 2002 і BizTalk 2000, які, втім, вже тоді дозволяли вирішувати багато завдань інтеграції без написання єдиної рядки коду. Статті про ці версіях BizTalk Server були опубліковані свого часу в "BYTE / Росія" (див. № 2 "2001 і № 5" 2002). Що ж нового з'явилося у версії BizTalk 2004?

У статті, присвяченій BizTalk Server 2002, в сервері суворо виділялися дві підсистеми – messaging, зайнята обробкою повідомлень, і orchestration, автоматизує процеси. Це було справедливо, оскільки підсистеми були дійсно трохи розділені (наприклад, повідомлення передавалися від однієї підсистеми до іншої за допомогою MSMQ). У BizTalk Server 2004 автоматизація формалізованих бізнес-процесів (orchestration) була повністю переписана на коді. NET (managed) та інтегрована з системою обробки повідомлень, що спростило роботу з системою і збільшило продуктивність сервера.

Істотно покращилась і підтримка автоматизованих бізнес-процесів у всіх інших частинах продукту. У їх числі повністю нові засоби розробки і опису бізнес-процесів – Orchestration Designer, інтегрований в Visual Studio, підтримка Web-сервісів в обидві сторони, потужний pub / sub-механізм маршрутизації, поліпшені засоби моніторингу виконання автоматизованих бізнес-процесів, підтримка стандартного мови опису бізнес-процесів BPEL (про це буде розказано нижче).

Значно покращений і розширюваний трекінг стану системи (Health Activity Tracking, HAT) дозволяє виявляти, відстежувати і розслідувати технічні проблеми в системі в реальному часі.

Human Workflow Services


Human Workflow Services (HWS) забезпечують підтримку ad hoc (або human-oriented) бізнес-процесів, що відрізняються тим, що вони можуть змінюватися в ході виконання. Наприклад, на певному етапі було одне завдання, а потім стало три, оскільки співробітник вирішив послати документ двом колегам на перегляд. Класичні формалізовані бізнес-процеси не дуже добре пристосовані для обліку подібних спонтанних змін, а HWS дозволяє з ними працювати.

HWS надбудована над системою виконання формальних бізнес-процесів і працює з завданнями (tasks), які часто самі є окремий формальний бізнес-процес. Використовуючи такий підхід, HWS виявилася здатна визначити багато стандартні дії, які людина може побажати зробити із завданням, – послати на перегляд, доручити виконання кому-небудь іншому, дати знати начальнику, що завдання застопорилося безрезультатно. Подібний підхід дозволяє автоматизувати досить складні сценарії документообігу – найбільш популярного виду бізнес-процесу ad hoc.

Інтерпретатор бізнес-правил BRE


Вбудований інтерпретатор бізнес-правил (Business Rules Engine, BRE) дозволяє зробити автоматизовані бізнес-процеси значно динамічніше. Припустимо, що в процесі виплати витрат на відрядження суми до 3000 рублів затверджуються однією людиною, а суми понад цей вимагають затвердження начальником і головним бухгалтером. Описати такий бізнес-процес не становить великої праці. Тепер припустимо, що правила змінилися, і всі витрати, крім ресторанів, в сумі нижче 2000 рублів затверджуються однією людиною, а витрати на ресторани завжди вимагають додаткового схвалення. Що робити? Змінювати вихідні код і перекомпілювати проект? Якби ще змінилася тільки сума, то її можна було б зробити параметром, але в цьому прикладі правило змінюється більш складним і, взагалі кажучи, непередбачуваним чином. Закласти подібну гнучкість у програму вручну практично неможливо. Для вирішення цієї проблеми і існують бізнес-правила.

Працюють бізнес-правила дуже просто. У місці автоматизованого бізнес-процесу, де приймається рішення, викликається бізнес-правило, і воно визначає, потрібен додатковий етап затвердження чи ні. До речі, виклик правил – це стандартний крок, підбираний з палітри компонентів, ніякого коду для цього писати не потрібно (див. приклад нижче). А саме бізнес-правило знаходиться в окремій базі даних, а не в програмі. Тому коли правило змінюється, його достатньо змінити в базі даних, і всі автоматизовані бізнес-процеси тут же почнуть застосовувати нове правило.

У такого підходу є і ще одна перевага – менеджмент має можливість безпосередньо бачити ті правила, які працюють в організації. Зрозуміло, що якщо правила заховані у вихідному коді, то вони практично недоступні для керівників і більшості бізнес-користувачів. BRE дозволяє їм не тільки легко перевірити, які поточні правила, але і змінити ці правила (якщо вони мають на це право), минаючи посередників у вигляді програмістів та адміністраторів системи.

Business Activity Monitoring


Business Activity Monitoring (BAM) дозволяє відслідковувати бізнес-процеси в реальному часі, так само як і використовувати OLAP-сервіс, що поставляється разом з SQL Server 2000, для більш глибокого аналізу даних. По суті BAM для бізнес-користувача – це те ж саме, що трекінг для системного адміністратора, просто збираються не технічні дані, а пов'язані з бізнесу. Ці дані відповідають на такого роду питання: "Скільки покупців зробило сьогодні замовлення?", "Скільки людей було в діловій поїздці в минулому місяці?" і т. п. А інтеграція з OLAP дозволяє застосовувати до накопичених даними методики data mining і business intelligence.

Цікавий приклад використання BAM описаний у публікації [3]. Використовуючи Microsoft BizTalk Server 2004, SQL Server 2000 Analysis Services і Windows SharePoint Services, компанія Virgin Group, найбільша мережа магазинів музичної та розважальної продукції, зуміла підняти розкриваність крадіжок у своїх магазинах на 50% вже в перший місяць використання системи. BizTalk Server відстежував роботу магазину в реальному часу, BAM передавав ці дані в OLAP-сервер, який проводив аналіз даних і при виявленні підозрілої діяльності тут же інформував менеджера магазину по електронній пошті і пейджеру.

Інтеграція з Microsoft Office


InfoPath


Додаткові зручності для бізнес-користувачів створюються за рахунок інтеграції з останньою версією Microsoft Office. Новий продукт у складі Office, InfoPath, дозволяє працювати з партнерами в форматі XML і може виконувати стосовно BizTalk Server ту ж функцію, що і Outlook по відношенню до Exchange Server (див. [4]). Заповнену форму прямо з InfoPath можна відправити у BizTalk. Звичайно, взаємодія людини і бізнес-процесу в BizTalk може здійснюватися і багатьма іншими способами – HTML-сторінка, електронна пошта, просто файл, – але InfoPath надає кілька важливих переваг.

Простота для користувача. Користувач просто відкриває документ InfoPath, заповнює його і натискає кнопку. На відміну від HTML-сторінки, можна зберегти частково заповнену форму і повернутися до неї пізніше. Користувачеві не потрібно запам'ятовувати адреси, він просто відкриває файл, який може лежати серед його типових документів і тому створюється простим вибором File / New / Select template.

Простота для розробника. Розробник форми просто готує її в InfoPath (це приблизно те ж саме, що редагувати документ у Microsoft Word) і серед іншого повідомляє, що це форма для виклику Web-сервісу. Потім він задає URL, і InfoPath сам запитує Web-сервіс про те, які дані і в якій схемі він очікує. Після цього розробник вибирає ті поля даних, які користувач повинен буде вводити, і переміщує їх мишкою в створювану форму. Документ готовий до роботи. Всі створення документа InfoPath займає буквально два-три хвилини. З точки зору розробника бізнес-процесу такий спосіб введення даних нічим не відрізняється від звичайного Web-сервісу, що означає для нього просто встановлення пари атрибутів на порте і завдання правильної схеми. До речі, всі порти для автоматизованих бізнес-процесів у BizTalk описуються на WSDL – Мові опису Web-сервісів. Зауважимо, що жодного рядка коду при цьому писати не потрібно ні на одній зі сторін.

Простота для адміністратора. Установка середнього автоматизованого бізнес-процесу займає кілька хвилин. Після цього користувачам дається документ InfoPath, і система готова до роботи. Наявність Web-сервісу дозволяє легко виявляти і запобігати використанню застарілих InfoPath-документів.

InfoPath надає могутні засоби для створення форм, які роблять цей процес менш трудомістким, ніж за допомогою HTML або інших технологій.

Найбільш вражає те, що описаний вище процес – це результат не стільки свідомої інтеграції BizTalk і InfoPath, скільки свідомої підтримки в BizTalk, Visual Studio і InfoPath таких загальних стандартів, як XSD, WSDL і SOAP.

SharePoint Services


Так само, як з InfoPath, BizTalk добре працює разом з SharePoint Services (SPS) – частиною Windows Server 2003. SPS дозволяє легко і швидко створювати внутрішні сайти, що складаються з тіпізованних елементів (Бібліотеки документів, різні списки, дошки оголошень і т. д.). Як і InfoPath, SharePoint Services дає зручний спосіб для взаємодії людини з автоматизованим бізнес-процесом, одночасно додаючи зручності Коллаборативні оточення і розподіленого доступу.

Visio


Ще одна сторона інтеграції з Office пов'язана з тим, що збережена здатність описувати бізнес-процеси в Visio, а потім використовувати документ Visio для генерації (імпорту) в Visual Studio для побудови повноцінного проекту. Хоча головним засобом для створення автоматизованих процесів у BizTalk 2004 залишається Visual Studio, можливість використання Visio корисна для бізнес-аналітиків, що мають упередження проти засобів, орієнтованих на розробників.

Visual Studio


Інтеграція з Visual Studio значно спрощує розробку проектів для BizTalk Server 2004. Для автоматизації бізнес-процесів використовується класичний графічний інтерфейс, який нагадує UML або Visio (рис. 1). Розробник просто підбирає на палітрі компонентів стандартні кроки та засоби угруповання кроків процесу, такі, як "прийняти повідомлення", "відправити повідомлення", "викликати бізнес-правило", "прийняти рішення", "транзакція", а потім вибудовує їх у проекті в графічному вигляді.

Рис. 5. Створення XML-схеми в Visual Studio за допомогою редактора XSD з BizTalk.

Інший підтримуваний стандарт – BPEL (або BPEL4WS, Business Process Execution Language for Web Services), запропонований декількома фірмами, включаючи Microsoft і IBM, спрощує взаємодію партнерів з системами інтеграції і управління процесами на різних платформах. BPEL дозволяє спільно розробити або погодити бізнес-процес або взаємодіючі бізнес-процеси, які потім будуть імплементовані з обох сторін. При цьому одна сторона може використовувати BizTalk, а інша, наприклад, IBM WebSphere. Здатність BizTalk Server 2004 імпортувати BPEL істотно спрощує таку взаємодію. Доступна і зворотна операція – експорт в BPEL опису бізнес-процесу, зробленого в Visual Studio. Вона може знадобитися, щоб поділитися стандартним описом бізнес-процесу з партнером, що використовує іншу платформу.

Що нас чекає попереду


У зв'язку з економічною ситуацією у світі в останні роки на ринку продуктів для інтеграції систем підприємства та автоматизації бізнес-процесів відбулася значна консолідація. Сьогодні в цій сфері представлено п'ять основних великих продуктів. Крім Microsoft BizTalk Server, це IBM WebSphere, BEA WebLogic, продукти webMethods і в якійсь мірі SAP XI. Враховуючи, що BizTalk Server 2004 тільки що випущений, а його попередні версії присутні на ринку вже п'ять років, легко здогадатися, що компанії Microsoft було відомо, які сторони продукту вимагали доопрацювання – як у сенсі потреб користувачів, так і в порівнянні з конкуруючими продуктами. Можна назвати, наприклад, підтримку EDI, масштабованість і пропускну здатність, підтримку ad hoc бізнес-процесів. Всі ці сторони і були вдосконалені у нинішній версії продукту.

На даний момент до найсильнішим сторонам BizTalk Server 2004 слід віднести наступні.

Малий час від створення прототипу до виробництва – Завдяки розвиненим засобам розробки та адміністрування, так само як і багатому вибору готових адаптерів для самих різних систем.

Можливість почати з невеликого рішення і потім збільшувати його в міру необхідності.

Низька вартість рішень – Ціни на BizTalk Server 2004 можна знайти на сайті http://www.microsoft.com/biztalk. Ціни конкуруючих продуктів у порівнянній комплектації часто виражаються шістьма цифрами. Але ж треба ще враховувати вартість розробки, яка у разі BizTalk Server потрібно рідше, а якщо потрібно, спирається на потужні, зручні і добре відомі засоби, такі, як Visual Studio.


Додаткова інформація


Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*