- •1 Основы методологии разработки экспертных систем
- •1.1 Соответствия между основными этапами проекта raDи стадиями технологии быстрого прототипирования
- •1.2 О возможности и оправданности применения технологий инженерии знаний для построения систем основанных на знаниях
- •2 Технология быстрого прототипирования
- •2.1. Идентификация проблемы
- •2.2. Получение знаний
- •2.3. Концептуализация и структурирование знаний
- •2.4. Формализация знаний
- •2.5. Реализация (выполнение)
- •2.6. Опытная эксплуатация
- •2.7. Тестирование (диагностика)
- •2.8. Получение результата в виде прототипа
- •2.9. Оценка, стыковка, сопровождение системы
Лекция: «Методология разработки экспертных систем»
1 Основы методологии разработки экспертных систем
Процесс разработки экспертных систем имеет существенные отличия от разработки обычного программного продукта. Опыт создания ЭС показал, что использование при их разработке методологии, принятой в традиционном программировании, либо чрезмерно затягивает процесс создания ЭС, либо приводит к отрицательному результату. Это обуславливается неформализованностью задач, решаемых ЭС, отсутствием завершенной теории ЭС и методологии их разработки.
Сказанное приводит к необходимости модифицировать принципы и способы построения ЭС в ходе процесса разработки по мере того, как увеличивается знание разработчиков о проблемной области.
При разработке ЭС используется концепция прототипирования. Суть этой концепции состоит в том, что разработчики не пытаются сразу построить конечный продукт; они создают в общем случае несколько прототипов ЭС.
Например, первый прототип должен продемонстрировать пригодность методов инженерии знаний для данного приложения. В случае успеха эксперт с помощью инженера по знаниям расширяет знания прототипа о проблемной области. При неудаче может потребоваться разработка нового прототипа. Преобразование прототипа ЭС в конечный продукт связано с достижением такого состояния, когда прототип успешно и эффективно решает все задачи данного приложения. Концепция прототипирования, зародившись в технологии разработки ЭС, используется в настоящее время и для разработки сложных программных систем как методология быстрой разработки приложений (RAD).
В ходе научно-практической работы по созданию экспертных систем сложилась определенная технология их разработки, включающая шесть основных этапов: идентификация, концептуализация, формализация, выполнение, отладка и тестирование, опытная эксплуатация и внедрение.
1.1 Соответствия между основными этапами проекта raDи стадиями технологии быстрого прототипирования
Методология быстрой разработки приложений (RAD)- это промышленная технология разработки программных систем на основе использования CASE (CALS)- средств и методов быстрого прототипирования к верификации прототипов пользователем при жестком ограничении времени, отведенного на разработку.
CASE (Computer Aided Software Engineering)- система автоматизированной разработки программ.
CASE- технология- автоматизированное проектирование систем с использованием специальных пакетов инструментальных средств, так называемых CASE- средств.
CALS (Computer Aided Acquisition and Logistics Support)- стандарт CALS, автоматизированная поддержка принятия решений по приобретению (изделий) и материально- технического обеспечения.
Развитие технологии RAD с акцентом на групповую разработку приложений привело к появлению JAD- (Joint Application Development) в условиях ограниченных сроков. Технология JAD была разработана фирмой IBM в начале 80-х годов для быстрой разработки спецификаций и требований к программным системам.
№ п/п |
Наименование этапа RAD |
|
Наименование итерации жизненного цикла ЭС |
1 |
Начало проектирование |
|
Идентификация |
2 |
Формирование коллектива разработчиков и распределение обязанностей | ||
3 |
Построение бизнес- модели Построение модели данных |
|
Получение знаний Концептуализация Структурирование |
4 |
Построение функциональной модели |
|
Формализация |
5 |
Генерация кода (реализация), выполнение, стыковка | ||
6 |
Опытная эксплуатация, внедрение, отладка | ||
7 |
Тестирование, верификация на адекватность |
Основными рабочими продуктами RAD в порядке их формирования являются бизнес-модель, модель данных и функциональная модель.
Бизнес-модель- это графическое (визуальное) и текстологическое (вербальное) описание формационных потоков между элементами автоматизируемой системы, включая элементы, внешние по отношению к системе.
Модель данных- графическое и текстологическое описание структуры и семантики информации, используемой в системе.
Функциональная модель- графическое и текстуальное описание функций системы, операций, задач, решаемых в ходе выполнения этих функций, и взаимосвязей между функциями в терминах входов и выходов. Все описания формируются в терминах CASE-системы, что дает возможность проводить непосредственно на их основе генерацию результирующего кода прикладкой программы (оболочка G2 фирмы Gensym): документирование процесса разработки, визуальное конструирование диаграмм потоков данных, репозиторий проектных решений.