- •Оглавление
- •1. Классификации технологий разработки информационных систем
- •1.1. Классификация технологий разработки информационных систем в соответствии с научно-техническими направлениями их создания
- •1.2. Классификация технологий разработки информационных систем, созданная в рамках направления менеджмента – реинжиниринга бизнес-процессов
- •2. Жизненный цикл разработки информационных систем и его модели
- •2.1. Каскадная модель
- •2.2. Спиральная модель
- •3. Методологии разработки информационных систем
- •3.1. Структурная методология разработки информационных систем idef
- •Правила определения сущностей
- •Правила определения атрибутов
- •Первичные и альтернативные ключи
- •Правила определения отношений
- •Отношения категоризации
- •Правила определения отношений категоризации
- •Основные правила формирования информационной модели
- •"Функциональный аспект" рассмотрения системы
- •3.2. Объектно-ориентированные методологии разработки информационных систем
- •3.2.1. Методики объектно-ориентированного анализа
- •3.2.2. Объектно-ориентированный процесс разработки rup
- •3.3. Методология создания информационных систем Datarun, ориентированая на данные
- •4. Case-средства разработки информационных систем
- •4.1. Классификация case-средств
- •Диаграммные средства
- •4.2. Подход к интеллектуализации case-средств
- •4.2.1. Гибридная модель проблемной области case-системы
- •4.2.2. Синтаксис многоуровневой логики
- •4.2.3. Дедуктивный вывод в многоуровневой логике
- •4.2.3.1. Алгоритм сколемизации
- •4.2.3.2. Алгоритм унификации
- •4.2.3.3. Особенности использования линейной входной резолюции в многоуровневой логике
- •4.2.3.4. Иерархическая абстракция и продукционная модель
- •4.2.4. Программное инструментальное средство для моделирования сложноструктурированной проблемной области как компонента информационной базы проекта в case-системах
- •4.2.4.1. Архитектура программного инструментального средства «Инфолог»
- •4.2.4.2. Концептуальный язык описания сложноструктурированной проблемной области
- •4.2.4.3 Реализация программного инструментального средства «Инфолог»
- •5. Технология разработки интеллектуальных систем «логсемис»
- •5.1. Методология разработки интеллектуальных систем «логсемис»
- •Алгоритм генерирования метаправил
- •5.2. Программное инструментальное средство поддержки методологии «логсемис»
- •6. Задания на лабораторные работы
- •7. Контрольные вопросы
- •Библиографический список рекомендуемой литературы «Информационная инженерия»
4.2. Подход к интеллектуализации case-средств
4.2.1. Гибридная модель проблемной области case-системы
Центральным звеном CASE-средств 2-го поколения (CASE Workbench) является репозиторий или информационная база проекта. Репозиторий, построенный на основе традиционного подхода, представляет собой базу данных (БД) и ее систему управления (СУБД), используемые для хранения в CASE-системе необходимой информации о создаваемой информационной системе.
В настоящее время возникла необходимость в создании интеллектального репозитория, который облегчит разработчикам процесс создания в CASE-системе информационной системы, отвечающей современному уровню. Создание интеллектуального репозитория имеет ряд преимуществ по сравнению с традиционным подходом к его разработке, как БД и СУБД, среди которых можно выделить следующие:
возможность представления знаний, которые являются обобщением накопленного опыта о процессе проектирования информационной системы, и предоставление доступа к этим знаниям при разработке информационной системы;
моделирование проблемной области, т.е. выделение классов объектов, атрибутов и представителей классов объектов, отношений между классами объектов, а также статических и динамических закономерностей проблемной области;
получение новых знаний о разрабатываемой информационной системе из знаний, представленных в репозитории;
возможность контроля непротиворечивости знаний;
возможность прогнозирования результатов проектных операций;
возможность сократить объем информации, представленной в репозитории, благодаря ее получению с помощью логического вывода и вычислительных процедур.
Компонентами интеллектуального репозитория являются база знаний (БЗ), интеллектуальная информационно-поисковая система, подсистема помощи при проектировании информационной системы, вспомогательные компоненты.
Вся информация о разрабатываемой информационной системе, которая может быть формализована, представляется в модели проблемной области CASE-системы. Например, модель проблемной области CASE-системы для создания информационной системы может состоять из следующих подмоделей: модели проектируемой информационной системы, модели организации пользователя, модели наблюдаемого (внешнего) объекта и системы наблюдения (контроля).
Рассмотрим метод построения модели проблемной области CASE-системы, поскольку она лежит в основе базы знаний интеллектуального репозитория. В качестве модели проблемной области выбираем гибридную модель, объединяющую парадигмы «программная инженерия» и «инженерия знаний»: объектно-ориентированный подход, процедуры и модель представления знаний проблемной области.
В качестве формализма представления знаний проблемной области CASE-системы используем логическую модель, основанную на многоуровневой логике[6] (Multi-layer logic или коротко MLL), разработанную Setsuo Ohsuga и Hiroyuki Yamauchi, которая является удобным аппаратом для формализации сложноструктурированной информации, выделяемой в процессе проектирования информационной системы. MLL является интеграцией логического подхода и подхода, основанного на семантической сети, к построению языка представления знаний. Процедуры вызываются в процессе дедуктивного вывода. Они используются, например, для определения экстенсионалов отношений, нахождения значений атрибутов, реализации операций над объектами.
Приведем описание MLL и предложим модификацию ее синтаксиса, позволяющую повысить эффективность процедуры дедуктивного вывода.
Объекты в MLL классифицируются на примитивные объекты и множества (классы) объектов. Приведем базисные отношения, которые используются в MLL. Фигурные скобки будем использовать как метасимволы для представления множества объектов. Так, d={b1,b2,...,bn} является множеством, где bi={a1i,a2i,...,ami}, i=1.. n, является подмножеством множества d.
(1) «Element of», которое обозначается х Х.
(2) «Power set of», которое обозначается Y=*X и используется для отражения того, что Y является множеством, состоящим из всех подмножеств множества Х (не включая пустое множество). Мощность |*Х| = 2N - 1, где |Х| =N. *Х является множеством подмножеств 1-го порядка. Можно определить множество подмножеств 2-го порядка на Х, как *(*Х). Это обозначается как *2Х. Таким образом, множество подмножеств n-го порядка, обозначаемое *nХ, определяется как *(*(n-1)Х).
(3) «Product set of», которое обозначается Y=X1 x X2 x...x Xm.
(4) «Component of», которое обозначается YX и задает, что Х является компонентом Y. Если Y содержит несколько компонентов, т.е. YX1, YX2,..., YXS, то специальный метасимвол «< >» используется для обозначения этого: <Y>={X1,X2,...,XS}.
Приведем отношения, которые определяются через композицию базисных отношений.
(1’) «Subset of», которое обозначается X Y. Это отношение является композицией двух отношений: Z=*Y и X Z, т.е. = *.
(2') «Part of», которое обозначается Yx и определяет, что х является частью Y. Это отношение является композицией двух отношений:
= .
Приведем определения:
1) x y [ yx↔ z [xz & yz]];
2) x y [xy ↔z [zx → zy]];
3) x y [ x∩y≠ ↔ z [zx & zy]];
4) x y [ x∩y= ↔ z [zx→ (zy)]];
5) x y [ <x><y> ↔ z [ xz → yz]];
6) x y [ <x>∩<y>≠ ↔ z [ xz & yz]];
7) x y [ <x>∩<y>= ↔ z [xz → (yz)]];
8) x Level(x) 0, при равенстве х находится на базовом уровне.
10) x y [xy → Level(y)= Level(x)+1];
11) x y [xy → Level(y)= Level(x)];
12) x y [yx→ Level(y)= Level(x)].
Приведем теоремы:
1) x y [x{y} ↔ x=y];
2) x y [yx ↔ x<y>];
3) x y [xy→[u [uy→P(u)]→v[vx→P(v)]]];
4) x y [x∩y≠→[u [ux→P(u)]→v[vy&P(v)]]];
5) x y [yx→[u [uy&P(u)]→v[vx&P(v)]]];
6) x P(x,x) ↔yz[y=z→P(y,z)];
7) x P(x,x) ↔yz[y=z & P(y,z)];
8) *m(*nX) ↔ *m+nX;
9) *mX *nY ↔ *m+kX*n+kY;
10) *mX *nY ↔ *mX*n-1Y, n1;
11) *mX *nY ↔ X *n-mY, nm;
12) *mX *nY ↔ *m-nY Y, mn.
В MLL определены две структуры: иерархическая абстракция и иерархическая структура.
Определение 1. Иерархической абстракцией называется семантическая сеть, вершинами которой являются объекты, ребрами – базисные отношения и отношения «Part of» и «Subset of».
Определение 2. Иерархической структурой называется семантическая сеть, вершинами которой являются объекты, ребрами – отношения «Component of» и «Element of».
Отношения «Part of» и «Subset of» выбраны для построения иерархической структуры, поскольку они являются основополагающими в объектно-ориентированной методологии проектирования программных средств, предложенной Г.Бучем. Иерархическая структура строится с учетом того, что отношения «Part of» и «Subset of» являются композициями базисных отношений. Иерархическая структура является стандартной формой в MLL. Она состоит из уровней, которые в ней выделяются в соответствии с принципом наследования свойств. Объекты, находящиеся в отношении «Element of», располагаются в иерархической структуре на различных уровнях. Пример графического изображения иерархической структуры приведен на рис. 19.