автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.06, диссертация на тему:Модели и метод поддержки построения архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия

кандидата технических наук
Князев, Михаил Владимирович
город
Санкт-Петербург
год
2006
специальность ВАК РФ
05.13.06
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Модели и метод поддержки построения архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия»

Автореферат диссертации по теме "Модели и метод поддержки построения архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия"

На правах рукописи

Князев Михаил Владимирович

МОДЕЛИ И МЕТОД ПОДДЕРЖКИ ПОСТРОЕНИЯ АРХИТЕКТУРЫ ПРОГРАММНО-АППАРАТНОГО ОБЕСПЕЧЕНИЯ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ ПРЕДПРИЯТИЯ

Специальность: 05.13.06 - Автоматизация и управление технологическими процессами и производствами (промышленность)

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Санкт-Петербург - 2006

Работа выполнена в Санкт-Петербургском государственном электротехническом университете «ЛЭТИ» им. В.И. Ульянова (Ленина)

Научный руководитель - кандидат технических наук, доцент Сидельников В.В.

Официальные оппоненты:

доктор технических наук, профессор Водяхо А.И., кандидат технических наук Павлов В.А.

Ведущая организация - Санкт-Петербургский институт информатики Российской

академии наук (Санкт-Петербург)

Защита диссертации состоится «_ » 2006 г. в ^У часов на

заседании диссертационного совета Д 212.238.Ь7 Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» им. В.И. Ульянова (Ленина) по адресу: 197376, Санкт-Петербург, ул. Проф. Попова, 5.

С диссертацией можно ознакомиться в библиотеке университета. Автореферат разослан « 2/ » 2006г.

Ученый секретарь

диссертационного совета /V / ЯшинА.И.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

Распределенные гетерогенные вычислительные среды предприятий часто характеризуются наличием аппаратных средств различной процессорной архитектуры и разнотипных операционных систем. Несмотря на это, существующие среды поддержки построения информационных систем имеют ограниченную поддержку архитектурного проектирования программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП), например процесса выбора и компоновки целевых аппаратных средств, операционных систем и серверов приложений. В то же время, разработка архитектуры ПАО РИСП является одним из ключевых этапов построения последних. Допущенные в выборе архитектуры системы ошибки трудноисправимы и сопряжены со следующими наиболее значимыми негативными последствиями: (1) низкие надежность и удобство сопровождения системы; (2) поддержка РИСП в режиме эксплуатации требует значительных дополнительных финансовых вложений.

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

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

К сожалению, на сегодняшний день такой способ отсутствует.

Таким образом, существует противоречие между необходимостью поддержки процесса принятия решений по созданию архитектуры (в частности - возможности эффективного выбора технологий реализации) компонентно-ориентированного ПАО РИСП и отсутствием моделей, методов и программных средств поддержки, позволяющих обеспечить решение этой задачи с учетом нужд и возможностей проектировщика. Наличие этого противоречия определяет существование актуальной научно-технической задачи — необходимости разработки моделей, методов и программных средств, реализующих автоматизированную поддержку построения архитектуры ПАО РИСП.

Цель и задачи исследования. Целью работы является разработка моделей, метода и прототипов программных средств, которые будут использоваться на этапе архитектурного проектирования, обеспечивая автоматизированное построение корректных формальных иМЬ спецификаций архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП).

В соответствии с поставленной целью, в работе формулируются и решаются следующие основные задачи:

1. Анализ известных методов автоматизированного проектирования ПАО

РИСП.

2. Построение модели абстрактной компонентной архитектуры ПАО РИСП.

3. Построение математических моделей подсистемы критикующей поддержки процесса проектирования ПАО РИСП.

4. Разработка метода построения и конкретизации абстрактной компонентной архитектуры ПАО РИСП, который повышает эффективность перехода от требований к спецификациям ПАО РИСП (метод АКА).

5. Прототипирование метода АКА.

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

Научная новизна работы заключается в следующем:

1. Построена формальная модель абстрактной компонентной архитектуры ПАО РИСП, которая отличается минимально-полным составом набора элементов ее ПАО, реализуемого средствами Д2ЕЕ, что позволяет проектировать РИСП без привязки к конкретным программно-аппаратным средствам реализации.

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

3. Разработан метод построения архитектуры ПАО РИСП на основе 12ЕЕ (метод АКА), отличающийся применением модели АКА для связи требований к РИСП с вариантом ее программно-аппаратной реализации, что позволяет сократить время проектирования архитектуры РИСП.

4. Предложены стереотипы языка ЦМЬ, которые отличаются использованием понятия модели АКА, что позволяет применять оригинальные модели и метод в стандартных средах проектирования РИСП.

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

Разработанные модели подсистемы критикующей поддержки процесса проектирования ПАО РИСП и их прототипная реализация могут быть использованы для повышения эффективности при проектировании ПАО РИСП как в формальных

средах, например с использованием автоматных моделей, так и в прикладных средствах поддержки, например в программном продукте со свободно-распространяемым исходным кодом ArgoUML.

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

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

Внедрение результатов работы заключается в использовании разработанных метода построения и конкретизации абстрактных компонентных архитектур (метода АКА), а также модели репозитория конкретных операционных систем и аппаратных средств и критикующей подсистемы проектирования при адаптации свободно-распространяемой среды проектирования ArgoUML для обеспечения поддержки построения архитектур ПАО компонентно-ориентированных РИСП.

Материалы диссертации использовались в ходе разработки корпоративного Интернет-сайта АОЗТ «ОТИДО», а также используются в Центре Высоких Технологий Sun Microsystems (ООО «Сан Майкросистемс СПБ») при создании программных средств поддержки проектирования ПАО РИСП, что подтверждено соответствующими актами о внедрении.

Научные положения, выносимые на защиту:

1. Формальная модель абстрактной компонентной архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП).

2. Математические модели критикующей поддержки построения архитектуры ПАО РИСП.

3. Метод построения архитектуры ПАО РИСП на основе J2EE (метод АКА).

4. Стереотипы поддержки метода АКА в среде языка UML.

Апробация результатов исследования. Основные положения и результаты работы докладывались и обсуждались на I Международной Научно-технической Конференции ИЛИ (CALS)-2003 «Информационные технологии в управлении жизненным циклом изделий» (Санкт-Петербург, ноябрь 2003), очередном семинаре на базе государственного научного центра России ЦНИИ робототехники и технической кибернетики посвященном вопросам интеграции информационных систем (Санкт-Петербург, декабрь 2004), очередной конференции «Java Days в Санкт-Петербурге» проведенной совместно Санкт-Петербургском Государственным Университетом и Центром Высоких Технологий Sun Microsystems (ООО «Сан Майкросистемс СПБ») (Санкт-Петербург, ноябрь 2005). Доклад по теме «Automated Devel-

opment of Distributed IT Systems Architectures» принят на X Международный Симпозиум ШЕЕ «International Symposium on Consumer Electronics» (Санкт-Петербург, 2006).

Публикации. По теме диссертации опубликованы 3 статьи.

Структура и объем работы.

Диссертация состоит из введения, четырех глав, заключения, списка литературы, включающего 113 наименований, и 4-х приложений. Основная часть работы изложена на 92 страницах машинописного текста. Работа содержит 28 рисунков и 6 таблиц.

КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе описываются основные стандарты в области разработки программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП). Приводится обзор наиболее значимых результатов полученных к настоящему моменту в области новых подходов к построению ИС.

Сравним два основных стандарта в области компонентно-ориентированных платформ поддержки РИСП, Java(tm) 2 Platform, Enterprise Edition (J2EE) и .NET.

Предложенная компанией Sun Microsystems платформа J2EE упрощает разработку корпоративных приложений за счет использования стандартизованных модульных компонент и обеспечения полного набора сервисов для этих компонент. Многие аспекты работы приложения выполняются автоматически, без применения сложных средств системного программирования. Официально совместимых с J2EE 1.4 программных серверов приложений насчитывается 12 штук. Из них следующие являются продуктами со свободно-распространяемым исходным кодом: Sun, Java System Application Server PE 8, ObjectWeb JOnAS v4.4, Apache Geronimo 1.0-M5 и JBoss Application Server 4.0.

.NET — это программная технология, предложенная фирмой Microsoft в качестве платформы для создания, как обычных программ, так и веб-приложений. Во многом является примером реализации идей и принципов, заложенных в технологии J2EE и J2SE. На Рисунке 1 изображены технологии образующие эти стандарты.

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

Решения Уровня Предприятия

MS its

MS CLR

TS

13

й a

Java Runtime Environment Sun, SEA, IBM, Appie

Linux, У^ШлйЙ^ШсШЖ.:

V. /Sblfhs^^Sp^^^a

Рисунок 1 Технологии .NET и J2EE

По данным сайтов http://java-source.net/ и http://csharp-source.net/ свободно-распространяемых Java проектов в 4,5 раза больше чем для .NET. По данным Evans Data Corporation на 2005 год: (а) Наибольшее предпочтение Java разработкам отдают научные круги; (б) Почти 50% научных приложений разрабатывается для ОС семейства Unix; (в) 40% разработчиков в научной сфере считают платформо-независимость абсолютно необходимой для их ПО.

J2EE является доминирующим стандартом компонентно-ориентированных платформ поддержки РИСП в гетерогенных средах. Один из лидеров в разработке программных средств поддержки КИС компания SAP AG выбрала J2EE в качестве базовой платформы для разработки своего ПО. J2EE превосходит .NET по таким важным параметрам как количество свободно-распространяемых программных продуктов поддерживающих стандарт, переносимость, количество компаний производящих альтернативные реализации серверов поддерживающих стандарт. В диссертационной работе рассматривается ПАО РИСП на основе J2EE, поскольку этот стандарт предусматривает значительно больше архитектурных вариантов реализации РИСП в гетерогенной среде предприятия, чем стандарт .NET.

В рамках подхода к организации процесса разработки программного обеспечения (ПО) RUP можно выделить следующие задачи архитектора ПАО РИСП на базе J2EE: (1) осмысление и ограниченная корректировка требований к РИСП; (2) выбор наиболее подходящих программно-аппаратных средств поддержки и способов реализации ПАО РИСП из: множества аппаратных средств (Pentium, PowerPC,

PA-RISC, SPARC, 370, ...), множества операционных систем (Unix, Windows, NT/XP, Mainframe OS, MacOS, ...), множества ПО промежуточного слоя (Sun Java System Application Server, Apache Tomcat, BEA WebLogic, IBM Websphere, JBoss, Oracle Application Server, ...), множества способов реализации модулей ПО (EJB, Servlets, JSP, AWT/Swing, Applet, Java Web Start, ...); (3) синтез (визуальное построение) высокоуровневых спецификаций ПАО РИСП.

Выполнение первой задачи напрямую связано со следующими артефактами: Требования по качеству работы РИСП; Проектные ограничения; Функциональные требования к РИСП. Стандартом де-факто для реализации этих задач является формат записи, предложенный в рамках RUP, который поддержан IBM Rational Requisite Pro.

В рамках третьей задачи архитектор должен учесть следующие факторы: Баланс полноты и читабельности; Наглядность, унифицированность; Простота внесения изменений; Совместимость со стандартными средами разработки ПО, Стандартом де-факто для выполнения этой задачи является язык визуального проектирования UML, который поддержан такими средами как Sun Java Studio Enterprise, Borland Together и IBM RationalRose. На Рисунке 2 приведен пример UML диаграммы развертывания типичной РИСП с поддержкой работы через Internet/Intranet.

Полио1*т*льс(ий сом л wot ер

Epjyiep

Клиенгени При л ос »ни* 1

Кпммгскв* при/MX ЩИ« 2

Рисунок 2 Пример диаграммы развертывания UML

Спроецированные параллелепипеды (Nodes) отображают аппаратные средства ИС, прямоугольники сопоставлены основным программным компонентам ИС (Components). К аппаратным средствам (АС) данного примера относятся «Пользовательский компьютер», «Серверный компьютер» и «Сервер БД».

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

Процесс выбора аппаратных средств, ОС и программных реализаций контейнеров J2EE не поддержан в известных средах поддержки построения РИСП на базе J2EE.

Методология проектирования программный систем Model Driven Architecture (MDA) была предложена OMG в 2000 году. В рамках MDA используются несколько стандартов — MOF, CWM и XMI. Язык UML используется для описания всех моделей. В основу MDA положены две составляющие: Platform Independent Model (PIM) и Platform Specific Model (PSM). PIM — платформо-независимая модель - это формальная спецификация структуры и функций системы, которая не зависит от технических деталей. PSM - платформо-зависимая модель — это спецификация системы, отражающая особенности отображения PIM на конкретную гглатформу (под платформой понимают технические и инженерные детали, которые не относятся к бизнес-функциональности программных компонентов).

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

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

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

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

релевантной информации, и не ограничивает при этом свободу внесения изменений в проект.

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

Существующие подходы к разработке программного обеспечения ПАО РИСП имеют целый ряд недостатков относительно процесса проектирования, а именно: (1) слабая поддержка методов работы с логическими компонентами; (2) слабая связность описаний шаблонов с требованиями к проектируемому ПАО РИСП; (3) привязанность к конкретным спецификациям и технологиям; (4) ригидность (негибкость) средств поддержки. Ниже приводится описание предлагаемой формальной модели Абстрактной Компонентной Архитектуры (АКА), лежащей в основе оригинального метода АКА (описан в третьей главе), который устраняет вышеописанные недостатки существующих методов разработки ПО.

Абстрактная Компонентная Архитектура (АКА) - результат записи требований к РИСП на Языке Описания Абстрактной Архитектуры (ЯОАА). Соответствует PIM модели MDA с определенной компонентной структурой ПАО РИСП.

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

Язык Описания Абстрактной Архитектуры (ЯОАА) — основан на UML, ограничивает набор возможных типов АК ПАО РИСП и типов их возможных взаимосвязей.

По типам конкретных программно-аппаратных средств поддержки и способам реализации ПАО РИСП выделены следующие классы АК ЯОАА:

• Класс Абстрактных Логических Компонентов о Презентационные компоненты

о Бизнес компоненты (функции, перманентные и оперативные сущности)

о Компоненты внешнего взаимодействия

• Класс Абстрактных Серверных Контейнеров о Java Web контейнер, EJB контейнер

• Абстрактная Операционная Система (ОС)

• Абстрактный Аппаратный Сервер (АС)

К выявленным типам связей Абстрактных Логических Компонентов относятся следующие однонаправленные связи по зависимости: АПК от АБКФ, АБКФ от АБКСП, АБКФ от АБКСО, АБКФ от АКВВ, АБКСП от АКВВ, а также такие зависимости АКВВ от внешних по отношению к проектируемому ПАО РИСП систем.

На Рисунке 3, согласно нотации диаграммы развертывания UML, изображена построенная с помощью оригинального метода модель АКА обобщенной системы Интернет-торговли. Выделены следующие абстрактные АС: Системы Продаж и Интернет Доступа. На них развернуты соответствующие абстрактные ОС, абстрактные серверные контейнеры и конкретные клиентские контейнеры.

ср Оператор! Сиспми

IPiHFreie^ J2S^ ПРИПИШИ« ;

АЁстрдгтмыЙ АС Сиспми Првалх ».

v

¡71

«<OAe»»> АСотрмнля ОС Снстсмм Предан

AGerpJtTMuS EJB Контейнер

z:

«QA»»(v«<>> . Абстрлсгний ÀC И Ht» pu «г Доступ»

<---------

~7|

<«QAoi>» ACcTpafrmi ОС Ннттрнь^оступл

АСегрмтный W«l> Ко нг* нн*р

Ж.

.. БД Сметаны Првдм ^ ■;".,.. i-ч 1 „. ■-

Рисунок 3 Абстрактная Компонентная Архитектура системы Интернет-торговли

Модель АКА ПАО РИСП может определяться в терминах диаграмм развертывания UML и имеет своим предметом наиболее часто используемые или даже неотъемлемые компоненты ПАО РИСП, такие как АС, ОС и серверные контейнеры, что делает исключительно удобным создание высокоуровневой PIM модели для проектируемого ПАО РИСП. Предполагается, что требования по качеству вводятся в трансформирующую (PIM в PSM) систему в процессе проектирования, причем разделение PIM и PSM является прозрачным для пользователя такой системы. Создание всеобъемлющих профилей видится неразрешимой задачей, в связи с чем детализация компонентов АКА ограничена логическими компонентами среды J2EE, такими как EnterpriseJava Beans и серверные страницы JSP. Такое ограничение представляется обоснованным, т.к. это позволяет не менять спецификацию UML (что очевидно является труднодостижимым), к тому же, на практике, диаграмма развертывания UML - это часто единственный артефакт UML создаваемый при разработке ПАО РИСП.

Подсистемами первого уровня упомянутой в первой главе критикующей подсистемы могут являться проектные критики.

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

Критикующая система, помимо собственно критиков, должна содержать механизмы управления применением критиков к проекту и представления/управления порождаемой критиками информацией. Представленные ниже модели критикующей поддержки процесса проектирования ПАО РИСП позволяют

использовать соответствующую математику при построении критиков и критикующих подсистем в рамках метода АКА.

Статическая формальная модель критика. Множество классов АК которые могут формировать АКА ПАО РИСП: ЕТ — {«Аппаратный Сервер», «ОС», «Серверный Контейнер», «Логический Компонент»}. Стереотип «Аппаратное Средство» применим к UML-элементам Node и Nodelnstance; другие - к UML-элементам Component и Componentlnstance. Множество АК проектируемой ПАО РИСП:

МЕ~ {me, =(t¡ е£7У=1,и},

где t¡ - тип элемента, s¡ — состояние элемента - отражает множество UML tagged values (именованных значений), связанных с данным элементом. Таким образом, модель АКА ПАО РИСП:

М = (ME, А),

где А с AT - множество ассоциаций АКА ПАО РИСП. AT - множество ассоциаций, которые могут применяться в проектируемой системе. Одним из типов таких ассоциаций является «deploy» - бинарное отношение между АК. Такие ассоциации отражают способность элемента Node поддерживать работу соответствующего элемента Component, или физическое размещение элемента Componentlnstance на элементе Nodelnstance. В терминах этой модели, начальное состояние критика конкретизации Серверного Контейнера можно описать следующим образом:

Шо = ({ me i=(ti=«Аппаратный Сервер»^—{cpuArch={CPU_ARCHx}}), те2=(*2=«ОС», s2= {cpuArch= {CPU_ARCHX}, osID={OSy»), _ me3=(t3=«Серверный Контейнер», 83= {cpuArch={CPU_ARCHx},

osID= {OSy }, jasID=0 } ) },

{«deploy» = {(met, me2), (me2) me3)}})

Далее будем использовать сокращенную форму: mo=({CPU_ARCH,[}, {OSy}, 0)

■ Следующее состояние т(, которое допускает любые конкретные Серверные Контейнеры (JAS), совместимые с заданными процессорной архитектурой (CPU_ARCHX) и ОС (OSy), представляется следующим образом:

mi=({CPU_ARCHX}, {OSy},

JASxy = {JAS¡ J (CPU_ARCHx }^supportedCPUArc}is{¡A$,\}, {OSy } s supportedOSesiJASi)}),

где supportedCPTJArchsQ и supportedOSesQ — функции, возвращающие описания поддерживаемых процессорных архитектур и ОС по описанию конкретного Серверного Контейнера.

Для дальнейшего уточнения Серверного Контейнера, в данном примере, предусмотрены (1) выбор JAS по среднему количеству одновременно поддерживаемых пользователей, (2) выбор JAS по результатам бенчмарков производительности и (3) выбор JAS по сумме этих параметров. Таким образом, следующее состояние ш2:

m2=(m2[ || Ш22 El П12з),

причем переходы в состояние Шг сопряжены с запросом у проектировщика следующих данных:

™ е\ ("serCарасiy'Reg) ч „„ гп\ ; * 2i >

гн eiihcnchmarkltesuHReq) v

\ 22,

g3 (userCapacityReq, benchmarkRcsultRcq) v м т\ ,

где userCapacityReq и benchmarkRelutReq определяются как требования на количество одновременно поддерживаемых пользователей и на результаты бенчмарков производительности для целевого JAS. Варианты состояний т2 определяются следующим образом:

m2l=({CPU_ARCHx}, {OSy}, {JAS¡ | JAS(eJAS>y>

userCapacityReq e userCapaci ty(JAS }), m22=({CPU_ARCHX}, {OSy}, {JAS¡ | JAS, eJAS,y,

benchmarkResu!t(J ASt) ¿ benchmarkResuUReq }), m23=({CPU_ARCHx}, {OSy}, {JAS¡ | JAS, € JASKy, userCapacityReq e userCapacity(JA§¡), benchmarkResu¡t(iAS,t)t benchmarkResuUReq }),

где userCapacityO и benchmarkRelutQ — функции, возвращающие соответствующие значения по описанию конкретного Серверного Контейнера (JAS).

Автоматная формальная модель критика. Пусть Е - множество событий, изменяющих состояние модели АКА ПАО РИСП, т.е.:

E= {eal,ea2, erl, er2, eml}, ,

где eal(me) — добавление нового АК; ea2(mel, ше2) - добавление новой ассоциации; erl(me) - удаление существующего АК; er2(mel, me2) - удаление существующей ассоциации; eml(me) - изменение существующего АК. Тогда, критик определяется как автомат, реагирующий на перечисленные выше события и, при соответствующем состоянии М, вырабатывающий специфичную критическую реакцию (активизирующий мастера-визарда).

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

Процесс критика: CrMW~detect?mO —► initialSuggestion!mI=fl(mO) — (setUserCapacity?x —► constrainByUserCapacity !m21 =f2 l(ml, x) —► CrMW j selBenchRes?y —»■ constrainByBenchRes!m22=f22(mls y) —► CrMW j setCapacityAn-dRes?x,y —► constrainByCapacityAndRes!m23=f23(ml, x, y) —► CrMW).

Обозначения процесса критика: detect?mO - в модели обнаружено множество элементов отвечающих требованиям начального состояния критика - шО (? означает получение процессом информации); initialSuggestion!ml=fl(mO) — критик предлагает исходное множество решений (! означает вывод (генерацию) информации процессом); setUserCapacity?x - пользователь требует показать лишь решения обеспечивающие заданное значение userCapacity; setBenchRes?x - пользователь требует показать лишь решения обеспечивающие заданное значение benchmarkResuIt; setCapacityAndRes?x,y - пользователь требует показать лишь решения, обеспечивающие заданные значения userCapacity и benchmarkResuIt; constrainByUserCapacity !m2 l=f21 (m 1, x), constrainByBenchRes !m22=f22(m 1, y), constrainByCapacityAndRes!m23s=f23(ml, x, у) - критик сужает исходное множество значений в соответствии с требованиями пользователя.

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

В третьей главе описывается разработанный автором метод построения и конкретизации абстрактных архитектур (метод АКА), основанный на использовании оригинальных моделей.

Сущность метода АКА заключается в основанном на требованиях к РИСП предварительном проектировании АКА ПАО РИСП, а также в последующем поэтапном формализованном построении описания компонентной архитектуры ПАО РИСП, использующей конкретные программно-аппаратные средства поддержки и имеющей желаемые качественно-стоимостные характеристики.

Экспериментальные исследования, описанные во втором разделе четвертой главы, одной из целей которых было сравнение предлагаемого метода и подхода прямого использования Core J2EE Patterns, а также другие примеры построения ПАО РИСП показывают, что метод АКА имеет целый ряд преимуществ перед под-

ходом прямого использования Core J2EE Patterns, а именно: (1) большая связность с требованиями к проектируемому XIAO РИСП - наличие алгоритмизированных руководств перехода от терминов текста требований к РИСП к терминам метода; (2) большая плавность перехода от требований к спецификации компонентной архитектуры ПАО РИСП - метод АКА определяет 3 этапа перехода от требований к РИСП к компонентной архитектуре ее ПАО (требования на естественном языке, абстрактная компонентная архитектура ПАО РИСП, компонентная архитектура ПАО РИСП), тогда как Core J2EE Patterns только 2 (требования на естественном языке, компонентная архитектура ПАО РИСП); (3) большее количество классов компонентов ПАО РИСП выбор которых автоматизируется - метод АКА: 4 (логические программные компоненты, серверные контейнеры, ОС, AC),'Core J2EE Patterns: I (логические программные компоненты); (4) большая совместимость с MDA - метод АКА поддерживает концепции PIM и PSM.

К недостаткам метода АКА при сравнении с подходом прямого использования Core J2EE Patterns можно отнести: (1) относительная сложность отдельного использования элементов метода. Однако шаблоны Core J2EE Patterns содержат ссылки друг на друга, что говорит о необходимости их полного изучения для наиболее целостного их применения; (2) меньшая детализация руководств. Для класса логических программных компонентов, в случае необходимости, рекомендуется совместное использование метода АКА и Core J2EE Patterns.

В четвертой главе рассматриваются примеры практического использования предлагаемых в диссертационной работе решений. В качестве примера использования предлагаемого метода приводятся: (1) прототипная адаптация свободно-распространяемой среды проектирования общего назначения ArgoUML поддерживающая предлагаемые модели и метод и (2) описание основанного на оригинальном методе процесса построения архитектуры обобщенной системы Интернет-торговли (ОСИТ).

Разработанные на базе ArgoUML прототипные расширения поддержки метода АКА демонстрируют возможность эффективной интеграции этого метода в существующие средства поддержки проектирования ПАО РИСП: (1) прототипная реализация поддержки ЯОАА через UML стереотипы «QAserver» и «QAos» и соответствующие именованные значения (tagged values) показала, что работа с абстрактной компонентной архитектурой может быть реализована без качественных изменений языка UML; (2) опробованная в прототипе реализация репозитория конкретных ОС и АС демонстрирует формализуемость конкретных реализаций АК; (3) программно реализованные критики и мастера-визарды поддержки метода АКА подтверждают высокую эксплуатационную готовность такого способа организации пользовательского интерфейса для поддержки процесса проектирования ПАО РИСП с использованием концепций абстрактной компонентной архитектуры.

На Рисунке 4 представлена конкретизированная с помощью метода АКА модель изображенная на Рисунке 3.

Компьютер Оператор! Системы

Кпштею» J2S£ пси not еиив :

z:

Компьютер Интернет Псиуплтел«

D*H PwueiEdge 17Я1

«QAos»» ОС SolJrii G \1/

JBo

<

; «QAserve»» : Dell PpMCtÉdQe 17® ' Д'

«Qftof»» □С Solaris В

Apiohe Tomejt

6Д Систем« flponi*

Рисунок 4 Конкретизированная для уровней выше Логических Компонентов АКА

ОСИТ

Основываясь на данных Приложения 2, для обоих АС был выбран АС начального уровня Dell PowerEdge 1750, который может быть впоследствии заменен на более высокопроизводительный и имеющий другую процессорную архитектуру для EJB контейнера. Например, на аппаратный сервер Sun Enterprise 10000 (от 1 до 64 процессоров семейства SPARC; до 64 ГБ RAM в системе).

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

1. Построена формальная модель абстрактной компонентной архитектуры ПАО J2EE-совместимой РИСП, которая развивает методологию разработки программного обеспечения OMG Model Driven Architecture. Такая форма описания проектируемого ПАО РИСП позволяет отделить процесс распределения обязанностей за выполнение требований к системе между подсистемами и компонеэтами ее ПАО от выбора технологий его реализации, используемых программных контуров (frameworks), операционных систем и аппаратных средств, а также в значительной степени формализовать и упорядочить процесс построения его компонентной архитектуры.

2. Построены математические модели критикующих подсистем поддержки процесса проектирования ПАО РИСП (статическая, динамическая и процессная модели), что позволяет использовать соответствующую математику в процессе построения и реализации таких подсистем. На основе этих моделей разработаны

примеры математически описанных критикующих компонентов (критиков), поддерживающих принятие решений при проектирования ПАО РИСП.

3, Разработан метод построения и конкретизации абстрактной компонентной архитектуры ПАО РИСП (метод АКА), повышающий эффективность перехода от требований к РИСП к спецификациям компонентной архитектуры ее ПАО за счет унифицированных формализованных руководств построения компонентной структуры ПАО РИСП; автоматизированного и упорядоченного процесса выбора программно-аппаратных средств подцержки и способов реализации РИСП; интегрируемости в Rational Unified Process и в критикующую подсистему среды проектирования.

4. На основе предлагаемых моделей и оригинального метода разработаны и прототипированы в исследовательской среде проектирования ArgoUML базовые модули критикующей поддержки процесса проектирования ПАО РИСП. Разработаны и опробованы стандартные расширения UML, поддерживающие работу метода АКА. Эти экспериментальные исследования показали возможность эффективной интеграции метода АКА в существующие средства поддержки проектирования информационных систем.

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Князев М.В. Абстрактные компоненты в проектировании информационных систем на базе платформы J2EE [Текст] / М.В. Князев И Обработка информации: методы и системы: Сб. науч. ст. /Под ред. С.С. Садыкова - М.: Горячая линия - Телеком, 2003.-С. 105-115.

2. Князев М.В. Проектные «критики» как средство когнитивной поддержки проектирования информационных систем уровня предприятия [Текст] / М.В. Князев, В.В. Сидельников // Программные продукты и системы №1,2005. - С. 21-25

3. Князев М.В. Выбор Java сервера приложений для информационных систем уровня предприятия [Текст] / М.В. Князев // Программные продукты и системы №1,2005.-С. 13-16

Подписано в печать 10.07.06, Формат 60*84 1/16 Бумага офсетная. Печать офсетная, Печ. л. 1,0 Тираж 100 экз. Заказ €6.

Отпечатано с готового оригинал-макета в типографии Издательства СПбГЭТУ "ЛЭГИ"

Издательство СПбГЭТУ "ЛЭТИ" 197376, С.-Петербург, ул. Проф. Попова, 5

Оглавление автор диссертации — кандидата технических наук Князев, Михаил Владимирович

ВВЕДЕНИЕ.

ГЛАВА 1. АНАЛИЗ СРЕДСТВ ПОДДЕРЖКИ ПОСТРОЕНИЯ АРХИТЕКТУРЫ ПРОГРАММНО-АППАРАТНОГО ОБЕСПЕЧЕНИЯ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ ПРЕДПРИЯТИЯ (РИСП) И ПОСТАНОВКА ЗАДАЧИ ИССЛЕДОВАНИЯ

1.1. Место РИСП в структуре деятельности промышленного предприятия.

1.1.1. Типы производств и стандарты современных АСУП.

1.1.2. Производственная и коммерческая необходимость единого информационного пространства корпорации.

1.1.3. Особенности построения глобальных РИСП в России.

1.2. Использование промежуточного программного обеспечения и серверов приложений для построения РИСП.

1.2.1. Принципы построения глобальной интегрированной РИСП на базе Интернет серверов приложений.

1.2.2. Задача интеграции разрозненных корпоративных информационных систем

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

1.3. Анализ недостатков современных средств информационной поддержки построения и эксплуатации программно-аппаратного обеспечения глобальной РИСП.

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

Стандарт переносимых корпоративных приложений J2EE.

Стандарт многоязыкового программирования .NET.

J2EE и .NET в контексте гетерогенной вычислительной среды предприятия.

1.3.2. Основные недостатки поддержки построения архитектуры программно-аппаратного обеспечения компонентно-ориентированной РИСП в среде Unified

Process и подхода прямого использования шаблонов проектирования Core J2EE Patterns.

1.4. Перспективные подходы поддержки построения компонентно-ориентированных РИСП и постановка задачи исследования.

1.4.1. Подход Model Driven Architecture.

1.4.2. Системы критикующей поддержки разработки программного обеспечения

1.4.3. Постановка задачи исследования.

1.5. Выводы по главе 1.

ГЛАВА 2. МОДЕЛИ АБСТРАКТНОЙ КОМПОНЕНТНОЙ АРХИТЕКТУРЫ И КРИТИКУЮЩЕЙ ПОДДЕРЖКИ ПОСТРОЕНИЯ АРХИТЕКТУРЫ ПАО

2.1. Модель Абстрактной Компонентной Архитектуры (АКА) программно-аппаратного обеспечения РИСП (ПАО РИСП).

2.1.1. Определения.

2.1.2. Пример модели АКА ПАО РИСП: обобщенная система Интернет-торговли (ОСИТ).

2.1.3. Свойства модели АКА ПАО РИСП.

2.2. Модели критикующей поддержки построения архитектуры ПАО РИСП.

2.2.1. Статическая формальная модель критика.

2.2.2. Автоматная формальная модель критика.

2.2.3. Модели уровня реализации критикующей системы.

2.2.4. Пример: критик выбора Java сервера приложений в терминах статической модели.

2.2.5. Пример: критик выбора Java сервера приложений в терминах алгебры процессов.

2.3. Выводы по главе 2.

ГЛАВА 3. МЕТОД ПОСТРОЕНИЯ АРХИТЕКТУРЫ ПАО РИСП НА ОСНОВЕ ПЛАТФОРМЫ J2EE (МЕТОД АКА)

3.1. Построение Абстрактной Компонентной Архитектуры ПАО РИСП.

3.1.1. Логические Компоненты.

Выявление абстрактных бизнес компонентов-функций (АБКФ).

Выявление абстрактных бизнес компонентов-сущностей (АБКС) и соответствующих связей.

Выявление абстрактных компонентов внешнего взаимодействия (АКВВ).

Выявление абстрактных презентационных компонентов (АПК).

3.1.2. J2EE Типы Клиентских Приложений.

3.1.3. Серверные Контейнеры.

Нужен ли Web контейнер для проектируемой РИСП?.

Нужен ли EJB контейнер для проектируемой РИСП?.

3.1.4. Серверные Операционные Системы.

3.1.5. Серверные Аппаратные Средства.

3.2. Конкретизация Абстрактной Компонентной Архитектуры ПАО РИСП.

3.2.1. Логические Компоненты.

Конкретизация абстрактных презентационных компонентов (АПК).

Конкретизация абстрактных бизнес компонентов-функций (АБКФ).

Конкретизация оперативных абстр. бизнес компонентов-сущностей (АБКСО).

Конкретизация перманентных абстр. бизнес компонентов-сущностей (АБКСП).

Конкретизация абстрактных компонентов внешнего взаимодействия (АКВВ).

3.2.2. Серверные Контейнеры.

Выбор категории Серверного Контейнера.

Выбор конкретной реализации Серверного Контейнера по осн. характеристикам.

3.2.3. Серверные Операционные Системы.

Краткая классификация ряда современных ОС.

Системы критикующей поддержки и формализация ОС.

3.2.4. Серверные Аппаратные Средства.

Краткая классификация ряда современных АС.

Системы критикующей поддержки и формализация АС.

3.3. Сравнение метода АКА и подхода прямого использования Core J2EE Patterns

3.4. Интеграция метода АКА в Unified Process.

3.5. Интеграции метода АКА в критикующую подсистему среды проектирования

3.6. Выводы по главе 3.

ГЛАВА 4. ПРАКТИЧЕСКОЕ ИСПОЛЬЗОВАНИЕ МЕТОДА АКА

4.1. Поддержка метода АКА в адаптированной среде проектирования ArgoUML

4.1.1. Архитектура среды проектирования ArgoUML.

Графический интерфейс ArgoUML.

Модель (Model).

Критикующая подсистема (Critics).

4.1.2. Расширения поддержки метода АКА в ArgoUML.

Стереотипы поддержки метода АКА в среде языка UML.

Репозиторий конкретных ОС и АС.

Расширения Критикующей Подсистемы.

4.2. Обобщенная система Интернет-торговли (ОСИТ).

4.2.1. Требования к ОСИТ.

Подготовка Заказа.

Изменение Заказа.

Оценка Заказа.

Оплата Заказа.

4.2.2. Построение архитектуры ОСИТ с использованием метода АКА.

Выявление абстрактных бизнес компонентов-функций (АБКФ).

Выявление абстрактных бизнес компонентов-сущностей (АБКС) и соответствующих связей.

Выявление абстрактных компонентов внешнего взаимодействия (АКВВ).

Выявление абстрактных презентационных компонентов (АПК).

Выявление J2EE Типов Клиентских Приложений.

Выявление абстрактных Серверных Контейнеров.

Выявление абстрактных Серверных Операционных Систем.

Выявление абстрактных Аппаратных Средств.

Конкретизация абстрактных презентационных компонентов (АПК).

Конкретизация абстрактных бизнес компонентов-функций (АБКФ).

Конкретизация оперативных абстр. бизнес компонентов-сущностей (АБКСО).

Конкретизация перманентных абстр. бизнес компонентов-сущностей (АБКСП).

Конкретизация абстрактных компонентов внешнего взаимодействия (АКВВ).

Конкретизация абстрактных Серверных Контейнеров.

Конкретизация абстрактных Серверных Операционных Систем.

Конкретизация абстрактных Аппаратных Средств.

4.3. Пример использования метода АКА для построения компонентной архитектуры программного обеспечения интегрирующей подсистемы на промышленном предприятии.

4.3.1. Требования на взаимодействие.

4.3.2. Построение архитектуры ПАО РИСП с использованием метода АКА.

Выявление абстрактных компонентов внешнего взаимодействия (АКВВ).

Выявление абстрактных Серверных Контейнеров.

Конкретизация абстрактных компонентов внешнего взаимодействия (АКВВ).

Конкретизация абстрактных Серверных Контейнеров.

4.4. Выводы по главе 4.

Введение 2006 год, диссертация по информатике, вычислительной технике и управлению, Князев, Михаил Владимирович

Структура.174

Участники и обязательства.174

Стратегии.177

Результаты.178

Пример кода.180

Родственные шаблоны проектирования.185

ПРИЛОЖЕНИЕ 4. ОПИСАНИЯ РЕШЕНИЙ БАЗОВЫХ ШАБЛОНОВ

ПРОЕКТИРОВАНИЯ J2EE.187

Business Delegate.187

Composite Entity.187

Composite View.187

Data Access Object.187

Dispatcher View.187

Front Controller.188

Intercepting Filter.188

Service Activator.188

Service Locator.188

Service to Worker.189

Session Fa?ade.189

Transfer Object.189

Transfer Object Assembler.189

Value List Handler.189

View Helper.190

ОСНОВНЫЕ СОКРАЩЕНИЯ

J2EE - Java(tm) 2 Platform, Enterprise Edition

ПСП - программный сервер приложений

Java ПСП - в этой работе, ПСП частично или полностью поддерживающий спецификацию J2EE версии 1.3 и выше. JRE -Java runtime environment. Среда выполнения стандартных Java приложений. MDA - Model Driven Architecture

АКА - абстрактная компонентная архитектура

Метод АКА - метод построения и конкретизации АКА АС - аппаратные средства(во); аппаратный сервер

АСУП - автоматизированная система управления предприятием

ГИП - графический интерфейс пользователя

ИС - информационная система

ОС - операционная система

ОСИТ - обобщенная система Интернет-торговли

ПАО - программно-аппаратное обеспечение

ПАО РИСП - ПАО распределенной информационной системы предприятия.

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

Промежуточное - связующее ПО, обеспечивающее взаимную работу приложений ПО в распределенной неоднородной сетевой среде

ВВЕДЕНИЕ

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

Распределенные гетерогенные вычислительные среды предприятий часто характеризуются наличием аппаратных средств различной процессорной архитектуры и разнотипных операционных систем. Несмотря на это, существующие среды поддержки построения информационных систем имеют ограниченную поддержку архитектурного проектирования программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП), например процесса выбора и компоновки целевых аппаратных средств, операционных систем и серверов приложений. В то же время, разработка архитектуры ПАО РИСП является одним из ключевых этапов построения последних. Допущенные в выборе архитектуры системы ошибки трудноисправимы и сопряжены со следующими наиболее значимыми негативными последствиями: (1) низкие надежность и удобство сопровождения системы; (2) поддержка РИСП в режиме эксплуатации требует значительных дополнительных финансовых вложений.

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

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

К сожалению, на сегодняшний день такой способ отсутствует.

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

Цель и задачи исследования. Целью работы является разработка моделей, метода и прототипов программных средств, которые будут использоваться на этапе архитектурного проектирования, обеспечивая автоматизированное построение корректных формальных UML спецификаций архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП).

В соответствии с поставленной целью, в работе формулируются и решаются следующие основные задачи:

1. Анализ известных методов автоматизированного проектирования ПАО РИСП.

2. Построение модели абстрактной компонентной архитектуры ПАО РИСП.

3. Построение математических моделей подсистемы критикующей поддержки процесса проектирования ПАО РИСП.

4. Разработка метода построения и конкретизации абстрактной компонентной архитектуры ПАО РИСП, который повышает эффективность перехода от требований к спецификациям ПАО РИСП (метод АКА).

5. Прототипирование метода АКА.

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

Научная новизна работы заключается в следующем:

1. Построена формальная модель абстрактной компонентной архитектуры ПАО РИСП, которая отличается минимально-полным составом набора элементов ее ПАО, реализуемого средствами J2EE, что позволяет проектировать РИСП без привязки к конкретным программно-аппаратным средствам реализации.

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

3. Разработан метод построения архитектуры ПАО РИСП на основе J2EE (метод АКА), отличающийся применением модели АКА для связи требований к РИСП с вариантом ее программно-аппаратной реализации, что позволяет сократить время проектирования архитектуры РИСП.

4. Предложены стереотипы языка UML, которые отличаются использованием понятия модели АКА, что позволяет применять оригинальные модели и метод в стандартных средах проектирования РИСП.

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

Разработанные модели подсистемы критикующей поддержки процесса проектирования ПАО РИСП и их прототипная реализация могут быть использованы для повышения эффективности при проектировании ПАО РИСП как в формальных средах, например с использованием автоматных моделей, так и в прикладных средствах поддержки, например в программном продукте со свободно-распространяемым исходным кодом ArgoUML.

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

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

Внедрение результатов работы заключается в использовании разработанных метода построения и конкретизации абстрактных компонентных архитектур (метода АКА), а также модели репозитория конкретных операционных систем и аппаратных средств и критикующей подсистемы проектирования при адаптации свободно-распространяемой среды проектирования ArgoUML для обеспечения поддержки построения архитектур ПАО компонентно-ориентированных РИСП.

Материалы диссертации использовались в ходе разработки корпоративного Интернет-сайта АОЗТ «ОТИДО», а также используются в Центре Высоких Технологий Sun Microsystems (ООО «Сан Майкросистемс СПБ») при создании программных средств поддержки проектирования ПАО РИСП, что подтверждено соответствующими актами о внедрении.

Научные положения, выносимые на защиту:

1. Формальная модель абстрактной компонентной архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП).

2. Математические модели критикующей поддержки построения архитектуры ПАО РИСП.

3. Метод построения архитектуры ПАО РИСП на основе J2EE (метод АКА).

4. Стереотипы поддержки метода АКА в среде языка UML.

Апробация результатов исследования. Основные положения и результаты работы докладывались и обсуждались на I Международной Научно-технической Конференции ИПИ (CALS)-2003 «Информационные технологии в управлении жизненным циклом изделий» (Санкт-Петербург, ноябрь 2003), очередном семинаре на базе государственного научного центра России ЦНИИ робототехники и технической кибернетики посвященном вопросам интеграции информационных систем (Санкт-Петербург, декабрь 2004), очередной конференции «Java Days в Санкт-Петербурге» проведенной совместно Санкт-Петербургском Государственным Университетом и Центром Высоких Технологий Sun Microsystems (ООО «Сан Майкросистемс СПБ») (Санкт-Петербург, ноябрь 2005). Доклад по теме «Automated Development of Distributed IT Systems Architectures» принят на X Международный Симпозиум IEEE «International Symposium on Consumer Electronics» (Санкт-Петербург, 2006).

Публикации. По теме диссертации опубликованы 3 научные статьи.

Структура и объем работы. Диссертация состоит из введения, четырех глав, заключения, списка литературы, включающего 113 наименований, и 4-х приложений. Основная часть работы изложена на 92 страницах машинописного текста. Работа содержит 28 рисунков и 6 таблиц.

Заключение диссертация на тему "Модели и метод поддержки построения архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия"

4.4. Выводы по главе 4

1) Разработанные на базе исследовательской среды проектирования ArgoUML прототипные расширения поддержки метода АКА демонстрируют возможность эффективной интеграции этого метода в существующие средства поддержки проектирования ПАО РИСП. а. Прототипная реализация поддержки ЯОАА через UML стереотипы «QAserver» и «QAos» и соответствующие именованные значения (tagged values) показала что работа с Абстрактной Компонентной Архитектурой может быть реализована без качественных изменений языка UML; б. Опробованная в прототипе реализация репозитория конкретных ОС и АС демонстрирует формализуемость конкретных реализаций Абстрактных Компонентов; в. Программно реализованные критики и мастера-визарды поддержки метода АКА подтверждают высокую эксплуатационную готовность такого способа организации пользовательского интерфейса для поддержки процесса проектирования ПАО РИСП с использованием концепций Абстрактной Компонентной Архитектуры.

2) На примере построения программно-аппаратной компонентной архитектуры Обобщенной системы Интернет-торговли (ОСИТ) показана общая большая эффективность метода АКА в сравнении с подходом прямого использования шаблонов проектирования Core J2EE Patterns: а. Переход от терминов текста требований к ОСИТ к терминам метода АКА осуществлен с большей эффективностью за счет специальных алгоритмизированных руководств выявления Абстрактных Логических Компонентов; б. Переход от требований к спецификации программно-аппаратной компонентной архитектуры ОСИТ осуществлен более организованно и эффективно. Вместо анализа и возможного последующего применения 15 шаблонов проектирования Core J2EE Patterns (одно только полное описание шаблона проектирования Business Delegate насчитывает 14 страниц текста и диаграмм) к построению архитектуры пользователь следовал алгоритмизированным руководствам метода АКА объемом 22 страницы. в. Алгоритмизированные руководства метода АКА, наряду с определением логических программных компонентов, формализовали выбор операционных систем, аппаратных средств и реализаций серверных J2EE контейнеров ОСИТ.

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

ЗАКЛЮЧЕНИЕ

Использование предлагаемых в диссертационной работе моделей и метода поддержки построения архитектуры программно-аппаратного обеспечения распределенной информационной системы предприятия (ПАО РИСП) позволяет существенно повысить эффективность построения корректных формальных UML спецификаций компонентных архитектур ПАО РИСП на базе платформы J2EE. В ходе исследований, представленных в работе, были получены следующие основные результаты:

1) Построена формальная модель абстрактной компонентной архитектуры ПАО 12ЕЕ-совместимой РИСП, которая развивает методологию разработки программного обеспечения OMG Model Driven Architecture. Такая форма описания проектируемого ПАО РИСП позволяет отделить процесс распределения обязанностей за выполнение требований к системе между подсистемами и компонентами ее ПАО от выбора технологий его реализации, используемых программных контуров (frameworks), операционных систем и аппаратных средств, а также в значительной степени формализовать и упорядочить процесс построения его компонентной архитектуры.

2) Построены математические модели критикующих подсистем поддержки процесса проектирования ПАО РИСП (статическая, автоматная и процессная модели), что позволяет использовать соответствующую математику в процессе построения и реализации таких подсистем. На основе этих моделей разработаны примеры математически описанных критикующих компонентов (критиков), поддерживающих принятие решений при проектирования ПАО РИСП.

3) Разработан метод построения и конкретизации абстрактной компонентной архитектуры ПАО РИСП (метод АКА), повышающий эффективность перехода от требований к РИСП к спецификациям компонентной архитектуры ее ПАО за счет унифицированных формализованных руководств построения компонентной структуры ПАО РИСП; автоматизированного и упорядоченного процесса выбора программно-аппаратных средств поддержки и способов реализации РИСП; интегрируемости в Rational Unified Process и в критикующую подсистему среды проектирования.

-1234) На основе предлагаемых моделей и оригинального метода разработаны и прототипированы в исследовательской среде проектирования ArgoUML базовые модули критикующей поддержки процесса проектирования ПАО РИСП. Разработаны и опробованы стандартные расширения UML, поддерживающие работу метода АКА. Эти экспериментальные исследования показали возможность эффективной интеграции метода АКА в существующие средства поддержки проектирования информационных систем.

Библиография Князев, Михаил Владимирович, диссертация по теме Автоматизация и управление технологическими процессами и производствами (по отраслям)

1. Официальный сайт J2EE. http://iava.sun.com/javaee/index.isp

2. Microsoft .NET Homepage. httpV/www.microsoft com/net/default.mspx

3. Буч Г., Якобсон А., Рамбо Дж. UML. Перевод с английского, Питер, 2006, ISBN: 5-469-00599-2

4. Philippe Kruchten; The Rational Unified Process: An Introduction, Third Edition; Addison-Wesley Professional, 2003, ISBN: 0321197704

5. Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk Weise; MDA Distilled; Addison-Wesley Professional, 2004, ISBN: 0201788918

6. Леонид Мазур. Системы управления для промышленных предприятий.

7. Марина Аншина. «Предприятие как единый объект автоматизации. Размышления на тему».

8. Крылович А.В. Информационные технологии в управлении предприятием. Сайт «Корпоративный менеджмент».

9. Кирилл Вавилов, Сергей Щербина. Web-интеграция корпоративных систем. www.profi-club.kiev.ua

10. Dave Ensor, Ian Stevenson "Oracle Design", O'Relly, 1997

11. Сайт Sun Microsystems, http://www.sun.com/

12. Inderjeet Singh, Beth Stearns, Mark Johnson; Designing Enterprise Applications with the J2EE Platform; Addison-Wesley Professional, 2002, ISBN: 0201787903

13. Сайт Microsoft, http://www.microsoft.com/

14. Платт Д.С., Знакомство с Microsoft .NET. Перевод с английского. Русская редакция, 2001, ISBN: 5-7502-0186-4/0-7356-1377-Х

15. Официальный сайт J2SE. http://java.sun.com/javase/index.isp16.