Управление проектами: Методические указания по проведению лабораторных работ, страница 2

3. Организовать GUI для добавления/изменения записей в БЗ, например, следующего вида:

Центральном элементом формы является компонент типа «TStringGrid», позволяющий визуально редактировать свои ячейки.

По кнопке «Очистить таблицу» все ячейке должны быть обнулены.

По кнопке «Записать в массив», данные компонента «StringGrid» должны быть сохранены в массив «myBase».

По кнопке «Считать из массива», данные массива «myBase» должны быть перенесены на компонент StringGrid.

4. Сделать возможность экспорта БЗ в файл и загрузки БЗ из файла, не используя стандартные компоненты.

5. Добавить как минимум десять уникальных записей в базу знаний.

6. Оформить подробный отчёт о проделанной работе.

Контрольные вопросы

1. Чем база знаний отличается от базы данных?

2. Каково назначение базы знаний в программе?

3. Зачем для сохранения результатов из компонента StringGrid было использовано промежуточное звено перед записью в файл – массив?

4. Можно ли разработанное приложение назвать СУБД?

5. Как можно применить разработанную программу на практике?

Лабораторная работа №2

Разработка экспертной системы: создание базы знаний

Цель:  в результате выполнения работы студент должен научиться разрабатывать структуру базы знаний будущей экспертной системы в виде обычной базы данных; закрепить практические навыки по работе в среде MS Access 2003.

Краткие теоретические сведения

Компонент ТАDOTаblе обеспечивает использование в приложениях Delphi таблиц БД, подключенных через провайдеры OLE DB. По своим функциональным возможностям и применению он подобен стандартному табличному. В основе компонента лежит использование команды ADO, но ее свойства настроены заранее и изменению не подлежат. Имя таблицы БД задается свойством «property TableName: WideString».

Другие свойства и методы компонента обеспечивают применение индексов (этой возможности лишен любой компонент запроса). Так как не все провайдеры ADO обеспечивают прямое использование таблиц БД, то для доступа к ним может понадобиться запрос SQL. Если свойство «property TableDirect: Boolean» имеет значение «True», осуществляется прямой доступ к таблице. В противном случае компонент генерирует соответствующий запрос. Свойство «property Readonly: Boolean» позволяет включить или отключить для таблицы режим «только для чтения».

Для редактирования таблицы используются следующие методы:

– Append. Добавление записи

– Edit. Перевод записи в режим редактирования

– Delete. Удаление записи

– Post. Запись внесенных изменений в таблицу

– Cancel. Отмена изменений, внесенных в текущую запись

Пример добавления записи в таблицу «SampleTable» класса «TAdoTable»:

  SampleTable.Append; // перевести таблицу в режим добавления

  SampleTable.Fields[1].AsString:= Edit1.text; // Записать в первую колонку

  SampleTable.Fields[2].AsInteger := StrToInt(Edit2.text); // Записать во вторую

  SampleTable.Post; // Сохранить изменения

Ход работы

1. Выбрать предметную область и задачу будущей экспертной системы.

Примеры учебных предметных областей для экспертных систем: оценка внешнего вида человека, производительности компьютера, качества продукта питания, полезности съестного блюда, уровня безопасности здания, уровня физической подготовки человека, уровня защищённости системы и т.д. Или определение вида вирусной программы, ВИЧ-инфекции, автомобиля, растения, и т.п.

2. В среде MS Access создать новую базу данных и перейти в режим конструктора новой таблицы. Добавить в таблицу как минимум пять полей типа string в соответствии с задачей экспертной системы. Первое поле индексное, типа integer. Последнее поле – результат оценки эксперта. Остальные поля обозначают либо признаки классификации свойств, либо их категории.

Например:

<индексное поле>

Температура

Головная боль

Кашель

Воспаление горла

Диагноз

PS Имена полей должны состоять только из латинских букв, без пробелов. Например, словосочетание «Головная боль» можно записать как «golovnaya_bol» или «head_pain» или «headache».

Ключевое поле таблице задавать не нужно.

3. Экспортировать созданную таблицу из СУБД Access в файл формата dBase IV: «MyDB.dbf». Для этого достаточно указать имя созданной БД и из контекстного меню выбрать «экспорт».

4. В среде Delphi создать пользовательский интерфейс к таблице, для добавления и редактирования записей (через библиотеки BDE или ADO).