Разделы



Логическая трехуровневая архитектура многоуровневой экономической информационной системы.

В процессе создания многоуровневой ЭИС выделяют логическое и физическое проектирование. Физическое проектирование рассматривает механизмы построения многоуровневых ЭИС, организацию аппаратного обеспечения и связано с рассмотрением процессов распределенного об мена между узлами сети и внутри узла, в том числе: где хранить информацию (данные), где её обрабатывать, какие данные и куда следует передавать. Решение этих задач включает реализацию методик распределения вычислительных работ по уровням обработки информации и узлам сети; распределения данных информационных массивов по узлам сети; определения количества компьютеров в узле. Для решения перечисленных задач могут быть использованы экономико-математические методы и модели, а также специальный инструментарий класса CASE .

Логическое проектирование рассматривает структуру многоуровневой ЭИС вне зависимости от типа и месторасположения оборудования, аппаратных и программных платформ, в рамках которых функционирует система. Таким образом осуществляется декомпозиция системы на модули и подсистемы. Логическая архитектура многоуровневой ЭИС характеризуется наличием трех уровней, которые в литературе получили названия “документы”, “бизнесправила ” и “хранилище данных” (см. рис. 2.). Трехуровневая (трехзвенная) логическая архитектура проектирования многоуровневой ЭИС позволяет обеспечить правильную организацию разработки системы.

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

Следует отметить, что только грамотно выполненное логическое проектирование позволяет правильно реализовать механизмы автоматизированной обработки для создания многоуровневой ЭИС. Без него по строение системы практически невозможно, как бы идеально не было бы размещено оборудование и какое бы совершенное программное обеспечение не использовалось.

Логическая архитектура многоуровневой ЭИС всегда первична. От ражая декомпозицию задач, решаемых системой, она позволяет продумывать структуру необходимых элементов будущего проекта, при этом предоставляя богатый выбор в вопросах физического построения, т.е. оставляя большинство окончательных решений открытыми. Логический проект указывает на потребность пользователей многоуровневой ЭИС. Физический проект переводит логический проект в его точный план с четко определенными параметрами многоуровневой ЭИС.

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

п»ї

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


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

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

Прогнозирования являются стержнем любой торговой системы, в связи с этим грамотно составленные прогнозы Forex могут сделать тебя несказанно денежным.

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

п»ї

Логическую архитектуру многоуровневой ЭИС можно рассматри вать с позиций микро и макромира. Микромир трехуровневой архитек туры отражает конкретную подсистему. Любая подсистема включает три независимых уровня:  хранилище данных, правила осуществления бизнеса (бизнесправила ), отражающие политику предприятия, проводимую в определенные временные периоды и интерфейс ЭИС с пользователем посредством экранных форм (документов). От того, насколько незави симы друг от друга будут данные уровни, зависит жизненный цикл под системы многоуровневой ЭИС, её гибкость, модульность и универсальность. С позиций макромира следует, что информация является основным ключевым ресурсом организации и каждый отдельный уровень трехуровневой архитектуры не зависит от конкретной подсистемы, а данные каждого из уровней сохраняют способность к использованию даже при изменении этой подсистемы. Каждый уровень многоуровневой ЭИС характеризуется множеством используемых несвязанных подсис тем, но в целом трехуровневая архитектура четко отделяет “бизнес пра вила” от “документов” и “хранилище данных”.

Рассматривая трехуровневую архитектуру целесообразно акцентировать внимание на интеграции логического и физического проектирования (см. рис. 3).

Верхний уровень логической архитектуры многоуровневой ЭИС, на зываемый “документы”7, отражает интерфейс взаимодействия между пользователем и конкретным АРМ, функционирующим в рамках этой ЭИС. Физически, примером организации данного уровня является оконная технология, предложенная фирмой Microsoft в начале 1990х годов, получившая мировую известность и ставшая чрезвычайно популярной. Интеграция компонентов данного уровня осуществляется на основе использования технологии OLE ( Object Linking and Embedding ), что пере водится как связывание и встраивание объектов.


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

Навигация, контроль, поиск, активизация и завершение компонен тов информационной системы на данном уровне происходит с использо ванием окон. Даже если подсистема не выполняется в момент вызова (обращения), оконная среда, при необходимости, обеспечит ее автоматический запуск. Действующими объектами данного уровня являются документы. Технология OLE является в настоящий момент стандартом архитектурной организации составного документа 9 . В настоящий момент OLE является наиболее удобным инструментарием разработки и планирования электронных страниц, обеспечивая удобный и простой интерфейс комбинирования динамической и статической информации. Популярность OLE объясняется ее тесной связью непосредственно с Windows , а также с подсистемами функционирующими под управлени ем Windows . Основным преимуществом технологии OLE является принцип связывания, обеспечивающий установление связи или ссылки на содержимое объекта и позволяющий предоставлять динамично поступаю щую информацию заинтересованным лицам, вместо того, чтобы копи ровать полностью выбранный объект в документ, как это делалось ранее при встраивании 10 объектов в составной документ. При открытии документа система обработки текстов через OLE автоматически проверяет, изменились ли какиелибо связанные объекты, содержащиеся в документе, предоставляя пользователю возможность активизации изменен ной версии. Еще одним достоинством OLE является удобство использования мультимедийных подсистем в АРМ, “оживляющих” экранный ин терфейс.

Нижним уровнем трехуровневой архитектуры является “хранилище данных” Активными компонентами на физическом уровне являются файлы базы данных (БД)11. Этот уровень обеспечивает доступ к данным в процессе обработки запросов и осуществляет управление изменениями данных (транзакциями12), гарантируя их согласованность.

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

Как правило, многоуровневые ЭИС организуются на основе рас пределенной обработки информации, располагаются в различных базах данных, представляющих собой набор взаимодействующих компонен тов. Многие из этих компонентов принимают форму ячеекконтейнеров для хранения физических таблиц, состоящих из физических записей и содержащих фактические данные пользователей. Разделение базы данных на компоненты предоставляют пользователям право выбора инст рументария для хранения данных. Для обеспечения удобства получения информации по запросам используется другой вид ячейкиконтейнера (получивший название логического массива), строящийся с использова нием логических записей, т.е. набора, сформированного на основе вы борки полейданных из ячеекконтейнеров , содержащих физические за писи. Прототипом массива логических записей является процессор запросов, который обеспечивает контроль за базой данных в целом.

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

Эффективность функционирования процессора запросов на данном уровне рассмотрим на примере использования БД OLE . Интерфейс БД OLE был разработан весной 1995 года фирмой Microsoft , и является удобным инструментарием для создания множества взаимосвязанных компонентов БД. БД OLE представляет собой набор интерфейсов опи сывающих взаимодействие произвольных компонент, каждая из которых работает с таблицами данных и наборами записей. Любые два взаимодействующих компонента называются поставщиками табличных данных  Tabular Data Providers ( TDP ).

БД OLE может функционировать с сетевыми и иерархическими ба зами данных, используемыми в крупномасштабных системах, реляцион ными БД, применяемыми для организации многоуровневых ЭИС, рас пределенными системами, построенными на основе технологии клиент сервер , в которых на каждом сервере функционирует своя реляционная база данных, а также с относительно новым, не так давно появившимся классом баз данных:  объектно-ориентированными базами данных OODB ( Object Oriented Database ), которым эксперты в области систем управления базами данных 13 пророчат большое будущее.

Компоненты TDP могут быть полной реляционной базой данных, использующей язык структурированных запросов Structured Query Lan ­ guage ( SQL ) или более простыми, например, электронной таблицей, системой обработки текста или настольной СУБД (как, например, Microsoft Access ), в которых TDP манипулируют простыми множествами записей.

БД OLE является стандартом, разработанным для того, чтобы рас полагаться между предварительно определенными внутренними компо нентами базы данных, обеспечивая их взаимодействие, на основе использования процессора запросов, который позволяет формировать запросы на SQL для выборки данных из электронной таблицы, при том, что сама электронная таблица не является базой данных и “не понимает” язык SQL .

БД OLE позволяет множеству ячеекконтейнеров предоставлять свои записи процессору запросов, чтобы он мог осуществлять поиск нужной записи и работать с ними. Управление процессором запросов осуществляется репозиторием14, который содержит информацию о всех таблицах во всех ячейкахконтейнерах многоуровневой ЭИС т.е., описа ние всех таблиц в базе данных, их индексов и т.д. При этом, каждый сервер обладает, как минимум, одним процессором запросов, который взаимодействует с другими ему подобными, обмениваясь записями.

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

Для координации распределенной по нескольким базам данных транзакции, которые могут быть расположены на значительном территориальном удалении друг от друга, используют протокол, получивший в литературе название двухфазная фиксация ( Twophase commit ), который позволяет любому количеству баз данных скоординироваться так, чтобы транзакция, распределенная по различным местам, могла корректно отработать. Если совместный запрос завершен и обработка прошла успешно, то протокол двухфазной фиксации обеспечивает выпол нение дальнейших действий, в противном случае протокол обеспечивает возврат всех баз данных в состояние, в котором они находились на момент запуска этой транзакции.

Протокол двухфазной фиксации является протоколом реального времени, обеспечивая координацию частей распределенной транзакции по многим базам данных. Функционирующая в режиме реального времени распределенная многоуровневой ЭИС (МРИС) подразумевает на личие постоянного доступа ко всем её частям, вовлеченным в распределенную транзакцию и поддерживаемых протоколом двухфазной фикса ции. Если какаялибо часть вычислительной сети даёт сбой то система останавливается.

До недавнего времени, основной проблемой являлось то, что разработчики программного обеспечения для создания МРИС, такие как Ora ­ cle , IBM , Tandem , DEC и др., ориентировались на использование и коор динацию транзакции только для собственных баз данных и не поддер живали программные продукты конкурентов. Для решения данной про блемы в 1990 г., в рамках программы X / Open , был разработан стандарт ХА. В рамках данного стандарта был использован структурный компонент, получивший название менеджер транзакций или координатор транзакций, который позволяет обеспечить управление транзакциями для различных форматов баз данных на основе поддержки использования двухфазной фиксации.

Для управления последовательностями транзакций и запросов в распределенной системе используется монитор транзакций15. Индиви дуальные запросы обрабатываются средой поддержки компонентов. Индивидуальные транзакции обрабатываются БД. Если транзакции распре деляются на несколько серверов или несколько хранилищ, то транзакции управляются координатором транзакций так, чтобы обеспечить одновременное изменение данных во всех информационных хранилищах МРИС, либо ни в одном из них.

Аналогичным образом происходит обработка запросов. Когда дело доходит до последовательности транзакций и запросов, активизируется монитор транзакций. При этом запросы нетранзакционных действий об рабатываются средой поддержки компонентов; транзакционные действия обрабатываются БД.

Монитор транзакций позволяет организовать более эффективную обработку распределенных запросов. Все пользовательские запросы со единяются с координатором транзакций, а он являясь своеобразным бу фером между сервером базы данных и пользовательскими подсистема ми16, обеспечивает управление обращениями к серверу БД, в отличие от ситуации, когда подсистемы МРИС напрямую формируют запрос на об работку к серверу базы данных, и тем самым загружают сервер БД.

Для управления запросами на низком уровне используется удален ный вызов процедуры   Remote Procedure Call ( RPC )18, основной задачей которого является перехват запросов и превращение их в сообщения. Удаленный вызов процедуры предоставляет выполняемому компоненту (программе) требуемую информацию, связывая обратившейся к нему компонент с подпрограммой, которая запускается на другом компьютере в другом адресном пространстве.

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

Процесс перехвата полностью невидим как для вызывающей, так и для вызванной программы. В результате получается распределенная ( dis ­ tributed ) работающая программа, в которой невозможно отделить удаленный вызов процедуры от локального , они как бы являются единым целым. Один и тот же процедурный вызов в зависимости от потребностей в одном случае может быть локальным, а в другом удаленным. Использование стратегии RPC избавляет разработчиков программного обеспечения от программирования на уровне среды поддержки компо нентов т.е. использования сетевых программных интерфейсов операци онных систем, позволяя осуществлять необходимые действия в слое RPC .

Наиболее яркими представителями монитора транзакций, обеспечи вающих единообразие множества используемых баз данных в настоящий момент являются такие программные продукты как Tuxedo , Top End , Encina , CICS и др. Данные системы позволяют осуществлять обра ботку последовательности транзакций и содержат мониторы транзакций. Среди мониторов транзакций лидерство по числу установок и объемам продаж в настоящий момент принадлежит Tuxedo фирмы BEA Systems , который обеспечивает поддержку распределенных транзакций, прозрач ное взаимодействие программ в разнородной (гетерогенной) вычислительной сети, обмен сообщениями с гарантированной доставкой, про граммный интерфейс DCE RPC 19 , что избавляет разработчика ПО от не обходимости обязательного знания и использования многочисленных сетевых и системных программных интерфейсов, например, операцион ной системы Unix .

Главной задачей любой подсистемы МРИС является обеспечение выполнения бизнес правил, т.е., тех тысяч правил и законов, которые определяют нормальную деятельность хозяйственного субъекта. В связи с этим возникает проблема реинжиниринга бизнес-процессов, протекающих на предприятии и характеризующих экономическую систему хозяйствующего субъекта. Он подразумевает изменение существующей логики связей различных компонент многоуровневой ЭИС и объединение разрозненных бизнеспроцессов .

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

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

В настоящее время популярность трехуровневой архитектуры стре мительно возрастает, однако говорить о вымирании двухуровневой архитектуры преждевременно. Еще существует значительное количество приложений, для которых двухуровневая архитектура идеально подхо дит. При создании небольших проектов, двухуровневая архитектура яв ляется более простой и дешевой, по сравнению с трехуровневой. Однако с ростом сложности приложений и увеличением их жизненного цикла, по мнению Gartner Grou р , одного из крупнейших в компьютерной индустрии поставщиков услуг по стратегическому планированию для спе циалистов в области информационных технологий, использование двух уровневой модели увеличивает сложность разработки приложений и стоимость эксплуатации системы по экспоненте (рис. 4).

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

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


Механизмом, позволяющим любому количеству отдельных компо нентов взаимодействовать друг с другом так, как если бы они были одним единым большим компонентом является среда поддержки компонентов. В настоящий момент наибольшей популярностью пользуются такие среды компонентов как SOM фирмы IBM , COM фирмы Microsoft , NextStep фирмы Next , ORBIX и программные продукты IONA Technolo ­ gies , а также среда NEO и JOE от SUN Microsystems .

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

Читать далее: Физическая архитектура многоуровневой экономической информационной системы.