Содержание к диссертации
Введение
Глава 1 Сравнительный анализ подходов и тенденций разработки корпоративных программных комплексов 16
1 Сравнительный анализ особенностей архитектур распределенных ИС 18
1.1 Ранние архитектуры (мэйнфреймы, файл-сервер,
клиент-сервер) 19
1.2 Современные расширения архитектуры клиент-сервер 21
1.3 Классификация современных архитектур для интернет-ИС 25
1.4 Комплекс критериев и результаты сравнительного анализа архитектурных подходов 2 Сравнительный анализ методологий разработки ИС 33
3 Сравнительный анализ моделей данных и поддерживающих СУБД
3.1 Ранние индексные и сетевые СУБД 38
3.2 Реляционная модель Кодда и переход к архитектуре клиент-сервер 40
3.3 Сетевые диаграммы Бахмана и ER-модель Чена 43
3.4 Мультимедийные ОРСУБД в среде интернет
4 Сравнительный анализ и классификация CASE-средств 48
5 Обзор технологических схем разработки ПО
5.1 Международные стандарты 55
5.2 Отраслевые и корпоративные стандарты 57
5.3 Соотнесение стандартов разработки ПО 6 Корпоративные портальные комплексы 62
7 Модели данных для интернет-среды 69
8 Постановка задачи интеграции данных в гетерогенных корпоративных программных комплексах 76
Глава 2 Моделирование схемы интеграции данных в корпоративных программных комплексах 87
1 Теоретические основания применяемых средств моделирования 88
2 Особенности математического аппарата для интеграции данных в распределенных гетерогенных КПК 90
3 Использование переменных объектов для концептуализации гетерогенных КПК 92
4 Применение фреймовой нотации для визуального моделирования интеграции данных 100
5 Использование аппарата вычисления значений в категориях и теории семантических сетей для управления контентом КПК 120
6 Особенности объектного моделирования гетерогенных данных в КПК 124
7 Моделирование управления контентом портальных КПК на основе семантических доменов и абстрактных машин на состояниях 132
Глава 3 Корпоративный программный комплекс, поддерживающий интеграцию данных и унифицированное управление контентом 140
1 Исследование специфики предметной области 141
2 Выбор программно-аппаратной платформы и инструментальных средств для интерации данных в корпоративных интернет-ИС 152
3 Интегрированное управление корпоративным контентом 160
4 Интеграция гетерогенных данных в портальных КПК 167
5 Корпоративный портал как средство консолидации источников гетерогенных (мета)данных 173
6 Специфика консолидированного учета корпоративных поизводственных ресурсов 181
7 Особенности интегрированного управления данными в портальных КПК 189
Глава 4 Проектирование архитектурно-интерфейсной структуры корпоративных программных комплексов с интеграцией данных 198
1 Особенности событийно управляемой программной архитектуры 199
2 Классификация и описания программных модулей КПК 211
3 Программное средство визуальной предметно-ориентированной интеграции данных ConceptModeller 221
4 Интерфейсы с внешним программным обеспечением
4.1 Интерфейсы с ПО Webalizer для сбора и анализа статистики посещений портала 228
4.2 Интерфейсы с финансовыми приложениями 230
4.3 Другие побочные источники информации
5 Внутренние интерфейсы 234
6 Формы для ввода информации 237
7 Отчетные данные 247
Глава 5 Результаты реализации, экспериментальной проверки и внедрения портального КПК с интеграцией данных 260
1 Общая характеристика реализованного КПК с интеграцией данных 261
2 Особенности внедрения и использования программного средства ConceptModeller для интеграции данных 270
3 Реализация и адаптация ИС управления корпоративным контентом 278
4 Внедрение корпоративного интернет-представительства www.itera.ru и информационного интранет-портала в МГК «ИТЕРА» 286
5 Опыт совершенствования полнофункционального корпоративного программного комплекса с интеграцией данных. Классификация и обязанности пользователей 297
6 Сравнение внедренного КПК с существующими коммерческими аналогами и рекомендации по его развитию 309
Заключение
- Комплекс критериев и результаты сравнительного анализа архитектурных подходов 2 Сравнительный анализ методологий разработки ИС
- Использование переменных объектов для концептуализации гетерогенных КПК
- Выбор программно-аппаратной платформы и инструментальных средств для интерации данных в корпоративных интернет-ИС
- Особенности внедрения и использования программного средства ConceptModeller для интеграции данных
Введение к работе
Актуальность темы. К настоящему времени вследствие ускоренного развития информационных технологий в корпорациях – крупных, территориально (а зачастую – глобально) распределенных организациях с едиными производственными задачами и ресурсами – накоплены и продолжают быстро расти весьма значительные (достигающие петабайт, т.е. 1015 байт) объемы данных. Унификация представления таких данных и манипулирование ими представляет собой существенную проблему в силу гетерогенности объединяющих их информационных систем (ИС), образующих корпоративные программные комплексы (КПК). Специфика гетерогенности проявляется как в архитектурном многообразии компонент КПК (файл-сервер, клиент-сервер, Интернет, «унаследованные» и др.), так и в различной степени структурированности образующих их объектов данных (реляционные таблицы, аудио-, видео- и фотоинформация, отсканированные документы, фрагменты офисных приложений и т.п.). КПК состоят из распределенных компонент – программных систем, которые объединяются посредством Интернет-порталов. Варианты среды взаимодействия программных систем включают как глобально открытый Интернет, так и внутрикорпоративный Интранет.
При этом, традиционно применяемые методологии проектирования КПК (Microsoft MSF, IBM RUP, Oracle CDM и др.) ориентированы преимущественно на инструментальные средства конкретных производителей (Microsoft Visual Studio, IBM Rational, Oracle Designer и т.д.) с трудно формализуемой семантикой и в этой связи не позволяют обеспечить в должной степени эффективного проектирования гетерогенных программных комплексов.
В настоящее время научные исследования подходов к интеграции крупных распределенных гетерогенных программных систем поддерживаются рядом международных и федеральных целевых программ: «Электронная Россия» (РФ), Network of the Future (ЕС), Future Internet Design (США), «Глобальная инициатива по политике Интернет» (ООН), «Информация для всех» (ЮНЕСКО) и др. Только ежегодные расходы на НИОКР по первым двум программам в последние годы составили в нашей стране свыше 400 млн. рублей , а в ЕС – около 100 млн. евро.
Прогрессирующее влияние информационных технологий на функционирование и развитие корпораций требует разработки технологической основы построения гетерогенных КПК на основе интеграции данных, поддерживающей весь жизненный цикл их проектирования – от математической модели до программной реализации.
Проблема разработки и унификации такой комплексной интеграционной технологии, включающей как математические модели, так и программно-инструментальные средства для поддержки гетерогенных КПК, непосредственно связана с производственно-экономической эффективностью корпораций. Хотя эта проблема находится в центре внимания крупнейших компаний-разработчиков программного обеспечения (ПО) и ведущих научных коллективов, она еще далека от удовлетворительного решения. Рассматриваемая проблема объединяет следующие взаимосвязанные аспекты:
трудности управления обработкой большими, быстро растущими объемами данных в гетерогенных КПК, во многом обусловленные недостаточно формализуемой семантикой языковых и инструментальных средств проектирования ПО (в т.ч. на основе языка UML);
сложность интеграции теоретически перспективных математических моделей данных с узконаправленными, эмпирическими программно-инструментальными средствами, поддерживающими «промышленные» методологии проектирования КПК, приводящая к неадекватным срокам, стоимости или эксплуатационным характеристикам внедрения;
недостаточная унификация моделей, методов и программных средств для представления и управления контентом – гетерогенными данными и метаданными – компонент КПК.
Отмеченные технологические проблемы проектирования гетерогенных КПК носят принципиальный характер, что неоднократно отмечалось в работах таких отечественных исследователей, как А.П.Ершов, А.А.Ляпунов, В.М.Глушков, Г.И.Марчук, И.А.Мизин, Э.Х.Тыугу, Л.Т.Кузин, Г.С.Поспелов, Д.А.Поспелов, С.С.Лавров, В.Л.Арлазаров, И.В.Романовский, В.В.Липаев, Л.Н.Сумароков, Е.Л.Ющенко, А.С.Нариньяни, В.Э.Вольфенгаген, Б.А.Щукин, В.М.Ветошкин, Г.В.Рыбина, А.Н.Терехов, Е.А.Саксонов, Л.А.Калиниченко, А.С.Клещев, В.А.Серебряков, С.Д.Кузнецов и др.
Среди зарубежных исследователей рассматриваемую проблематику разрабатывали Э.Кодд, К.Дейт, Д.Мейер, Х.Дарвен, Дж.Ульман, Дж.Уидом, П.Чен, Э.Дейкстра, Д.Скотт, Ч.Хоар, М.Стоунбрейкер, Д.Девитт, Г.Гарсиа-Молина, Д.Флореску, Й.Камбаяши, К.Стрейчи, Н.Руссопулос, Дж.Хиндли, М.Гордон, Л.Карделли, П.Лендин, Д.Тернер, Дж.Хьюс, С.Пейтон-Джоунс, П.-Л.Кюрьен, Дж.Рейнолдс, К.Баркер, Р.Снодграсс, С.Абитебуль, Г.Плоткин, Р.Милнер, М.Броди и др.
В этих условиях весьма существенной проблемой становится разработка функционально полной, «сквозной» технологической схемы интеграции данных в гетерогенных КПК, поддержанной многоуровневыми моделями данных и инструментальными средствами.
Систематический анализ трудов перечисленных исследователей привел к формированию основных положений и проведению комплекса исследований по созданию технологии интеграции данных в гетерогенных КПК, представляющей собой крупную научную проблему с важным народнохозяйственным значением.
Актуальность работы подтверждается также поддержкой, оказанной Microsoft Research Ltd. (договор №83-3-042-024), РФФИ (гранты №96-01-01923, №99-01-01229, №01-07-90309, №02-01-00616, №03-01-06339, №04-07-90156, №07-07-08017) и НИУ ВШЭ.
Цель диссертационного исследования состоит в разработке технологии интеграции данных в гетерогенных КПК, направленной на повышение эффективности (в смысле сокращения сроков и снижения стоимости) проектирования, реализации и последующего расширения программных систем рассматриваемого класса и масштаба.
При этом основными задачами, решаемыми в работе, являются:
создание концептуальной схемы технологии интеграции данных в гетерогенных КПК с реинжинирингом;
построение математических объектных моделей для представления, интеграции (на базе семантических сетей с фреймовой визуализацией) и манипулирования контентом (на основе абстрактной машины) гетерогенных КПК;
создание семантически ориентированного инструментально-технологического программного комплекса, поддерживающего интегрированное представление (ИС ConceptModeller) и манипулирование контентом (ИС управления контентом) КПК;
реализация, внедрение и апробация прототипов и полномасштабных КПК.
Необходимость разработки перечисленных моделей и поддерживающих их инструментальных средств вызывается, в частности, такими специфическими характеристиками КПК, как их гетерогенность и различная степень структурированности их компонент, которым не в полной мере отвечают существующие методологии проектирования ПО (MSF, RUP, CDM и др.) и инструментальные средства на их основе.
Методы исследования, примененные для решения поставленных задач, основаны на синтезе фундаментальных положений теории конечных последовательностей, теории переменных областей Д.Скотта, теории семантических сетей и теории фреймов.
Научная новизна результатов работы. В результате анализа динамических взаимосвязей важнейших факторов, влияющих на развитие исследуемого класса программных систем, сделан вывод о необходимости создания новой технологии интеграции данных в КПК и разработана ее общая схема. В отличие от существующих схем проектирования ИС для Интернет-среды, основанных на стандартах и подходах XML, OMG, MDC, WfMC, ISO/IEC и др., созданная в настоящей работе технологическая схема интеграции поддержана как инструментальными средствами, так и математическими моделями, что обеспечивает ее методологическую неразрывность и формализуемость, в т.ч. на семантическом уровне.
Разработанный технологический подход к интеграции данных в КПК приводит к практически приемлемым для крупных и сложных ИС значениям важнейших эксплуатационных характеристик, которые до настоящего времени не были достигнуты посредством теоретически важных подходов, предложенных зарубежными коллективами OASIS, OMG, OGC, W3C и др., а также отечественными научными группами (Л.А.Калиниченко, А.С.Клещев и др.), направленных на онтологическое моделирование, интероперабельность и интеграцию гетерогенных компонент. Таким образом, в условиях неоднородности подходов и стандартов интеграции данных в КПК, предложена унифицирующая их целостная технологическая основа, включающая достаточно универсальные математические модели и поддерживающие инструментальные средства и позволяющая адекватно реализовать схему интеграции данных таких программных систем.
Разработаны модели как для представления объектов данных (на основе переменных доменов) и инструментальных средств так и для манипулирования такими объектами (на основе абстрактных машин), которые в более полной мере, чем традиционные (например, ER-модель), учитывают особенности гетерогенных КПК с компонентами различной степени структурированности.
При этом модель манипулирования объектами данных, основанная на управлении состояниями контента, расширяет спектр исследуемых объектов данных до практически произвольных хранилищ информации (включая базы данных и метаданных), поддерживающих как современные архитектуры КПК, так и программные системы промежуточных и «унаследованных» типов.
Математические модели интеграции данных в КПК поддержаны новыми инструментальными средствами для предметно-ориентированного представления объектов данных при помощи семантических сетей с фреймовой визуализацией (ConceptModeller), а также для управления контентом на основе абстрактной машины (ИСУК).
Целостный, интегрированный подход к интеграции данных в КПК, объединяющий семейство математических моделей с программным комплексом поддерживающих инструментальных средств, значительно сокращает сроки и стоимость внедрения гетерогенных КПК по сравнению с существующими аналогами.
На защиту выносятся следующие положения:
общая технологическая схема интеграции данных в КПК;
семейство моделей сценарного представления и ситуативного манипулирования объектами данных КПК;
семейство предметно-ориентированных инструментальных средств для интеграции данных в гетерогенных КПК и управления их контентом;
архитектурно-интерфейсная схема корпоративного портала как метанадстройки над гетерогенными компонентами КПК, манипулирующей их контентом;
архитектурно-технологические схемы разработки прототипов и полномасштабных прикладных гетерогенных КПК на основе Интернет- и Интранет-порталов.
Практическая значимость проведенных исследований и полученных результатов заключается в создании эффективных моделей, методов и инструментальных средств, поддерживающих технологию интеграции данных в КПК, содержащих гетерогенные компоненты. Данный тип программных комплексов является одним из наиболее сложных прикладных информационных систем, критических для деятельности крупных организаций. Разработанная технология для гетерогенных компонент позволяет существенно (в среднем – на 30-40%) сократить сроки и стоимость разработки интегрированных КПК в таких индустриальных сферах, как учет и планирование корпоративных ресурсов, управление производственными процессами, электронная коммерция и др.
На протяжении ряда лет разработанная технология, включающая комплекс инструментальных средств компонентной интеграции данных в гетерогенных КПК и управления их контентом (ConceptModeller, ИСУК) экспериментально проверялась, развивалась и апробировалась. Опыт внедрения и эксплуатации реализованных на ее основе полномасштабных прикладных КПК для учета и управления производственными ресурсами на крупных предприятиях различных направлений нефтегазовой отрасли, лесной промышленности, логистики, производства мультимедийной продукции и др., программ и курсов подготовки специалистов по проектированию ПО в ведущих образовательных учреждениях (МИФИ, МФТИ, МГУПИ, КГТУ, ЛАНИТ, Softline, ИНТУИТ, ТЕКАМА и др.) подтвердил практическую значимость основных положений диссертации.
Достоверность. Достоверность разработанных в диссертации моделей, методов, инструментальных средств, архитектурно-интерфейсных схем, составляющих технологию интеграции данных в гетерогенных КПК, а также программных прототипов и реализаций, подтверждается актами о внедрении, результатами научных семинаров в МИФИ, МИЭМ, ИПУ РАН, ИМАШ РАН и УГАТУ (2005-2011), а также призами и дипломами научных конференций «Технологии Microsoft в теории и практике программирования» (Москва, МГУ, 2004), «Международная Интернет-конференция по современным проблемам машиноведения» (Москва, ИМАШ РАН, 2005) и “International Multi-Conference on Complexity, Informatics and Cybernetics” (Орландо, США, 2011).
Апробация работы. Развитые в работе модели, методы и средства – событийно-ориентированная модель данных с абстрактными машинами (АМ) на состояниях, инструментальные средства (ConceptModeller, ИСУК) для корпоративных программных комплексов,– положены в основу внедрения гетерогенного КПК в Международной Группе Компаний (МГК) "ИТЕРА" с численностью персонала около 10 тыс. человек. Промышленная эксплуатация КПК приносит значительную (в среднем около 30-40% по сравнению с аналогами) экономию по срокам и стоимости внедрения, при этом существенно повышается эффективность организации управления контентом.
Результаты диссертационного исследования докладывались и обсуждались на III-XI Международных конференциях "Computer Science and Information Technologies" (Уфа, 2001, 2003, 2005, 2010; Патрас (Греция), 2002; Будапешт (Венгрия), 2004; Карлсруэ (Германия), 2006; Красноусольск, 2007; Анталия (Турция), 2008; Ретимнон (Греция), 2009), V Международной конференции "Computer Science and Information Technology" (Ереван (Армения), 2005), I и II Международных конференциях "Web Information Systems and Technologies" (Майами (США); 2005, Сетубал (Португалия), 2006), I Международном симпозиуме "Knowledge Communication and Conferences" (Орландо (США), 2006), I и III Международных конференциях "Enterprise Information Systems and Web Technologies" (Орландо (США), 2007, 2009), XI, XIII, XIV и XV Международных мультиконференциях "International World Multi-Conference on Systemics, Cybernetics and Informatics" (Орландо (США), 2007, 2009-2011), II Международной конференции "International Conference on Information Society" (Мерриллвилл, (США), 2007), XIII Международной конференции "International Conference on Enterprise Information Systems" (Пекин (Китай), 2011), XVII Международной конференции "International Conference on Conceptual Structures" (Москва, НИУ ВШЭ, 2009), VIII Международном симпозиуме "Technomat and Infotel" (Бургас (Болгария), 2006), IV Международном российско-германском научном семинаре "Инновации в ИТ: теория и практика" (Уфа, 2011), XXXV-XXXVIII Международных конференциях «Информационные технологии в науке, образовании, телекоммуникации и бизнесе» (Гурзуф, Украина, 2008-2011), ХV Международном научно-техническом семинаре «Современные технологии в задачах управления, автоматики и обработки информации» (Алушта (Украина), 2006), I Международной конференции "International Conference on Computer Science and Information Technologies" (Львов (Украина), 2006), I и II научных конференциях "Аппликативные вычислительные системы" (Москва, 2009, 2010), Международной нефтегазовой технической конференции и выставке «Мир технологий для уникальных ресурсов» (Москва, 2006), Ежегодной научной конференции «Ломоносовские чтения» (Москва, 2006), VIII, X-XII Международных конференциях «Корпоративные системы» (Москва, 2003, 2005-2007), I-VI Международных конференциях "Software Engineering Conference" (Москва, 2005-2010), II-III Всероссийских научных конференциях с международным участием «Технологии информатизации профессиональной деятельности» (Ижевск, 2008, 2011), I Международной научно-практической конференции «Современные информационные технологии и IT-образование» (Москва, 2005), II-IV Международных конференциях «Управление развитием крупномасштабных систем» (Москва, ИПУ РАН, 2008-2010), I Международной конференции «Технологии Microsoft в научных исследованиях и высшем образовании» (Москва, 2003), XI, XII, XIV, XVI Всероссийских конференциях «Проблемы информационной безопасности в высшей школе» (Москва, 2004, 2005, 2007, 2009), IX Всероссийской объединенной конференции «Интернет и современное общество» (С.-Петербург, 2006), I Всероссийской конференции «Инфокоммуникации XXI века – будущее за тобой!» (Москва, 2006), VI-VIII Всероссийских научных конференциях с международным участием «Информация, инновации, инвестиции» (Пермь, 2005-2007), Международных научно-практических Интернет-конференциях «Информационные технологии в науке и образовании» (Шахты, 2005, 2006; Железноводск, 2007) и др.
Публикации. Автором опубликовано свыше 100 печатных работ, в т.ч. по основным результатам исследования – свыше 80 работ (основные из которых, [1-46], приведены ниже), включая 4 монографии [1-4] и более 15 работ в изданиях из перечня ведущих рецензируемых научных изданий, рекомендованного ВАК РФ для публикации основных результатов диссертаций [5-19]. Общий объем публикаций по теме исследования – около 90 п.л.
Все результаты, которые включены в диссертацию, получены лично автором.
Структура и объем диссертации. Диссертация состоит из введения, 5 глав, заключения, списка литературы и приложений. Основная часть диссертации содержит 320 страниц машинописного текста, включая 89 рисунков, 22 таблицы, список литературы из 305 наименований.
Комплекс критериев и результаты сравнительного анализа архитектурных подходов 2 Сравнительный анализ методологий разработки ИС
Впервые подходы к решению подобных задач были намечены, повидимому, в 60-х годах в форме узкоспециализированных корпоративных программных комплексов на основе мэйнфреймовых СУБД с удаленным телекоммуникационным доступом, не основанных на моделях данных и не учитывавших ряда современных тенденций корпоративных сетевых вычислений, в частности, развития интернет-технологий [66]. Тем не менее, такие особенности архитектуры, как высокая эффективность вычислений и отказоустойчивость, защищенность от ошибок персонала и системных сбоев, позволяют решениям, основанным на файл-серверном подходе (например, ранних версий SAP производства Software AG, www.sap.com), сосуществовать с современными технологиями.
В рамках данной архитектуры вся бизнес-логика приложения сосредоточена на сервере – компьютере высокой вычислительной мощности, ресурсы (дисковую и оперативную память, данные и программы) которого совместно используют компьютеры пользователей ПО. При этом возможны монопольный режим использования ресурсов сервера, коллективный разделяемый (в частности, с приоритетами) и удаленный доступ [66].
Прикладные ИС сетевой архитектуры клиент-сервер [252] состоят из серверной (для оптимизации многопользовательского управления доступом) и клиентской (для организации взаимодействия пользователей с данными, реализации бизнес-логики и запросов) компонент. Поскольку клиентская и серверная части приложения совместно распределяют загрузку между собой, архитектура клиент-сервер потенциально обеспечивает более высокую производительность, чем файл-серверная.
Как для мэйнфреймов, так и в архитектуре клиент-сервер запросы удаленных пользователей обрабатываются централизованно. При этом основное отличие архитектур состоит в том, что клиент в системах клиентсервер способен самостоятельно обрабатывать информацию, а терминалы мэйнфрейма действуют лишь как устройства ввода/вывода.
В архитектуре клиент-сервер выделяют уровни приложения (доступ к файлам, БД и обработка транзакций), промежуточного слоя (далее ППО [252] – поддержка передачи данных, служба каталогов и защита информации), а также транспортный (передача информации и взаимодействие между разнородными компьютерами на основе протоколов – TCP/IP, SPX/IPX, SNA) [66]) и сетевой (физическая пересылка данных) уровни. Преимущества ППО выводят на качественно новый уровень решение проблемы проектирования ИС в неоднородной вычислительной среде; коммуникации, зачастую, реализуются через удаленные вызовы процедур (RPC).
При корпоративной эксплуатации программных комплексов дорогостоящие высокопроизводительные серверы совместно обслуживают тысячи клиентов, балансируя загрузку и обеспечивая более эффективное использование вычислительных ресурсов. Кроме того, крупные предприятия могут сохранить свои вложения в существующие клиентские технологии, наращивая масштабы систем за счет дополнительных или более мощных серверов. Централизация корпоративных данных в архитектуре клиент-сервер значительно повышает эффективность их использования. Хотя затраты на аппаратную часть проекта в архитектуре клиент-сервер существенно меньше, чем для мэйнфреймов и мини-ЭВМ, обучение и подготовка квалифицированных разработчиков, администраторов и пользователей требуют значительных расходов. Благодаря возможности балансировки загруженности системы, а также объектно-ориентированным средствам разработки (CASE, RAD) [252] и дружественному графическому интерфейсу (GUI), схема клиентсервер упрощает проектирование, реализацию и сопровождение корпоративных программных комплексов. Многие системы на базе серверов предусматривают интеграцию с унаследованными данными, размещенными на мэйнфреймах, где применяются DB2, ISAM, IMS и другие СУБД [66]. С переходом к архитектуре клиент-сервер решение задач анализа больших объемов данных переходит от системных программистов и администраторов к бизнес-аналитикам – пользователям ЛВС. Разработка приложений клиент-сервер, которые, как правило, компактнее и производительнее традиционных, осуществляется в среднем вдвое быстрее и обходится приблизительно на 30% дешевле по сравнению с ПО на основе ранних архитектурных подходов [252].
Архитектура клиент-сервер и сопутствующие ей инструментальные средства являются основой высокопроизводительных программных комплексов, потенциально обеспечивающих доступ к разнообразным источникам данных. Рост производительности инструментальных средств проектирования и реализации снижает совокупную стоимость создания приложений (TCO) [66].
Промежуточным программным обеспечением (ППО, или, иначе, middleware) называется ПО, связывающее приложение с необходимыми программными ресурсами (а, возможно, также и приложениями) [66]. К основным преимуществам ППО относятся облегчение доступа приложений к ресурсам (ППО позволяет разработчикам программных систем сосредоточиться на проектировании бизнес-логики, а не механизмов доступа к ресурсам) и ускорение процессов взаимодействия (ППО увеличивает производительность ИС) [8]. Middleware делят на ППО обеспечения взаимодействия между активным (реализующим бизнес-логику) приложением и пассивным ресурсом (сервер БД) и ППО обеспечения взаимодействия между активными приложениями. Первую группу можно разбить на ППО для работы с серверами БД (для предоставления API-доступа к БД) и мониторы обработки транзакций или TP-мониторы (для оптимизации работы системы). К первому типу ППО относятся средства реализации спецификаций ODBC (Object Database Connectivity), OLE DB (Object Linking and Embedding Database) и JDBC (Java Database Connectivity). Средства ODBC дают разработчику независимый от СУБД набор функций для обработки данных [66].
TP-мониторы (Microsoft Transaction Server, BEA Systems Tuxedo, IBM CICS, Transarc Encina и др. [77]) осуществляют мультиплексирование (накопление или смешивание) запросов, направляя их пакеты в рамках одного подключения к БД, а также предоставляют приложениям виртуальный доступ к разнородным БД. ППО, обеспечивающее взаимодействие между активными приложениями, можно условно разделить на три основных типа: ППО удаленного вызова процедур (RPC, Remote Procedure Call), ППО передачи сообщений (МОМ, Message Oriented Middleware) и ППО брокеров объектных запросов (ORB, Object Request Broker). Средства RPC обеспечивают выделение фрагмента проектируемого программного комплекса для выполнения на удаленном компьютере с "прозрачными" вызовами удаленных методов обработки данных. Код RPC присоединяется к обоим приложениям – источнику и приемнику, осуществляет преобразования данных и активирует процедуры передачи данных по сети. Распространение языка Java привело к появлению аналога RPC для Java-приложений — RMI (Remote Method Invocation) [66].
Использование переменных объектов для концептуализации гетерогенных КПК
В настоящее время в интернет/интранет-среде традиционные средства онлайновой транзакционной (OLTP) и аналитической (OLAP) обработки данных постепенно сменяются технологией «точечных продаж» (Point-Of-Sale, POS). Расширяется сфера применения БД электронной коммерции (ecommerce), включающих решения для частных лиц «клиент-клиент» (customero-customer, C2C) и «бизнес-клиент» (businesso-customer, B2C), а также для корпораций типа «бизнес-бизнес» (businesso-business, B2B) [135], [136], [182] и др.
В XXI веке перспективными направлениями конвергенции БД и интернет явялются интерактивные ИС для мобильных устройств, POS-транзакций, ассоциаций поставщиков продукции и др. С точки зрения интегральной оценки СУБД в аспектах МД, сетевых технологий и инструментальных средств можно выделить Oracle Server с поддержкой технологии grid-вычислений, IBM DB2 и Microsoft SQL Server.
В начале 2000-х гг. возник класс постреляционных СУБД (например, InterSystems Cache [62]) на основе иерархических многомерных МД, ориентированных на высокопроизводительную обработку транзакций в больших и сверхбольших (терабайтных) БД и масштабируемых корпоративных ИС, в т.ч. в среде интернет. В 2010-х гг. также возник класс noSQL СУБД, не гарантирующих согласованного состояния данных (Kassandra, Hadoop, F1 и др.). Несмотря на управление весьма большими объемами данных, эти СУБД не получили широкого распространения для индустриальных КПК в силу высокой сложности МД и специфических требований к проектированию БД.
Распределенные гетерогенные аппаратно-программные комплексы федеративного уровня в глобальной среде потенциально реализуемы посредством технологии grid-инфраструктуры для доступа к высокопроизводительным вычислительным ресурсам [187] с интегрированным увеличением мощности БД (исследовательские прототипы включают терабайтные БД CERN UKHEC Grid Testbeds, NASA EOS/DIS (www.eos.nasa.gov) и др.) [110]. При общей перспективности grid (динамическое распределение корпоративных вычислительных ресурсов с минимизацией перемещения данных между «узлами», облегчение администрирования ИС), комплекс технологических, юридических и политических проблем (единая глобальная авторизация, аутентификация и пространство имен, управление правами использования ресурсов с привилегиями и приоритетами, защита БД) откладывает индустриальную реализацию КПК на продолжительное время.
Таким образом, традиционные МД не позволяют организовать формализованные процедуры поиска, ассоциирования и группировки гетерогенных (мультимедийных) ОД. Необходимость интеграции данных и процедур манипулирования ими расширяет традиционные двух- и трехуровневые архитектуры в направлениях активных сценарно ориентированных БД (на основе триггеров и хранимых процедур) и потоков работ (с вычислениями по схеме «запрос-ответ»).
Развитие МД, ЯМОД семейства SQL и ОРСУБД прогнозируется по направлениям, связанным с XML, Java-технологиями, мобильными интернет-БД, распределенной обработкой транзакций и ООБД; прототипы стандартов предложены ODMG (Object Database Management Group, www.odmg.org).
Тенденции развития СУБД диктуют необходимость появления новых методов анализа и обработки весьма значительных (терабайтных и более) объемов данных, включая крупные научные и корпоративные БД, а также развития технологий анализа поточного ввода, добычи (mining) и организации хранилищ (warehouse) данных, проектирования интеллектуальных информационно-программных комплексов с персонализацией интерфейсов. Несмотря на рост числа примитивных интернет-БД, остается нерешенным целый ряд проблем управления ОД в глобальной среде: моделирование новых (пространственных, временных, графических и др.) типов данных, управление большими (петабайтными) гетерогенными и распределенными БД, персонализированная добыча и анализ данных, интеграция гетерогенных ОД, автоматизация проектирования интернет-БД и ИС [180]. Значительные сложности представляет масштабируемость высоконормализованных БД (традиционное преобразование иерархии неизбыточных таблиц в плоскую таблицу приводит к существенному падению производительности при обновлениях, а также к риску нарушения целостности из-за распределенности и дублирования данных). Внедрение стандарта SQL/99 в СУБД потенциально позволяет решить проблему масштабируемости за счет проектирования БД с естественной иерархической структурой без построения III нормальной формы и последующей денормализации (побочный эффект состоит в значительной ресурсоемкости реорганизации БД). При этом наиболее легко адаптируемыми к SQL/99 потенциально оказываются СУБД на основе независимых логических файлов (Adabas, Focus, Datacom/DB и др.) и иерархические СУБД (SAS System 2000, IBM IMS и др.).
Перспективным направлением развития корпоративных и федеративных СУБД являются облачные и grid-технология, однако проблемы безопасного управления данными (персональные данные, коммерческая и государственная тайна при публикации в интернет и др.) позволяют реализовать их в КПК в ближайшем будущем.
Выбор программно-аппаратной платформы и инструментальных средств для интерации данных в корпоративных интернет-ИС
В технологическом аспекте следует разделять Web на два поколения – гипермедийный (Web-1) и семантический Web (Web-2). Первое поколение Web (доминировало примерно до 2005 г.) преимущественно ориентировано на поддержку статических разнородных информационных ресурсов с нерасширяемой форматной разметкой (HTML), идентификацией по местоположению (URL), а также доступом на основе гиперссылок и не позволяет производить манипулирование метаданными, описывающими их структуру и способы управления ими, а также верификацию данных. В отличие от него, современная платформа Web 2.0 нацелена на интегрированное использование гетерогенных данных и информационных ресурсов в глобальной среде их взаимодействия (включающей интернет-, интранет- экстранет-, ERP и унаследованные ИС) на основе технологий и моделей БД, а также расширенного языка разметки XML, позволяющего конструировать определения и параметры глобально распределенных гетерогенных информационных структур, а также средства построения интерфейсов, запросов, обеспечения их информационной целостности, безопасности и др.
В основе платформы Web 2.0 находится семейство XML-технологий и стандартов, разработанных консорциумом W3C и использующих вычислительные модели, рассмотренные в разделе Главы 1, посвященном эволюции СУБД и моделям данных. В этой связи платформа в ряде исследований называется платформой XML.
В перспективе планируется обобщение стандартов идентификации информационных ресурсов с URL до URI (Universal Resource Identifier) и протоколов взаимодействия с HTTP (HyperText Transfer Protocol) до XMLP (XML Protocol). В отношении семантического Web планируется внедрение W3Cстандартов для определения данных об информационных ресурсах RDF (Resource Definition Framework), а также для языка описания онтологий на основе XML (подробнее об онтологическом моделировании см. подраздел главы I о методологии IDEF5). Важнейшим направлением развития интернет-технологий и поддерживающих их МД является стандартизация архитектуры функциональной надстройки для интеграции и обмена данными в КПК (включая программные интерфейсы). Разработанный W3C в этих целях стандарт веб-сервисов включает общий архитектурный, языковой (WSDL, Web Service Description Language) и протокольный (SOAP, HTTP, MIME) аспекты. Концепция веб-сервисов является центральной для интернет-платформы Microsoft .NET (см. раздел Главы 1 о современных интернет-архитектурах) и применяется в настоящей работе для построения семантически ориентированных CASE-средств.
Важным принципом платформы Web 2.0 является обеспечение преемственности с Web-1, прежде всего в отношении языков разметки HTML и XML (первый является конкретизацией второго; корректность интерпретации обеспечивается посредством определений типов документов DTD – аналогов схемы БД – формирующих язык интерпретации XHTML).
Платформа XML является модульной расширяемой многоуровневой (с физическим, логическим и семантическим представлениями) системой функционально специализированных языков и стандартов представления данных и информационных ресурсов с единой концептуально-синтаксической основой и поддержкой гетерогенных, в т.ч. (слабо)структурированных (мета)данных на вербальном и формальном уровнях.
Платформе XML сопутствует семейство стандартов, получивших название окружения XML и включающее фундаментальные (InfoSet, Namespace, XML), структурообразующие (XPointer, XLink), форматирования и трансформации (XSL, XSLT, CSS), представления метаданных (DTD, XML Schema, Relax NG, RDF, RDFS, OWL), языков запросов (XQuery, XPath, XSLT), интерфейсов с прикладным ПО (DOM, SAX), обеспечения преемственности (XHTML, XML Base), транспорта данных (XML Protocol, XForms, SOAP), идентификации информационных ресурсов (URI, URL, URN), информационной безопасности (XML Signature, XML Description), архитектуры функциональной надстройки (XSDL), вспомогательные (Xinclude, Xfragment, Canonical XML, XPath) и вертикальные (MathML, cXML, WML, GML, UBL, XMI и др.) стандарты.
Под XML-документом имеется в виду единица информационных ресурсов в глобальной среде вычислений (Web), включающая файлы в формате XML, а также, возможно, гетерогенные, в т.ч. слабоструктурированные (возможно, мультимедийные) данные. В этом смысле XML является ЯООД, основанным на принципе самоописываемости ОД, при этом DTD является функциональным аналогом схемы данных в РБД, а XML Schema – ЯООМД.
Расширяемость XML обусловлена его метаязыковой природой, а также применением механизма пространств имен (именованных множеств символов) для типов и атрибутов элементов XML-документов. Важной особенностью стандарта XML является синтаксическое единство его компонент.
Унифицированной модели данных для XML не существует, целенаправленные построения концерном W3C не ведутся в силу весьма высокой сложности проблематики. Модели данных разработаны лишь для структурных аспектов платформы; создан стандарт документной объектной модели DOM для ее окружения; намечены подходы к моделированию данных в ЯМОД XQuery. Среди подходов к моделированию XML выделяются графовый (в т.ч. с явной типизацией для XPath) и объектный (в частности, на основе DOM). Архитектура ИС для интернет-среды подробно описана в разделе, посвященном современным архитектурным подходам в интернет-среде (Глава I). Отметим ее многоуровневый характер (разделяют физический (файлы и URI), логический (структурная разметка, ограничения целостности и функции манипулирования ОД), а также семантический (смысл в контексте предметной области, логический вывод) уровни моделирования); стандарты для уровней описаны выше.
Особенности внедрения и использования программного средства ConceptModeller для интеграции данных
Понятие фрейма как модели семантической сети развито в трудах Н. Руссопулоса, В. Э. Вольфенгагена и др. [153], [186], [236], [246], [259], [260], [290]. Семантические сети представляют собой вид ориентированных графов, интуитивно близкий ассоциативному мышлению человека.
Фреймом называется отношение, установленное на концептах [260]. Применение фреймов для моделирования динамики ситуационных изменений ПрО открывает возможность решения задач интеграции и поддержания целостности гетерогенных КПК. Эти задачи особенно важны для КПК, содержащих сотни тысяч объектов и соотнесений и подверженных быстрой смене состояний с течением времени. При этом принцип свертывания является алгебраическим аналогом фрейма, поскольку оба играют роль ограничителя изменений предметной области. Различным типам фреймов в нотации Руссопулоса [260] можно поставить в соответствие UML-диаграммы (классов, ситуаций и др.). Таким образом, появляется возможность автоматизированного построения МОД с помощью предметно-ориентированного CASE-средства с получением строгого математического описания процесса моделирования и соответствующего ему графического представления (фрагмента) предметной области в виде фрейма (с автоматизированной трансляцией в UML).
Переменная фрейма называется свободной, если она не находится в области действия кванторов, и связанной в противном случае. Тип связанной переменной обозначается кванторной дугой, в направлении от переменной к типу и может содержать квантор с ограничением целостности. Фрейм без свободных переменных называется замкнутым, и открытым, если не является замкнутым.
Для представления знаний в семантической сети используется разбиение ОД предметной области на категории (классы) на основе общности свойств, что позволяет рассматривать совокупности элементов внутри каждого класса. Такое представление знаний задает на множестве выделенных в предметной области ОД рефлексивное, антисимметричное и транзитивное отношение включения (или частичного порядка). Такая классификация называется ISA-иерархией, графически представляется диаграммами Хассе и моделирует наследование свойств ОД, что облегчает поиск объектов данных в модели интегрированной предметной области КПК, а также позволяет поддерживать семантическую целостность интегрированных ИС учета ресурсов.
Значимость нотации семантических сетей для построения моделей ПрО, поддержки целостности и полноты ИС и БД [260] привела к появлению CASE-методологии IDEF1X, особенно важной для проектирования гетерогенных КПК. Выбор КМ на базе семантических сетей обусловлен структурированностью, масштабируемостью и агрегируемостью, адекватным моделированием сложных объектов, инкапсуляцией метаданных, семантичностью и иерархичностью, свойственных гетерогенным КПК, а также наглядностью. Инструментарий для проектирования концептуальной схемы интегрированных гетерогенных ОД в КПК основан на семантических сетях в форме ориентированных графов, включающих поименованные вершины, дуги, а также, возможно, другие графы (все перечисленные элементы характеризуют семантику предметной области).
При этом параллельно используются графическая (в целях визуализации представления модели ПрО) и текстовая нотация в форме (предикатных) функций, которая прозрачно трансформируется в -исчисление. Для соответствия нотаций текстовой скобочной структуре -термов и языковых конструкций используются прямоугольники, объемлющие фреймы.
Адаптация тероии семантических сетей для использования совместно с КМ предполагает разделение концептов на первичные (generic), константы или конкретизации (instantiation) и переменные или слоты (slot). Конкретизации соответствуют означенным (связанным) переменным -термов и иллюстрируют ОД, возникающие как означивания переменных концептов-типов.