«Точечная застройка» и «промышленные» решения

В отечественной сфере бизнес-приложений существует одно, на мой взгляд, достаточно неприятное заблуждение, связанное с так называемыми «промышленными» решениями. Заблуждение это состоит в том, что предпочтение надо отдавать не заказной разработке программного обеспечения, а готовым решениям от крупных поставщиков. Вернее, заблуждение состоит в ответе на вопрос почему это следует делать. Обычно считается, что приобретя готовое решение его можно быстро и дешево внедрить, т.к. все уже заранее запрограммировано добрым вендором. В реальности получается, что купленное решение надо долго и мучительно дорабатывать, кастомизировать, интегрировать в уже существующую ИТ-инфраструктуру и так далее и тому подобное. В итоге, решение конкретной задачи длится дольше и обходится дороже, что приводит к довольно серьезному противодействию внедрения такого рода платформ в будущем. В чем же истинная причина того, что такого рода решения все еще покупаются?

Читать далее «Точечная застройка» и «промышленные» решения

Еще несколько слов про CHG

Перечитал своё вчерашнее сообщение. Наверное, не очень понятно, почему я пишу о JIRA в контексте управления изменениями (change management). Всё очень просто: у кого чего болит… У меня сейчас болит это самое управление изменениями.

Читать далее Еще несколько слов про CHG

Налог на три буквы

На днях я отметился в комментариях к блогу Андрея Колесова на тему И снова… СЭД, ECM, ИТ Причина моей спонтанной покупки реплики, в общем-то довольно банальная. Я не люблю абстрактных рассуждений о СЭД, ECM, BPM, ERP, ESB и тем более о СОА, но в силу профессии вынужден постоянно находиться в облаке тегов этих терминов. И вот приходишь после работы домой, садишься читать Google Reader, а там опять трехбуквенные сокращения… Читать далее Налог на три буквы

SOA обманула аналитиков

Под таким заголовком прошел очередной круглый стол CNews посвященный сервис-ориентированной архитектуре. Я так и не понял, кто и каким образом подчитал, что SOA-решения продаются существенно лучше прогноза. Но дело не в этом. Термин SOA по-прежнему жив, по крайней мере, в нашей стране. О нем действительно продолжают говорить, а значит эта тема до конца не раскрыта. Потому, позволю себе еще один «подход к снаряду». Читать далее SOA обманула аналитиков

Сценарии интеграции приложений (2)

Возвращаюсь к теме интеграции корпоративных информационных систем, начатой в конце июня этого года с сообщения об интеграции посредством СУБД. Как и обещал, рассказываю про более эффективные способы интеграции данных. Вообще, причина возникновения этой темы обусловлена современными(правильней сказать уже не столь современными) технологиями управления базами данных. Вернее двумя ограничениями этих технологий. Читать далее Сценарии интеграции приложений (2)

Приложение управления бизнес-приложениями

Чтобы понять рекурсию нужно понять рекурсию

Много слов сказано для обоснования полезности промежуточного ПО, интеграционных сред, систем управления бизнес-процессами. И количество «оппортунистических» связей между приложениями они сокращают, и интеграционные решения унифицируют и сквозные бизнес-процессы, включающие несколько приложений, реализуют.  Всё это, безусловно, важно. Но не это главное.

Уже не один год существует класс информационных систем называемый application management. Эти системы позволяют удаленно развертывать и конфигурировать приложения, мониторить состояние системы, диагностировать ошибки, управлять квотами и т.д. Развитие облачных вычислений (cloud computing) дало дополнительный импульс application management. Насколько мне известно, в Windows Azure при наступлении определенных событий, например превышении загрузки процессора выше определенной черты или увеличении количества входящих сетевых запросов, можно автоматически поднять еще одну виртуальную машину и развернуть на ней дополнительный экземпляр приложения.

Не трудно провести аналогию между системами application management и интеграционными средами и BPMS. Только вторые управляют содержательной частью бизнес-приложений. Обычно, с  бизнес-приложениями работают люди. Но по мере роста и развития информационной системы предприятия все чаще возникает необходимость заменить этих людей автоматизированными системами. Сценарии таких ситуаций следующие:

  1. Управление вводом данных. Когда возникает необходимость за ограниченный промежуток времени ввести в систему несколько десятков тысяч записей, люди становятся бессильны. До определенной степени можно расширять штат низкооплачиваемых сотрудников, занимающихся вводом, но это довольно затратный подход. Намного проще: загрузить данные подготовленные внешним приложением, например, переложить задачу ввода каких-либо запросов на партнеров и клиентов (системы self-service). Другой пример управления вводом данных – автоматическое добавление записей по событию. Многие сервисные службы создают инциденты не только по запросам пользователей, но и на основании событий систем мониторинга. (Подробнее об обработки событий см. ниже)
  2. Управление справочниками. Большинство бизнес-приложений используют справочники. Когда в различных системах ведутся разные справочники одних и тех же объектов, задача управления этими системами становится крайне сложной. Как только количество используемых систем превысит десяток – время задуматься о централизованном ведении справочников, а задачу управления справочниками возложить на интеграционную среду.
  3. Управление рабочими процессами (workflow). Сейчас трудно найти систему, внутри которой не было бы функций workflow. Однако такие workflow начинаются и заканчиваются «внутри» системы. Разделение труда между подразделениями предприятия, возможно и повышает его производительность, но в качестве цены за это формирует высоченные барьеры между подразделениями. В то же время, бизнес-процессы любого предприятия являются общими. Иногда в процессе участвуют не только подразделения одной компании, но и подразделения компаний-партнеров. Рабочии процессы – это единая сеть, требующая координации и согласованной работы. Идея бизнес-сервиса, как рабочего процесса, управляемого информационной системой была изложена мной в сообщении Программный интерфейс к бизнесу
  4. Обработка событий. На фоне всеобщего увлечения сервис-ориентированной архитектурой (SOA), управляемая событиями архитектура (even-driven architecture, EDA) осталась практически незамеченной. Однако, построение адаптивной информационной системы компании требует именно такого подхода. SOA сервисы интересны только в той степени, в которой они помогают компании реагировать на те или иные бизнес-события. Можно написать сотню сервисов, ни одним из которых никто и никогда не воспользуется. Событийный подход вносит смысл в информационную систему компании. Заставляет нас задумываться над вопросом «зачем», для каких случаев, мы разрабатываем тот или иной сервис. Перехват и маршрутизация событий, пожалуй, наиболее значимая ценность, привносимая  интеграционными средами в корпоративный ИТ-ландшафт.
  5. Обработка исключений. Однако не все события поддаются автоматической обработке. Рано или поздно возникает ситуация не предусмотренная ни в требованиях к решению, ни в спецификации взаимодействий, ни в техническом задании. Огромная ошибка заключается в том, чтоб рассматривать такую ситуацию как ошибку, записать сообщение в системный лог и остановить бизнес-процесс. С каждой такой ситуацией должен кто-то разбираться. Появившиеся ошибки это та самая обратная связь от эксплуатации к развитию, помогающая своевременно корректировать бизнес-процессы и модернизировать приложения. Вопреки распространенному мнению интеграционная среда не является «системой без пользователей». Наоборот, это система для наиболее подготовленных и эрудированных пользователей, способных анализировать исключительные ситуации как с точки зрения ИТ, так и с точки зрения бизнеса и своевременно принимать адекватные решения.

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

Бои местного значения

Чизбургер этот не нужен тебе

…картошку Йоде желаешь отдать

смотреть на YouTube

Под заголовком Необъявленная война на BPMS.ru появился отличный обзор текущей ситуации между ECM, BPM и ACM решениями. Разные эксперты по-разному видят происходящее и оценивают перспективы. Так как я не являюсь продавцом лицензий на трехбуквенные системы, меня бы не должно это сильно затрагивать, но есть одно «но». Театром военных действий между поставщиками ИТ-решений являются корпоративные информационные системы. Война между поставщиками уже много лет разворачивается внутри корпоративных сетей заказчиков. И, естественно, потерь среди мирного населения никто не считает. Ежедневно ко мне приходят запросы от бизнес-подразделений с предложением купить новую систему или заменить старую, потому что: в ECMe нет функциональности BPM; в BPMе нет функциональности ACM, а в ACM нет вообще ничего, но это нам все равно нужно… Читать далее Бои местного значения

Почему архитектура нуждается в социальном ПО

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

Читать далее Почему архитектура нуждается в социальном ПО

Архитектура информационных систем предприятия

Почему-то архитекторам свойственно напускать много сиреневого тумана на свою деятельность: и определения что такое архитектура единого нет; и книжки про архитектуру все почему-то довольно толстые. Даже великий Буч, как мне кажется, больше написал о том, чем не является архитектура, а не о том, чем же она является.  Мне хочется сделать простой и по возможности краткий обзор того, что же такое архитектура. Может начальникам как-нибудь расскажу. Обзор будет субъективный, потому сразу прошу – тапками в меня не кидайтесь.

Читать далее Архитектура информационных систем предприятия

Сценарии интеграции приложений

Одна из немногих книг по интеграции корпоративных информационных систем Enterprise Integration Patterns появилась в конце 2003 года. По большому счету других, сколь либо серьезных исследований данного вопроса с того времени и не появилось. Автор книги Gregor Hohpe поддерживает одноименный сайт Enterprise Integration Patterns на котором можно посмотреть основные паттерны. Впрочем, описаны они довольно кратко и лучше читать книгу. Тем более что она переведена на русский язык как Шаблоны интеграции корпоративных приложений.

При всем искреннем уважении к Грегору Хопу, должен отметить, что о паттернах корпоративной интеграции речь идет только в первых нескольких главах книги, написанных такими уважаемыми людьми как Мартин Фаулер и др. Авторы выделяют четыре основных паттерна интеграции: файловый обмен, общая база данных, вызов удаленной процедуры и обмен сообщениями. Основную часть книги как раз и занимают паттерны обмена сообщениями. Messaging, безусловно, мощный и эффективный подход как при интеграции так и при разработке корпоративных систем. Однако сценарии интеграции корпоративных приложений это не только и не столько messaging. Это и файловый обмен и синхронный вызов сервисов и доступ разных приложений к общей базе данных. И в описании подходов к интеграции чувствуется определенный пробел. Чтобы не перегружать слово паттерны, я буду использовать термин сценарии интеграции приложений и постараюсь постепенно заполнить возникший пробел.
Читать далее Сценарии интеграции приложений