Информационные системы (ИС) относятся к классу сложных систем. При разработке ИС вопросам интеграции этих систем уделяется пристальное внимание. Характерной особенностью современных веб-ориентированных информационных систем (ИС) является переход к архитектуре разнородных, в том числе распределённых, объектов, сервисов и инфраструктур. Например, в качестве объектов могут быть рассмотрены автономные внешние системы. В этой ситуации одной из наиболее важных проблем становится проблема создания общей архитектуры информационной системы и сохранение ее целостности на всех этапах ее жизненного цикла. Под архитектурой мы понимаем фундаментальную организацию системы, воплощённую в её компонентах, их отношениях друг с другом и с внешним окружением, а также принципы, управляющие её созданием и развитием.
Архитектура призвана определять согласование часто противоречивых требований к ИС со способами их реализации, определяемыми характеристиками взаимодействующих подсистем. Сложность создания архитектуры ИС определяется, как минимум, двумя причинами. Во-первых, нет общепринятой понятийной базы для описания подсистем. Как правило, понятийная база описания архитектуры каждой подсистемы отражает ее предметную область. Во-вторых, на архитектуру ИС оказывает существенное влияние внешняя по отношению к ней система, обеспечивающая процесс разработки ИС (обеспечивающая система периода разработки). В этой связи существует необходимость, обеспечения взаимодействия как на уровне целевой, так и на уровне обеспечивающей системы. На уровне обеспечивающей системы взаимодействие проявляется в необходимости согласования функциональных, технологических и структурных описаний и их согласований.
Анализ существующих подходов показывает [1,5,4], что для решения указанных проблем используются декларативные способы описаниях данных, средств их обработки и конфигураций, являющихся объектами исследования семантического моделирования (СМ), в создании универсальной семантической модели представления и обработки знаний. В настоящее время активно обсуждаются как проблемы использования методов семантического подхода для согласования описаний взаимодействующих систем, так способы и технической реализации таких семантических моделей [2, 6, 8, 9]. Однако целый ряд вопросов, связанных с практической реализацией указанных подходов, по-прежнему остается актуальным. В их числе: отсутствие согласованных методов формирования онтологических моделей, их интеграция и трансформация, в частности, отсутствие методов создания и согласования онтологических моделей архитектурных описаний.
В статье рассматриваются подходы к созданию единой онтологии архитектуры ИС, основанные на методах и технологиях управления знаниями, а также способ ее использования для согласования функциональных и структурных описаний целевой и обеспечивающей систем. Показано, что база знаний, сформированная на основе указанной онтологии, позволяет аккумулировать опыт построения архитектур и системных отношений веб-информационных систем и повторно использовать его для разработки новых информационных систем.
Обоснование подхода к построению единой онтологии ИС
Анализ известных подходов к использованию ресурсов обеспечивающей системы при разработке целевой ИС позволяет сделать вывод о том, что описание предметной области целевой ИС, включающее в себя концептуальную модель и модель задач, является входной информацией, а сама архитектура ИС – результатом выполнения функции
SApp = SОб(SDomain),
где SApp – разрабатываемая ИС, SDomain – система описания предметной области, SОб – обеспечивающая система этапа разработки и эксплуатации ИС.
Рассмотрим обеспечивающую систему как сложную систему и выделим входящие в нее подсистемы, предполагая, что каждый вид деятельности обеспечивается отдельной, независимой от остальных, обеспечивающей системой. При разработке веб-информационной системы как отдельные виды деятельности обычно выделяют задачи выявления и согласования задач, решаемых в рамках целевой ИС, разработку ее структур данных, средств для программной обработки данных, пользовательского интерфейса и модели переходов между отдельными элементами веб-приложения – веб-страницами и сервисами портала. Тогда
SApp = <SDomain, STask, SInfo, SComp, SGui, SNav>,
где SApp – система, обеспечивающая описание программных элементов разрабатываемой информационной системы; SDomain – система, предоставляющая возможности описания предметной области; STask – система, обеспечивающая описание процессов и задач для различных предметных областей, и управление ими; SInfo – система управления информационной моделью, позволяющая формировать описания информационных объектов и структур данных; SComp – система разработки программных компонент; SGui – система разработки пользовательского интерфейса; SNav – система разработки навигационной модели приложения.
Общепринятый подход к описанию архитектуры зафиксирован в стандарте ISO 42010 (Рекомендованная практика архитектурного описания программоемких систем). В этом стандарте архитектура системы представляется через архитектурные описания, учитывающие интересы заинтересованных сторон и включающие в себя наборы моделей, описывающих связь функции системы и ее конструкции. Архитектурное описание создается для каждой заинтересованной стороны (stakeholders), имеющей некоторый набор интересов (concerns), связанных с системой, и стремящейся их удовлетворить. Для каждого из интересов создаются отдельные группы описаний (ГО) системы (views). Каждая группа описаний раскрывает отдельный аспект системы, а набор групп образует ее полное описание. Соглашения, по которым ГО создается, отображается и анализируется, устанавливаются методом описания (viewpoint). Таким образом, архитектура Arch = {ADesci}, где ADesci = <Mi, Ai,Ri, Zi>, i = 1, …, n, где i – аспект, характеризующий некоторую группу описаний ADesci, отвечающую способу описания Zi, который связывает множество элементов Mi, определенных на множествеих атрибутов Ai, через отношения Ri. Используя семантический метод описания, каждой частной обеспечивающей системе сопоставим свою группу описаний и некоторую онтологию предметной области:
OApp – онтология целевой системы, являющаяся результатом разработки и описывающая техническую реализацию ИС;
ODomain – онтология предметной области;
OTask – онтология задач;
ONav – онтология навигации;
OInfo – онтология информационных элементов;
OComp – онтология компонентов;
OGui – онтология пользовательского интерфейса.
Каждая из групп описаний характеризуется уникальным набором моделей, задач, инструментов и исполнителей, и ее структурой, и функционированием. Для каждой группы описаний необходимо определить методы рассмотрения и описания систем и правила их применения. С целью повторного использования будем предполагать, что для каждой ГО и метода описания определены отдельные онтологические модули, составляющие онтологию ГО. Для совместного использования онтологий определим онтологическую систему [7]:
∑О = <Ometa, {Od&t}, ∑inf>,
где Ometa – онтология верхнего уровня, в данном случае онтология архитектуры; {Od&t} – множество предметных онтологий и онтологий задач предметной области; ∑inf – модель машины вывода, ассоциированной с онтологической системой ∑О.
Онтология Ometa должна предоставлять классы, позволяющие организовать набор определений понятий предметной области и их взаимосвязей и позволять интегрировать знания подсистем и использовать эти знания при решении своих задач.
Для решения поставленных нами задач разработана онтология архитектуры информационной системы с набором необходимых онтологических классов. Определим концепты онтологии архитектуры и связи между ними. Курсивом будем обозначать концепты, а «жирным» курсивом – отношения между ними. Примеры высказываний, представленных в онтологии архитектуры:
модульонтологии = {онтология концептов, онтология операций, онтология нотаций},
система = {целевая система, обеспечивающая система},
целевая система имеет обеспечивающая система,
система включает подсистему система,
архитектура имеет группа описаний,
группа описаний = {domainview, taskview, infoview, navview, guiview, compview}.
Здесь
domainview – ГО концептуальной модели предметной области;
navview – ГО навигационной структуры приложения;
infoview – ГО информационных элементов и их схем данных;
guiview – ГО графического интерфейса пользователя;
taskview – ГО процессов и задач;
compview – ГО программных компонентов ИС.
Отображение дерева наследования онтологических классов и часть связей между ними в разработанном нами редакторе онтологий представлено на рисунке (рис. 1).
Онтология состоит из двух групп классов – классов предметной области и классов классификаторов. Для пар классов из этих двух групп устанавливается связь:
классификатор классифицирует класс.
Набор объектов классификатора задает разбиение множества объектов класса предметной области на группы. Набор классификаторов вместе с их взаимными связями задают класс шаблона отношений, поскольку структура отношений их объектов задает структуру связей между объектами классов предметной области. Между классификаторами устанавливается система наследования, а между шаблонами – система отношений специализаций шаблонов. Пример отношений:
вид модели соответствует – вид примитива моделирования;
вид модель интерфейса пользователя подкласс – вид примитив моделирования интерфейса пользователя;
вид модель интерфейса пользователя соответствует – вид примитив моделирования интерфейса пользователя
модель состоит из примитив моделирования;
модель интерфейса пользователя – подкласс модель;
модель интерфейса пользователя состоит из примитив моделирования интерфейса пользователя
Связи между целевой и обеспечивающей системами, а также состав онтологических модулей определяются шаблонами, задаваемыми классом проект и его классификаторами. Множество онтологических модулей в процессе создания и использования базы знаний могут быть выделены в библиотеку модулей (введением необходимых классов и связей) и повторно использоваться в различных проектах. Для обеспечения интеграции между онтологиями групп описаний используем механизм аннотации. Рассмотрим:
онтологию O верхнего уровня описывающую набор конструкций, используемых в достаточно широком классе информационных моделей;
онтологии групп описаний V и U;
множества аннотаций AV и AU соответственно в терминах онтологии O, связанных с классами онтологий групп описаний.
Рис. 1. Схема онтологии архитектуры
Назовем аннотацией пару <u, c> , где с – понятие из О, либо композиция понятий из О, u – элемент эталонной схемы, являющийся экземпляром понятия с. Таким образом, классы и объекты онтологий групп описаний являются экземплярами понятий, которые в свою очередь есть подтипы понятий онтологии O (рис. 2).
Рис. 2. Схема механизма аннотаций
Для проведения операции аннотации нужно создать специальное отношение между подграфом из V или U и понятием О. В нашем случае для этого введен специальный класс связи имеет метатип. Обеспечение интероперабельности моделей вводится отображение MU(V) модели V в модель U. Однако модели изначально никак не связаны, а следовательно, необходимо найти семантически близкие конструкции моделей. Будем считать семантически близкими пары конструкций <u, v>, u ∈ U, v ∈ V, для которых существуют аннотации <v, c> ∈ AV и < u, d > ∈ AU, такие, что сявляется подпонятием d.Определим taskm, infoj, guil, navlinki, fk как элементы из ГО: taskview, infoview, guiview, navview, compview соответственно. В онтологии архитектуры для каждой из ГО определим классы (в более общем случае дерево наследования классов) примитивов моделирования для каждой из онтологии ГО. Определение связей между классами примитивов и применение механизма аннотации позволит представить модели из разных групп описаний и, в конечном итоге, определить архитектуру системы.
Заключение
В результате проведенного исследования была разработана онтология, позволяющая формализовать описание архитектуры информационной системы и интегрировать модели, созданные в рамках разных онтологических моделей. Представленная онтология была использована при разработке интеллектуальной системы проектирования веб-приложений [3]. В результате применения онтологии выявлена потребность введения специальных модулей онтологий, носящих общий характер. Одной из таких онтологий является онтология жизненного цикла информационной системы. В настоящее время ведутся работы по ее созданию.
Работа выполнена в рамках договора № 02.G25.31.0055 (проект 2012-218-03-167).
Рецензенты:
Гадзиковский В.И., д.т.н., доцент, профессор кафедры радиоэлектроник информационных систем Уральского федерального университета им. первого Президента России Б.Н. Ельцина, г. Екатеринбург;
Доросинский Л.Г., д.т.н., профессор, заведующий кафедрой информационных технологий Уральского федерального университета им. первого Президента России Б.Н. Ельцина, г. Екатеринбург.
Работа поступила в редакцию 08.11.2013.
Библиографическая ссылка
Грегер С.Э., Поршнев С.В. ПОСТРОЕНИЕ ОНТОЛОГИИ АРХИТЕКТУРЫ ИНФОРМАЦИОННОЙ СИСТЕМЫ // Фундаментальные исследования. – 2013. – № 10-11. – С. 2405-2409;URL: https://fundamental-research.ru/ru/article/view?id=32804 (дата обращения: 17.08.2024).