Научная статья на тему 'Теоретические и методологические основы  построения корпоративных порталов'

Теоретические и методологические основы построения корпоративных порталов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
154
28
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зыков С. В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Theoretical and methodological foundations of enterprise portal development

The paper outlines enterprise portal development methodology, which embraces their entire lifecycle. Syntax and semantics models for problem domain and computational environment are given, their approbation results are summarized.

Текст научной работы на тему «Теоретические и методологические основы построения корпоративных порталов»

Теоретические и методологические основы построения

корпоративных порталов

Зыков С.В. ([email protected]) ООО «Нефтегазовая компания «ИТЕРА»

Введение

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

Растущее влияние ИТ в обществе требует интеграции программных комплексов, их данных и метаданных, созданных на основе различных концепций, методологий, моделей и подходов, унификация которых не была получена ни ведущими компаниями-разработчиками ПО (Microsoft, IBM, Oracle, SAP, BEA и др.), ни крупными научными коллективами.

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

Возникающие при этом проблемы вызваны неоднородностью методологий, моделей, стандартов, языковых и инструментальных средств автоматизированного проектирования (CASE) и быстрой реализации (RAD) ПО и осложняют непрерывную поддержку предметно-ориентированного ЖЦ, расширения ИС и персонализацию интерфейсов доступа к объектам данных (ОД) и объектам метаданных (ОМД).

Современные схемы проектирования ПО на основе XML и иных широко известных стандартов (OMG, MDC, WfMC, ISO/IEC) содержат методологические «разрывы» вследствие трудно формализуемой семантики метаданных, регламентирующих порядок доступа к ОД. Подходы, нацеленные на интероперабельность, интеграцию неоднородных ИС и унификацию доступа (OASIS, OMG, OGC, W3C, IBM, Microsoft, Ariba и др.), не достигли индустриальной масштабируемости в силу высокой сложности отображения объектно-реляционной схемы данных в XML-представление, особенно для Интернет-порталов на основе гетерогенных ИС, каждая из которых манипулирует тем или иным набором БД [11].

Отсутствие единой методологической схемы проектирования, реализации, внедрения и сопровождения корпоративного Интернет-ПО носит принципиальный характер [10,11] именно в силу недостаточно универсального теоретико-модельного обобщения.

Методология интегрированного проектирования и реализации ИС включает семейство моделей для предметной области (ПрО) [10] и среды вычислений (в форме абстрактной машины (АМ) [1]), а также инструментальные средства: ConceptModeller для визуального предметно-ориентированного проектирования ПО, ИС управления контентом (ИСУК) [1,8].

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

Общее описание методологии

Методология обеспечивает объектное многоуровневое, с детализацией (мета)данных, итеративное моделирование ПрО и проектирование ПО в терминах О(М)Д, языковых и программных средств работы с ними. При этом обеспечивается возможность реинжиниринга от схем О(М)Д ИС до ПрО, а также актуальность, полнота, непротиворечивость и целостность О(М)Д на всем ЖЦ ИС.

Методология синтезирует фундаментальные положения теорий конечных последовательностей, категорий [1], вычислений [5] и семантических сетей [5]. В качестве вычислительной модели данных предложено исчисление ОД, синтезирующее основы теорий конечных последовательностей, вычислений (по Д. Скотту), категорий, семантических сетей и абстрактных машин (АМ), а также использующее принцип свертывания (концептуализации).

Методология включает модели данных для ПрО (на основе переменных доменов) и для инструментальных средств (на основе АМ), которые в более полной мере, чем традиционные (например, ER-модель [2]), учитывают особенности динамики и статики гетерогенных слабоструктурированных сред.

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

Модель предметной области

Рассмотрение ОД модели ПрО происходит по схеме «класс ^ объект ^ значение», что, с одной стороны, обеспечивает преемственность с классическим подходом ООП, а с другой -уточняет существующие модельные обобщения ([6] и др.) для случая корпоративных комплексов гетерогенных Интернет-ИС. При этом, классом называется семейство ОД интегрированной ПрО, под объектом понимается конкретизация класса шаблоном ИС управления контентом (ИСУК), а значение формируется той же ИС в виде информационной страницы корпоративного Интернет-портала (рис.2). Согласно одному из ранних подходов [6], ОД представимы в виде троек <концепт, индивид, состояние>, где концепт понимается как совокупность функций с одной и той же областью определения и одной и той же областью значений. Индивид означает сущность, выделяемую экспертом в ПрО указанием идентифицирующих свойств. Смена состояний моделирует динамику индивидов ПрО.

Важными преимуществами предлагаемой модели являются более адекватное отображение динамики и статики гетерогенных слабоструктурированных предметных областей, а также поддержка событийно-ориентированного управления данными и метаданными в глобальной среде вычислений. В архитектурно-интерфейсном аспекте вычислительная модель обеспечивает непрерывное итеративное проектирование открытых, распределенных, интероперабельных ИС на основе методологий UML, BPR, COM и CORBA. В отношении реализации поддерживается интегрированная (с использованием веб-сервисов) front-end/back-end обработка информации из различных типов хранилищ данных для разнородных корпоративных ИС на основе событийно-управляемых процедур (в форме скриптов) и вычислительных систем на базе динамического SQL.

Методология «сквозного» проектирования, реализации и сопровождения корпоративных порталов (рис.1) обеспечивает оперативную покомпонентную разработку открытых расширяемых программных комплексов в Интернет-среде с непрерывным контролем адекватности и целостности. В процессе проектирования спецификация ИС трансформируется от понятий ПрО к сущностям модели и далее, посредством СЛБЕ-инструментов,- к системе фреймов и схеме объектно-реляционных Б(М)Д с АМ в качестве средства манипулирования О(М)Д и описанию архитектур и интерфейсов (компонент) целевой ИС.

Моделирование ПрО основано на схеме двукратного свертывания [6], т.е. на установлении отношений между классами C ОД интегрированной ПрО D, которые в общем случае моделируются доменами:

C = Iw:[D] V v:D (w(v) о А) = {v:D | А}, где:

C и D находятся в отношении частичного порядка (C ISA D);

А - критерий принадлежности ОД w к классу C с точки зрения предметного эксперта. Класс сложных («многомерных») ОД представим как n-арное отношение между ОД (фреймовое представление бинарного отношения приведено в [2]):

Rn = Iw: [Vi,..,Vn] Vvi:Vi ... Vvn:Vn (w [vb...,Vn] о Г) = {[ vi:Vb...,Vn:Vn] | Г}. Таким образом, произвольный класс ОД представляет собой семейство упорядоченных пар (vi:Vi), где vi - i-й атрибут класса, а Vi - его тип.

Отметим, что в состав атрибутов входят как данные, так и метаданные (размерности объектов, ограничения целостности и др.). К метаданным относится и числовая

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

При конкретизации класса C в соотнесении a1 с шаблоном Ak информационной страницы ИСУК означивание семейства шаблонов M устанавливает в значение «истинно» единственный его элемент mi3 совпадающий по номеру (k) с номером шаблона: M = (mi,..., mk,..., mN), где Vi=1,...,N т;е{0,1}; [M|Ak] = (m1*,., mk*,., mN*), где mi* = 1, i = k и mi* = 0, i * k.

Кроме того, атрибуты метаданных v1,.,vn конкретизируются ОМД согласно условиям ограничений ti, заданных в соотнесении для шаблона Г:

[(v1:Vb...,Vn:Vn)]ti = (ЫЩО,..., Ы№)) = (v1':V1',...,Vn':Vn'), причем V1' ISA V1,..., Vn' ISA Vn.

Второе соотнесение a2 приводит к конкретизации шаблона (v1',.,vn') информационной страницы ИСУК значениями контента (c1,., cn): [(v1':V1',.,vn':Vn')]c = (V/d,..., vn'/cn), где ^Сь..., cn : Сn, причем C1 ISA V1',., Cn ISA Vn'.

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

Классы объектов u определяются дескрипциями Iu A(u) со значениями [Iu A(u)], где A -критерий отбора. Двукратное применение соотнесений a1eA и a2eA из домена соотнесений A переводит эти классы сначала в объекты о = [Iu A(u)] a1, а затем в значения с = o a2.

Двунаправленный характер соотнесений (от классов к значениям и обратно) обеспечивает адекватное моделирование реинжиниринга ПО; механизм дескрипций облегчает построения в обоих направлениях.

Переменные домены O^A) = {o | o : A^T} строятся как семейства объектов o с типами T, полученных из ПрО D с применением предикатов-критериев отбора A, причем совокупность возможных ОД o содержится в D, а действительных O^A) - в T [2].

Исследование взаимодействия классов, объектов и значений позволяет сформулировать основной принцип моделирования:

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

[класс объектов] : соотнесение ^ объект > объект > соотнесение ^ значение У значение, где символ "V обозначает снижение уровня абстракции.

Таким образом, схема (рис.2) иллюстрирует принцип свертывания:

о = [Iu Au]a1 о {о} = faeD | [A (о) ]} и схему исследования ПрО с переходом от классов объектов в языке к таковым в ПрО посредством функции вычисления значения [•], причем классы используются для фиксации объектов и, далее,- значений. Класс объектов описывается критерием отбора A с дескрипцией I. Вычисление значения формирует соответствие между объектами ПрО и языка описания ОД.

1

http://zhurnal.ape.relarn.ru/articles/2005/220.pdf а2

Класс (ХГМЬ)

Photo

-Name : char ■GolorDepth : int ■Resolution : int IG: long ■Width : irrt ■H&ight : int

■Tsmplhjtask : long double

Построение объектов: о = pu Ди] ä{ <=> {о} = {oeD| [До]}

1

Объект (ИСУК).

I 1

Агрегирование объектов: GT(A) = {o | о: А -^Т}

Типизация Т = {v. D ! А}, О/А) ISA Т

1

Значение (портал)

Ж- ЙЁЙ

Рис.2. Модельная составляющая проектирования корпоративных порталов

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

Моделирование среды вычислений

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

Семантика АМУК основана на теории семантических доменов Д.Скотта [5]. Типы атомарных шаблонов (элементов контента) получаются из стандартных доменов, а типы более сложных шаблонов (элементов контента) строятся посредством конструкторов доменов. Формальная семантика АМУК строится по следующей схеме:

1) перечисление стандартных (наиболее часто используемых в рамках модели) доменов;

2) определение конечных (содержащих явно перечислимые элементы) доменов;

3) определение конструкторов (операций построения новых доменов на основе имеющихся), т.е. способов комбинирования доменов;

4) формализация агрегированных доменов на основе атомарных доменов и конструкторов

(последние включают функциональное пространство [Б1^Б2], декартово произведение

*

[В1хВ2х_хБп], последовательность Б и дизъюнктную сумму [Б1+ Б2+.. ,+Бп] ).

Формальный язык АМУК содержит множество выражений Е (константы, идентификаторы I, операция присваивания («записи» контента в «слот» шаблона) и др.) и

множество команд С (сравнение, последовательность команд и др.). Синтаксис АМУК определяется описанием синтаксических доменов (Ide для идентификаторов, Com для команд и Exp для выражений). Система агрегированных доменов АМУК имеет вид:

State = Memory х Input х Output; Memory = Ide ^ [Value + {unbound}]; Input = Value*; Output = Value*; Value = Type1 + Type2 + ...

Домен State состояния АМУК определяется состоянием памяти Memory с учетом значений Value на входе Input (контент) и выходе Output (веб-страница) АМ. Под памятью понимается отображение из домена идентификаторов в домен значений, т.е. аналог связывания переменной со значением в ламбда-исчислении. Для корректной обработки исключительных ситуаций вводится элемент unbound. Домен значений представляет собой дизъюнктную сумму доменов, содержащих существующие в языке АМУК типы контента.

Семантические предложения описывают значения денотатов (правильно построенных конструкций) языка управления О(М)Д АМУК. Денотатом идентификатора при возможности связывания является идентификатор, связанный со значением в форме упорядоченной тройки вида

<значение в памяти, идентификатор, состояние> без смены состояния, а при невозможности - сообщение об ошибке (error):

E [I] s = (m, I = unbound) error, ^ (m, I, s).

Вычисление значения выражения в среде АМУК приводит к такому изменению состояния, что либо происходит связывание переменной со значением, либо (при невозможности связывания) генерируется ошибка:

E : Exp ^ [State ^ [[Value х State] + {error}]].

Вычисление значения команды в среде АМУК приводит к изменению состояния, причем возможно возникновение исключительной ситуации (ошибки):

С : Com ^ [State ^ [State + {error}]].

Семантическое предложение для команды АМУК, выполняющей присваивание контента элементу шаблона приводит к смене состояния с подстановкой значения контента v вместо идентификатора шаблона I в памяти:

C [I=E] = E [E] * ^v (m , i, o) . (m [v/I], i, o).

Конкретизация методологии для Интернет-порталов

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

Для автоматизированной трансляции О(М)Д в схемы целевых Б(М)Д и коды АМ управления контентом (АМУК) разработано предметно-ориентированное инструментальное средство ConceptModeller с визуальной поддержкой семантических сетей, транслирующее

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

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

Апробация методологии

Методология проектирования и реализации практически апробирована при создании ПО управления персоналом UniQue, Интернет- и Интранет-порталов в Международной группе компаний (МГК) "ИТЕРА".

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

В ходе применения методологии проектирования программного комплекса спецификации модели данных ПрО в виде фрагментов семантических сетей, сформированных инструментальным средством визуального предметно-ориентированного фрейм-проектирования ConceptModeller, преобразуются в UML-диаграммы (в т.ч. классов), затем, средствами традиционного CASE-инструментария (например, Oracle Developer/2000) - в схемы Б(М)Д (в форме ERD) и, наконец, в атрибуты графической формы, управляющей публикацией контента ИСУК и результирующей информационной страницы.

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

В качестве среды реализации на основе проведенного сравнительного анализа выбраны CASE- и RAD-комплекс Sybase S-Designor и PowerBuilder, а также язык Perl и СУБД mySQL.

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

Веб-страницы, автоматически сгенерированные посредством ИСУК, представлены на Интранет-портале и официальном Интернет-сайте многопрофильной корпорации МГК «ИТЕРА» (около 150 компаний в более чем 20 странах, около 10 000 сотрудников). Последний ресурс постоянно доступен в глобальной сети Интернет по адресу www.itera.ru.

Для обеспечения уровня индустриальной масштабируемости и отказоустойчивости на основании выявленной системы критериев сравнительного анализа средств рекомендован выбор индустриального инструментального CASE- и RAD- комплекса Oracle Developer/2000 и Oracle Portal.

Разработанная концепция положена в основу внедрения в МГК "ИТЕРА"; компоненты прошли экспериментальную проверку от 2 до 5 лет. В результате внедрения получены более чем 30%-ное сокращение сроков окупаемости (ROI) и уменьшение стоимости внедрения (TCO) по сравнению с существующими коммерческими аналогами; улучшились показатели

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

Итеративное многоуровневое проектирование портального ПО основано на модели, синтезирующей объектно-ориентированные методы управления данными (ОД) и знаниями (ОМД). Индустриальная реализация корпоративного портала проведена с использованием интегрированных CASE- и RAD-средств.

Литература

1. Barendregt H.P. The lambda calculus (revised edition), Studies in Logic, 103, North Holland, Amsterdam, 1984

2. Codd E.F. Relational Completeness of Data Base Sublanguages Data Base Systems In: Rustin R. Eds.- New York: Prentice Hall, 1972 (Courant Computer Sci. Symposia Series No.6)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. Cousineau G., Curien P.-L., Mauny M. The categorical abstract machine. Science of Computer Programming 8(2): 173-202, 1987

4. Curry H.B., Feys R. Combinatory logic, vol.I, North Holland, Amsterdam, 1958

5. Scott D.S. Lectures on a mathematical theory of computations. Oxford University Computing Laboratory Technical Monograph. PRG-19, 1981. - 148 pp.

6. Wolfengagen V.E. Event Driven Objects. Proceedings of the Workshop on Computer Science and Information Technologies CSIT'99. Moscow, Russia, 1999 p.p.88-96

7. Zykov S.V. Abstract Machine as a Model of Content Management. Workshop on Computer Science and Information Technologies CSIT'2004, Budapest, Hungary, 2004

8. Zykov S.V. Integrated Methodology for Internet-Based Enterprise Information Systems Development. 1st International Conference on Web Information Systems and Technologies WEBIST2005, USA, Miami, FL, May 2005, p.p.168-175.

9. Зыков С.В. Управление персоналом с помощью интегрированных информационных систем.- М.: «Недра коммюникейшнс», 2001.- 160 с.

10. Зыков С.В. Проектирование Интернет-порталов.- М.: МФТИ, 2005.- 258 с.

11. Когаловский М.Р. Энциклопедия технологий баз данных. Эволюция технологий, технологии и стандарты, инфраструктура, терминология. - М.: Финансы и статистика, 2002. - 800 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.