Мир избежал бы половины неприятностей,
если бы люди сначала договорились о значении слов
Р. Декарт

Архитектура IEM систем. Решение, платформа, конфигурация и компоненты в понимании Ultimate

Устройство управляющих систем предприятия в популярном изложении с картинкой.
Все гениальное — просто.

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

Текст рассчитан на потенциальных и уже состоявшихся пользователей.
Формализованное описание архитектуры системы для ИТ-профессионалов доступно на специализированном сайте платформы Ultimate Solid.



Что такое решение

В нашей терминологии IEM-решением называется полностью готовая к эксплуатации человекозаменяющая управляющая система предприятия.

Инсталляцией называется IEM-решение Ultimate, внедренное у отдельно взятого клиента со всеми его (решения, да и клиента тоже) индивидуальными особенностями.

Каждое решение Ultimate состоит из трех основных частей:

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

Термины «система» и «решение» в наших текстах синонимичны.
Словосочетания вроде «Ultimate ‹название конфигурации›», если из контекста явно не следует обратное, означают «IEM-решение Ultimate на базе ‹название конфигурации›».



Платформа

Как абсолютно идентична одна и та же версия Windows на любом компьютере, так же идентичны экземпляры одной и той же версии платформы Ultimate Solid, развернутые в рамках разных инсталляций.

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

Исходный код платформы закрыт.
С ним работают члены команды разработки ядра Ultimate и только они.



Конфигурация

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

Код конфигурации полностью открыт и, соответственно, на 100% доступен для изменений и доработок.

Для имевших опыт с 1С:Предприятием: значения терминов "платформа" и "конфигурация" у нас с ними практически идентичны. 

Аргументации тезиса, согласно которому сочетание закрытой платформы и открытой конфигурации мы считаем оптимальным для бизнес-потребителя, посвящен специальный текст.
Если же его сократить до одной фразы, то:

  • закрытость платформы предохранит ваших собственных программистов (и прикладных программистов партнеров Ultimate) от фатальных косяков,
  • а открытость конфигурации предоставляет возможность реализовать любую мыслимую бизнес-логику/функционал, включая подключение к системе внешних устройств и интеграцию с программным обеспечением сторонних вендоров.

Для получения компетенции в поддержке решений Ultimate не нужно штудировать локальные извращенные языки программирования. Программисту достаточно знания общемировых стандартов: C# и SQL.
Система полностью документирована на английском языке (на русском тоже, безусловно), на нем же комментирован код и дублирован интерфейс.
Потенциальных поддерживателей — десятки миллионов таджиков индусов.

На момент публикации заказчикам Ultimate доступны четыре различные конфигурации:

  • условно-бесплатная управляющая система предприятия начального уровня Ultimate 2C;
  • коммерческие e-Trade, e-Service, Industrial.

Функционал Ultimate 2C — базовый, функционал коммерческих конфигураций — достаточный.

Коммерческие конфигурации Ultimate по своей сути являются сборными, под нужды конкретного клиента, конструкторами на основе базового функционала. Который, в силу открытости конфигурации, также без ограничений доступен для модификации.
Заказчик в ходе предпроектных работ тыкает в кейсы «хочу то, то и то, а еще вот у вас про это не написано, но вот такую-то клевую штуку тоже хочу».

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

Таким образом, на момент запуска коммерческая конфигурация Ultimate в инсталляции данного клиента является свежайшим сборником настоящих best practices живого пульсирующего бизнеса.
В противовес застывшему, устаревшему порой на десятки лет, функционалу ОБФ-решений доисторических модульных систем.

Более того.
Счастливый эксплуатант коммерческой конфигурации Ultimate является, в некотором роде, обладателем нержавеющего ключа к постоянно обновляющейся базе бизнес-знаний, они же best practices: в точности так же он будет получать и функционал будущих кейсов при их появлении, оплачивая лишь перенос и интеграцию кода. Дарвиновская эволюция бизнес-процессов.

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



Компоненты

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

Компоненты Ultimate — НЕ модули.

Еще раз прибегнем к аналогии.
Представим себе сеть из персональных компьютеров с выделенным файл-сервером.
Это аналог модульной системы: сервер — центр, отдельные компьютеры — модули. Модули являются самостоятельными системами, функционирующими по собственной логике, самостоятельно хранящими и обрабатывающими данные. Сервер, в основном, используется для хранения порнухи информации общего интереса и общего доступа.
Вы легко можете добавлять “модули” в эту “систему”, можете отключать.
Связность, взаимная непротиворечивость и вытекающая практическая полезность такой “системы” принципиально ограничены возможностями протокола обмена данными. И, что не менее важно, готовностью отдельных “модулей” этот протокол строго и бесперебойно поддерживать.

Компоненты же Ultimate НЕ существуют самостоятельно и отдельно.
Они НЕ содержат данные, потеря которых повлияла бы на целостность общего информационного поля системы.
Они НЕ реализуют бизнес-логику, которая перекрывала бы или заменяла бизнес-логику единой конфигурации.

Они, подобно дубине в руке первобытного питекантропа (коя отнюдь не являлась “модулем” последнего), лишь расширяют функциональность единой монолитной системы.

Компоненты бывают логически-программные (например, Ultimate eStore — веб-модуль для интернет-магазина) и аппаратно-программные — как то Ultimate WMS.
Бытовым аналогом первого типа являются браузерные плагины, второго — медицинский диагностический прибор, подключаемый к компьютеру.

P.S. Некоторые наши не шибко добросовестные коллеги по опасному бизнесу, туманно характеризуя архитектуру впариваемого убожества, булькают магическую абракадабру ("трехмандатный ландшафт системы", etc).
Слушатель, естественным образом ни черта ни понимая в этой туфтологии, как правило, стесняется в том признаться.
Не стесняйтесь.
Произносители подобной ерунды понимают в ней не больше вашего.
Читайте "Новое платье короля" Ганса Христиана Андерсена.
А еще лучше, шварцевского "Голого короля".


 

Другие материалы из Библиотеки атеиста


Powered by Сон разума