Прототип системы интеллектуального поиска документов на основе онтологии предметной области

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 24.01.2016
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Сведения о подсистемах, необходимые для обеспечения их функционирования

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

Описание функционирования подсистем и их частей

Функционирование основной подсистемы реализации процесса обработки пользовательского поискового запроса описывается в п.3.1.2.3 "Описание функционирования системы и частей системы".

5.2 Схема структурная комплекса технических средств

Разработанная система поддерживает разные схемы распределения компонентов системы и используемых систем. Текущая версия системы реализована в соответствии со структурой, приведенной на рис. 4.

Рисунок 4 - Диаграмма варианта размещения компонентов системы и используемых систем на трех серверах

Применяемые для обеспечения функционирования системы сервера:

- Web-сервер. Данный сервер предназначается для размещения:

- компонентов графического web-интерфейса пользователей системы;

- API-интерфейсов, предназначенных для взаимодействия системы со смежными системами.

- Сервер приложений. Данный сервер предназначается для размещения:

- компонентов бизнес-логики подсистемы поиска системы;

- компонентов уровня данных системы;

- системы полнотекстового поиска.

- Сервер баз данных. Данный сервер предназначается для размещения:

- базы данных документов;

- базы онтологий;

- сервиса морфологии;

- базы индексов документов;

- базы индексируемых образов документов.

Для обеспечения взаимодействия между компонентами системы, расположенными на разных серверах, данные сервера объединены в локальную сеть.

Пользователи системы имеют доступ к web-интерфейсу посредством web-браузера.

Сотрудники обслуживающего персонала системы имеют доступ к web-интерфейсу системы и базе данных, для редактирования баз данных документов и онтологий.

5.3 Описание информационного обеспечения системы

Состав информационного обеспечения

В состав информационного обеспечения системы входит:

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

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

- База индексов документов системы полнотекстового поиска. Предназначается для хранения составленных системой полнотекстового поиска для ускорения процесса обработки запроса результатов индексирования документов, по которым осуществляется поиск. Принципы организации, структура и содержание данной базы не регламентируются в Настоящем Документе. Данные аспекты регламентируются в документации к системе полнотекстового поиска [35];

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

- Словари сервиса морфологии. Предназначается для обеспечения функционирования сервиса морфологии. Принципы организации, структура и содержание данной базы не регламентируются Настоящем документе. Формат данных словарей регламентируется в документации к системе морфологии [17];

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

- Файл конфигурации системы полнотекстового поиска. Принципы организации, структура и содержание данного файла частично регламентируются в Настоящем Документе. Наиболее подробно аспекты регламентируются в документации к системе полнотекстового поиска [35];

- Файл конфигурации системы логирования процесса обработки поискового запроса. Принципы организации, структура и содержание данного файла частично регламентируются в Настоящем Документе;

- Файлы конфигурации СУБД. Принципы организации, структура и содержание данного файла не регламентируются в Настоящем документе. Данные аспекты регламентируются в документации к СУБД [18];

- Файл конфигурации подсистемы поиска. Принципы организации, структура и содержание данного файла регламентируются в Настоящем Документе.

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

Организация информационного обеспечения

Принципы организации информационного обеспечения

Принципы организации соответствующих составляющих информационного обеспечения системы регламентируются в п.3.3.4 "Организация внутримашинной информационной базы" и п.3.3.5 "Организация внемашинной информационной базы" Настоящего Документа.

Обоснование выбора носителей данных

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

Принципы и методы контроля в маршрутах обработки данных

Данные характеристики системы не регламентируются в Настоящем Документе. Контроль корректности и целостности передаваемых данных осуществляется методами используемых системами протоколов передачи данных

Описание решений, обеспечивающих информационную совместимость АС с другими системами

База данных документов
Обеспечение информационной совместимости базы данных документов АС с другими системами в задаче организации данной базы достигается за счет:
- использования СУБД MySQL, распространяемая под GNU General Public License;
- использования стандарта ANSI SQL-92, регламентированного в [12];
База онтологий
Обеспечение информационной совместимости базы онтологий АС с другими системами в задаче организации данной базы достигается за счет:
- использования протокола HTTP для получения доступа к базе онтологий, регламентированного в [29];
- использования языка описания онтологий OWL (Ontology Web Language), для описания онтологий предметных областей, хранящихся с базе онтологий. Данный язык описания онтологий регламентирован в [19];
База индексов документов системы полнотекстового поиска
Обеспечение информационной совместимости базы индексов документов системы полнотекстового поиска АС с другими системами в задаче организации данной базы достигается за счет:
- использования протокола SSH (SCP) для получения доступа к базе индексов документом системы полнотекстового поиска. Данный протокол регламентирован в [15].
База индексируемых образов документов
Обеспечение информационной совместимости базы индексируемых образов документов АС с другими системами в задаче организации данной базы достигается за счет:
- использования протокола HTTP для получения доступа к базе индексируемых образов документов, регламентированного в [29];
- использования формата HTML для хранения индексируемых образов документов, регламентированного в [14];
Словари сервиса морфологии
Обеспечение информационной совместимости используемых в АС словарей сервисам морфологии с другими системами в задаче организации данной базы достигается за счет:
- в случае использования внешнего сервиса морфологии - за счет использования протокола HTTP для получения доступа к сервису морфологии, регламентированного в [17];
Файлы конфигурации системы
Обеспечение информационной совместимости конфигурационных файлов АС с другими системами в задаче организации данных файлов не ставится в задачи реализации АС, Т.о. данный вид совместимости не обеспечивается (поддерживается) текущей версией системы.
Лог-файлы работы системы
Обеспечение информационной совместимости лог-файлов работы АС с другими системами в задаче организации данных файлов достигается за счет:
- использования протокола SSH (SCP) для доступа к данным файлам, регламентированного в [15];
- использования текстового формата (Plain Text) для хранения содержимого данных файлов в кодировке UTF-8;

Организация сбора и передачи информации

Источники и носители информации

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

Источником информации для базы данных документов системы является разработанный загрузчик метаинформации документов (OntoLoader), предназначенный для:

- загрузки в базу данных новых коллекций документов (их метаинформации);

- редактирования коллекций базы данных документов;

- редактирования рубрик и ключевых слов документов;

Принципы работы данного программного обеспечения не регламентируются в Настоящем Документе.

Общие требования к организации сбора, передачи, контроля и корректировки информации

Передача информации между подсистемой поиска и смежными/используемыми системами производится посредством протоколов передачи данных, предоставляемых используемыми системами и регламентируются в описании связей систем Настоящего Документа.

Организация внутримашинной информационной базы

База данных документов

Принципы построения внутримашинной информационной базы
База данных документов системы предназначена для:
- хранения информации о документах, используемых в процессе поиска и файлов, прикрепленных к этим документам;
- хранения метаинформации документов, используемых в процессе поиска;
- хранения схем классификаторов документов;
- хранения истории поисковых запросов и сформированных расширенных поисковых запросов;
- хранения информации о предметных областях, рубриках, ключевых словах и соответствующих им онтологиях
Данная база данных реализована с использованием СУБД MySQL. Доступ к базе данных осуществляется по протоколу СУБД, регламентированному в соответствующей документации. В качестве языка управления данными используется язык SQL стандарта ANSI SQL-92.
Данная база одержит следующие таблицы:
- Документ (doc). Таблица предназначена для хранения информации о документе системы, используемом в процессах индексации и поиска. Содержит следующие поля:
Таблица 5 - Поля таблицы "doc"

Имя поля в таблице

Значение

Описание

document_id

Код документа

Уникальный идентификатор документа в системе. Суррогатный ключ.

document_syslink

Системная ссылка

Указатель на поисковой образ документа, используемый для индексации документа системой полнотекстового поиска. Представляет собой ссылку на локальный файл.

document_weblink

Web-ссылка

Указатель на документ, используемый для отображения в списке результатов поиска. Представляет собой ссылку на web-страницу с документом.

- Класс документа (class). Таблица предназначена для описания классов документов. Содержит следующие поля:

Таблица 6 - Поля таблицы "class"

Имя поля в таблице

Значение

Описание

class_id

Код класса

Уникальный идентификатор класса документа в системе. Суррогатный ключ.

class_name

Имя класса

Уникальное имя класса в системе. Записывается латинскими символами. Альтернативный ключ.

class_description

Описание класса

Текстовое описание класса.

class_version

Версия класса

Номер версии конфигурации класса

class_real_filename_field

Имя поля реального названия файла

Имя поля в метаинформации документа, содержащего реальное имя файла

class_use_private_tables

Использование собственных таблиц

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

class_url_prefix

URL-префикс класса

URL-адрес, указывающий на расположение документов класса

- Поле документа (field). Таблица предназначена для хранения значений полей документов. Содержит следующие поля:

Таблица 7 - Поля таблицы "field"

Имя поля в таблице

Значение

Описание

field_id

Код поля

Уникальный идентификатор поля в системе. Суррогатный ключ.

field_hdr_name

Имя поля в HDR

Имя данного поля в HDR-файлах документов

field_rus_name

Имя поля на русском

Имя данного поля на русском языке для отображения в карточке документа.

field_table_name

Имя таблицы поля

Имя таблицы в базе данных, хранящей значения данного поля для документов

field_datatype

Тип данных поля

Тип данных метаинформации документа, содержащейся в данном поле (таблице поля)

field_table_exist

Существование таблицы

Указание на существование созданной таблицы данного поля в базе данных

- Рубрика документа (heading). Таблица предназначена для хранения списка рубрик документов. Содержит следующие поля:

Таблица 8 - Поля таблицы "heading"

Имя поля в таблице

Значение

Описание

heading_id

Код рубрики

Уникальный идентификатор рубрики в системе. Суррогатный ключ.

heading_text

Текст рубрики

Текстовое название рубрики

heading_list_code

Код рубрики в списке

Номер рубрики указываемый в списке (дереве) рубрикатора

heading_description

Описание рубрики

Текстовое описание рубрики

heading_docs_quantity

Количество документов рубрики

Количество документов в системе, соответствующих данной рубрике

heading_parent_id

Код родительской рубрики

Указатель на родительскую рубрику в дереве рубрикатора

domain_id

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

Указатель на предметную область, к которой принадлежит данная рубрика

- Ключевое слово (keyword). Таблица предназначена для хранения ключевых слов каждой из рубрик. Содержит следующие поля:

Таблица 9 - Поля таблицы "keyword"

Имя поля в таблице

Значение

Описание

keyword_id

Код ключевого слова

Уникальный идентификатор ключевого слова в системе. Суррогатный ключ.

keyword_text

Текст ключевого слова

Текстовое значение ключевого слова в нормальной форме (им. п., ед. ч.)

keyword_description

Описание ключевого слова

Текстовое описание ключевого слова

keyword_docs_quantity

Количество документов ключевого слова

Количество документов в системе, соответствующих данному ключевому слову

- Морфология ключевого слова (morphology). Таблица предназначена для хранения морфологических форм ключевых слов с целью ускорения получения доступа к необходимым формам нужного ключевого слова. Содержит следующие поля:

Таблица 10 - Поля таблицы "morphology"

Имя поля в таблице

Значение

Описание

morphology_id

Код морфологической формы (словоформы)

Уникальный идентификатор морфологической формы в системе. Суррогатный ключ

morphology_wordform_type

Тип словоформы

Описание вида словоформы (падеж, число)

morphology_word_text

Текст словоформы

Текстовое представление словоформы

- Онтология (ontology). Таблица предназначена для хранения метаинформации имеющихся в базе системы онтологий. Содержит следующие поля:

Таблица 11 - Поля таблицы "ontology"

Имя поля в таблице

Значение

Описание

ontology_id

Код онтологии

Уникальный идентификатор онтологии в системе. Суррогатный ключ

ontology_type

Тип онтологии

Описание типа онтологии (в текущей версии системы - "Онтология предметной области")

ontology_name

Название онтологии

Текстовое название онтологии

ontology_url

URL онтологии

Адрес OWL-файла онтологии в базе онтологий системы

ontology_version

Версия онтлогии

Номер версии онтологии

ontology_description

Описание онтологии

Текстовое описание онтологии

domain_id

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

Указатель на предметную область онтологии

- Предметная область (domain). Таблица предназначена для хранения списка предметных областей. Содержит следующие поля:

Таблица 12 - Поля таблицы "domain"

Имя поля в таблице

Значение

Описание

domain_id

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

Уникальный идентификатор предметной области в системе. Суррогатный ключ

domain_docs_quantity

Количество документов предметной области

Количество документов в системе, соответствующих данной предметной области

domain_name

Имя предметной области

Полное текстовое название предметной области

- Поиск (search). Таблица предназначена для хранения списка пользовательских поисковых запросов. Содержит следующие поля:

Таблица 13 - Поля таблицы "search"

Имя поля в таблице

Значение

Описание

search_id

Код поиска

Уникальный идентификатор экземпляра поиска в системе. Суррогатный ключ

search_source_query

Исходный запрос

Текст исходного поискового запроса

search_creation_date

Дата создания

Дата создания поискового запроса

search_begin_time

Время начала

Время начала выполнения обработки запроса

search_end_time

Время завершения

Время завершения выполнения обработки запроса

search_current_state

Текущее состояние

Текущие состояние процесса выполнения обработки запроса

- Файл (file). Таблица предназначена для хранения списка прикрепленных к документам в системе файлов: изображения, таблицы и т.д. Содержит следующие поля:

Таблица 14 - Поля таблицы "file"

Имя поля в таблице

Значение

Описание

file_id

Код файла

Уникальный идентификатор файла в системе. Суррогатный ключ

file_name

Имя файла

Текстовое имя файла

file_weblink

web-ссылка

Сетевая ссылка на файл

file_syslink

Системная ссылка

Системная ссылка на файл

file_description

Описание файла

Текстовое описание файла

file_type

Тип файла

Текстовое описание типа файла

file_attributes

Атрибуты файла

Текстовое описание атрибутов файла

- Поисковой запрос (query). Таблица предназначена для хранения сформированных в процессе обработки пользовательского поискового запроса новых поисковых запросов. Содержит следующие поля:

Таблица 15 - Поля таблицы "query"

Имя поля в таблице

Значение

Описание

query_id

Код запроса

Уникальный идентификатор запроса в системе. Суррогатный ключ

query_text

Текст запроса

Текст поискового запроса

query_priority

Приоритет запроса

Приоритет поискового запроса.

search_id

Код поиска

Указатель на экземпляр объекта поиска, вызвавший формирование данного запроса

Структура внутримашинной информационной базы
Логическая модель базы данных документов приведена рис.5. Данная структура представляет собой модель данных, основанную на сущностях предметной области и связях между ними.
Рисунок 5 - Логическая модель данных базы данных документов системы
Реляционная схема базы данных документов системы приведена на рис. 6.
Рисунок 6 - Реляционная схема базы данных документов системы

База онтологий

Принципы построения внутримашинной информационной базы
База данных онтологий предметных областей системы предназначается для:
- хранения и учета данных всех онтологий системы;
- предоставления доступа к OWL-файлам онтологий.
Структура внутримашинной информационной базы
Данная база представляет собой иерархическую структура каталогов, каждый из которых относится к определенной предметной области и хранит соответствующие OWL-файлы онтологий, доступ к которым осуществляется по протоколу HTTP [29].

База индексов документов системы

Принципы построения внутримашинной информационной базы
База индексов документов системы формируется системой полнотекстового поиска в процессе индексирования базы индексируемых образов (массива) документов. В дальнейшем построенные индексы используются системой полнотекстового поиска в процессе обработки поискового запроса.
Структура внутримашинной информационной базы
База индексов документов системы представляет собой каталог файлов, формат которых не регламентируется в Настоящем Документе. Формат индексов документов системы регламентируется в документации к системе полнотекстового поиска [35].

База индексируемых образов документов системы

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

База словарей сервиса морфологии

База словарей сервиса морфологии не регламентируется в Настоящем Документе в силу отсутствия необходимости прямого взаимодействия подсистемы поиска с базой данных словарей сервиса морфологии. Формат данной базы регламентируется в документации к программному обеспечению, реализующему функции сервиса морфологии [17].

База файлов конфигурации системы

Принципы построения внутримашинной информационной базы
База файлов конфигурации системы представляет собой совокупность текстовых конфигурационных файлов в кодировке UTF-8, используемых подсистемой поиска и вспомогательными системами для обеспечения корректного функционирования системы. Конфигурации, входящие в состав базы файлов конфигурации системы:
- Конфигурация системы полнотекстового поиска. Используется системой полнотекстового поиска для определения параметров индексирования и поиска документов. Конфигурация системы полнотекстового поиска описывается в POSIX-совместимом формате и регламентируется в [16]. Пример конфигурационного файла приведен в приложении к Настоящему Документу.
- Конфигурация подсистемы поиска. Используется подсистемой поиска для определения используемой системы полнотекстового поиска, базы данных документов, сервиса морфологии и параметров подключения к ним. Конфигурация подсистемы поиска описывается в POSIX-совместимом формате и регламентируется Настоящем Документе. Данная конфигурация включает в себя:
Таблица 16 - Состав конфигурации подсистемы поиска

Имя поля

Описание

Конфигурация модуля морфологической обработки поискового запроса

morpho_type

Тип используемой системы морфологии

morpho_server

Адрес сервера сервиса морфологии

morpho_port

Порт сервиса морфологии на сервере

morpho_min

Минимальное число обрабатываемых элементов пользовательского поискового запроса, необходимое для инициализации процесса морфологической обработки запроса.

morpho_max

Максимальное число обрабатываемых элементов пользовательского поискового запроса

Конфигурации модуля онтологической обработки поискового запроса

onto_type

Тип используемой базы онтологий системы

onto_server

Адрес сервера базы онтологий системы

onto_port

Порт базы онтологий системы на сервере

onto_max

Максимальное число используемых в процессе онтологической обработки поискового запроса онтологий

Конфигурация модуля поиска документов

search_type

Тип используемой системы полнотекстового поиска

search_server

Адрес сервера системы полнотекстового поиска системы

search_port

Порт системы полнотекстового поиска системы

search_index

База индексов документов, используемая для поиска документов

search_sort

Метод сортировки результатов поиска

search_max

Максимальное число загружаемых результатов поиска

search_param

Дополнительные параметры использования системы полнотекстового поиска

Конфигурация модуля формирования дополнительных (расширенных) поисковых запросов

query_min

Минимальное число элементов запроса

query_max

Максимальное число элементов запроса

Конфигурация модуля документов системы

db_type

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

db_server

Адрес сервера базы данных документов системы

db_name

Имя схемы базы данных документов системы

db_user

Имя пользователя при подключении к базе данных документов системы

db_pass

Пароль аутентификации при подключении к базе данных документов системы

db_res_type

Тим формируемого списка результатов поиска

Пример конфигурационного файла подсистемы поиска приводится в приложении к Настоящему Документу.

- Конфигурация системы логирования процесса обработки поискового запроса. Используется системой логирования процесса обработки поискового запроса для определения параметров ведения лог-журналов процессов обработки поисковых запросов. Конфигурация системы логирования процесса обработки поискового запроса регламентируется в документации к системе логирования процесса обработки поискового запроса [38]. Пример конфигурационного файла приведен в приложении к Настоящему Документу;

- Конфигурация СУБД. Используется СУБД для определения параметров функционирования базы данных документов системы. Конфигурация СУБД описывается в POSIX-совместимом формате [16] и регламентируется в [18]. Пример конфигурационного файла приведен в приложении к Настоящему Документу.

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

База лог-файлов работы системы

Принципы построения внутримашинной информационной базы
База лог-файлов работы системы представляет собой коллекцию текстовых файлов в кодировке UTF-8, используемых для ведения лог-журнала (протокола) работы подсистемы поиска. Синтаксис лог-файла работы системы регламентируется в документации к системе логирования процесса обработки поискового запроса [38].
Структура внутримашинной информационной базы
База лог-файлов работы системы представляет собой иерархически организованную структуру каталогов, каждый из которых предназначается для хранения лог-файлов работы системы за определенный период времени (определяется администратором системы).

Организация внемашинной информационной базы

В качестве внемашинной информационной базы выступает:

- Рабочая документация пользователя системы;

- Рабочая документация администратора системы;

- Рабочая документация сотрудника обслуживающего персонала системы;

- Рабочая документация разработчика системы;

Данное информационное обеспечение представляет собой коллекцию соответствующих документов в электронном (Microsoft Office Word Document 2003 (*. doc)) и распечатанном бумажном на листах А4 форматах, хранящуюся у администратора системы или ответственного лица.

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

Для контроля качества и актуальности документации системы назначается ответственное лицо. В настоящий момент таковым является разработчик системы.

5.4 Описание программного обеспечения

Структура программного обеспечения

Подсистема реализации интеллектуального поиска

Структура программного обеспечения подсистемы реализации интеллектуального поиска разработана с т. з. модульного и объектно-ориентированного подходов. Диаграмма классов подсистемы реализации интеллектуального поиска приводится на рис. 7.

Рисунок 7 - Диаграмма классов подсистемы реализации интеллектуального поиска

Данная диаграмма включает в следующие классы:

Классы уровня бизнес-логики интеллектуального поиска:

- Класс "SearchCore". Представляет собой монолитную реализацию Поискового ядра;

- Класс "Module". Представляет собой абстрактный образ функционального модуля системы. Является абстрактным и используется только на унификации модулей подсистемы;

- Класс "MorphologyModule". Представляет собой монолитную реализацию Модуля морфологии;

- Класс "OntologyModule". Представляет собой монолитную реализацию Модуля онтологии;

- Класс "QueryFormingModule". Представляет собой монолитную реализацию Модуля формирования запросов;

- Класс "SearchModule". Представляет собой монолитную реализацию Модуля поиска;

- Класс "DocumentsModule". Представляет собой монолитную реализацию Модуля документов;

Классы уровня данных:

- Класс "DataSource". Представляет собой абстрактный образ источника данных для конкретного модуля системы. Является абстрактным и используется только для унификации источников данных подсистемы;

- Класс "MorphologyModuleDataSource". Представляет собой реализацию источника данных для реализации морфологических операций;

- Класс "OntologyModuleDataSource". Представляет собой монолитную реализацию источника данных для реализации операций с онтологиями;

- Класс "SearchModuleDataSource". Представляет собой реализацию источника данных для реализации поисковых операций;

- Класс "DocumentModuleDataSource". Представляет собой монолитную реализацию источника данных для операций с документами;

- Класс "ExternalSystemInterface". Представляет собой абстрактный образ интерфейса к внешней системе, используемой в процессе обработки поискового запроса. Является абстрактным и используется только для унификации интерфейсов к внешним системам, используемым подсистемой реализации интеллектуального поиска;

- Класс "MorphologyModule". Представляет собой интерфейс доступа к сервису морфологии. В текущей версии реализации прототипа системы интеллектуального поиска не используется в силу упрощения процесса морфологической обработки запроса и использования внутренней программной подсистемы морфологии;

- Класс "OntologyInterface". Представляет собой интерфейс доступа к базе онтологий;

- Класс "SearchEngineInterface". Представляет собой интерфейс доступа к системе полнотекстового поиска;

- Класс "DataBaseInterface". Представляет собой интерфейс доступа к СУБД;

Структуры данных, приведенные на диаграмме классов системы:

- Структура "SearchObject". Представляет собой временное хранилище всех данных, связанных с пользовательским поисковым запросом;

- Структура "SearchQueryWithResults". Представляет собой временное хранилище поискового (исходного или сгенерированного системой в процессе генерации дополнительных (расширенных)) запроса и списка результатов, найденных при выполнении поиска по этому запросу;

- Структура "SearchResult". Представляет собой временное хранилище данных документа-результата поиска;

- Структура "DocumentField". Представляет собой временное хранилище единицы метаинформации документа-результата поиска.

Функции программного обеспечения

Функции программного обеспечения регламентируются в п.3.4.3 "Методы и средства разработки программного обеспечения", п.3.4.4 "Операционная система", п.3.4.5 "Средства, расширяющие возможности операционной системы" Настоящего Документа.

Методы и средства разработки программного обеспечения

В процессе разработки системы использовались:

- Язык программирования Java [26] - функциональные компоненты системы реализации интеллектуального поиска;

- Технология JavaServer Pages (JSP) [27] - компоненты графического интерфейса системы реализации интеллектуального поиска;

- Структурированный язык запросов SQL [28] - выполнение запросов к базе данных документов системы;

- Язык разметки гипертекста HTML [14] - компоненты графического интерфейса системы реализации интеллектуального поиска;

- Язык скриптов JavaScript [30] - элементы контроллера системы реализации интеллектуального поиска;

- Унифицированный язык моделирования UML [31] - описание и документирование архитектуры и методов функционирования системы;

- Visual Paradigm for UML Enterprise Edition 7.2 [32] - описание и документирование архитектуры и методов функционирования системы;

- Embarcadero ER/Studio 8.0.3 [33] - проектирование модели данных и генерация ее реляционной схемы;

- NetBeans IDE 7.0.1 [34] - реализация функциональных компонентов системы;

- Log4j [38] - система логирования сообщений в Java;

- Sphinx Java API [36] - API-интерфейсы системы полнотекстового поиска для Java;

- MySQL Java Connector [37] - API-интерфейсы СУБД MySQL для Java;

- OWL API [19] - API интерфейсы OWL для Java;

- Morphology API [17] - API интерфейсы морфологии для Java.

Операционная система

Операционной системой, используемой для обеспечения выполнения всех функций системы является Debian GNU/Linux 6.0 Squeeze i386. Данный выбор обусловлен:

- высокой надежностью данной операционной системы;

- свободным распространением данной операционной системы в соответствии с лицензией GNU GPL;

- открытыми стандартами данной операционной системы;

Установка и конфигурированное данной операционной системы должна производиться в соответствии с:

- пользовательской документацией Debian GNU/Linux [25];

- параметрами функционирования системы, приведенными в приложении к Настоящему Документу;

Средства, расширяющие возможности операционной системы

Apache HTTP-сервер

Кроссплатформенный свободно распространяемый Web-сервер. В разработанной системе применяется с целью:

- предоставления к графическому Web-интерфейсу системы;

- предоставления доступа к API-интерфейсам системы;

- предоставления доступа к базе онтологий предметных областей системы;

- предоставления доступа к компонентам бизнес-логики подсистемы реализации интеллектуального поиска документов.

Установка и конфигурирование Web-сервера Apache производится в соответствии с:

- пользовательской документацией к Web-серверу Apache [21];

- параметрами функционирования системы, приведенными в приложении к Настоящему Документы;

Данное программное обеспечение должно предоставлять доступ к вышеописанным составляющим системы по протоколу HTTP на порт 80 стандартным GET-запросом, регламентируемым в документации к использующей данное программное обеспечение системе.

OpenSSH-сервер

Набор программ, предоставляющих шифрование сеансов связи по компьютерным сетям с использованием протокола SSH. В разработанной системе применяется с целью:

- предоставления доступа к операционной системе, под управлением которой работает система. Данный доступ реализуется для обеспечения возможности администрирования системы;

- предоставления доступа к базе конфигураций. Данный доступ реализуется для обеспечения правильного конфигурирования всех составляющих системы и их функционирования в актуальном (установленном/корректном) режиме;

- предоставления доступа к базе лог-файлов системы. Данные доступ реализуется для обеспечения протоколирования процессов обработки поисковых запросов;

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

- предоставления доступа к базе индексов документов системы, по которым в процессе обработки поискового запроса осуществляется поиск. Данный доступ реализуется для обеспечения поиска документов по представленному поисковому запросу;

Установка и конфигурирование OpenSSH производится в соответствии с:

- пользовательской документацией к OpenSSH [22];

- параметрами функционирования системы, приведенными в приложении к Настоящему Документу;

Данное программное обеспечение должно предоставлять доступ к использующей его системе про протоколу SSH на порт 22. Особенности использования данного программного обеспечения какой-либо системой (подсистемой) регламентируются в документации к этой системе (подсистеме).

Система управления базами данных MySQL

Кроссплатформенная свободно распространяемая система управления базами данных.

В разработанной системе применяется с целью:

- предоставления доступа к базе данных документов системы, по которым в процессе обработки поискового запроса производится поиск. Данные доступ реализуется для обеспечения возможности чтения метаинформации документов

Установка и конфигурирование системы управления базами данных MySQL производится в соответствии с:

- пользовательской документацией к СУБД MySQL;

- параметрами функционирования системы, приведенными в приложении к Настоящему Документу;

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

Apache Tomcat

Контейнер сервлетов, реализующий спецификацию сервлетов и спецификацию JavaServer Pages (JSP). В разработанной системе применяется с целью:

- обеспечения функцонирования компонентов бизнес-логики подсистемы реализации интеллектуального поиска;

- предоставления доступа к компонентам бизнес-логики подсистемы реализации интеллектуального поиска.

Установка и конфигурирование Apache Tomcat производится в соответствии с:

- пользовательской документацией к Apache Tomcat [23];

- параметрами функционирования системы, приведенными в приложении к Настоящему Документу;

Особенности использования данного программного обеспечения регламентируются в документации в соответствии с параметрами функционирования системы.

Java Virtual Machine

Виртуальная машина Java, основная часть исполняющей системы Java - Java Runtime Environment (JRE). В разработанной системе применяется с целью:

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

Установка и конфигурирование Java Virtual Machine производится в соответствии с:

- пользовательской документацией Java Virtual Machine [24];

- параметрами функционирования системы, приведенными в приложении к Настоящему Документу.

Данное программное обеспечение должно обеспечивать выполнение JAR-файлов системы.

5.5 Описание алгоритма (проектной процедуры)

Алгоритм онтологической обработки поискового запроса

Название и характеристика

Назначение алгоритма
Алгоритм онтологической обработки поискового запроса предназначен для осуществления "поиска верхнего уровня" - поиска в указанной онтологии предметной области указанных типов элементов относительно элементов поискового запроса и формирования списков найденных элементов.
Обозначение документа "Описание постановки задач"
Данный документ приведен в Техническом Задании на разработку системы в п. ХХ.
Сведения о процессе (объекте), при управлении которым используется алгоритм
Данный алгоритм производит управление работой модуля онтологической обработки поискового запроса.
Ограничения на возможность и условия применения алгоритма
Условиями функционирования настоящего алгоритма являются:
- наличие списка нормализованных элементов исходного пользовательского поискового запроса, включающегося как минимум один элемент;
- наличие списка онтологий предметных областей, включающегося указатель как минимум на одну онтологию предметной области;
- наличие в базе онтологий файлов онтологий, указанных в списке онтологий, используемых для онтологической обработки поискового запроса;
- наличие доступа к базе онтологий;
- наличие списка искомых типов элементов онтологии предметной области, включающего как минимум один тип;
Общие требования к входным и выходным данным
Требования к условиям функционирования настоящего алгоритма в зависимости от наличия входных данных регламентируются в п.3.5.1.1.4 Настоящего Документа.
Общие требования к входным данным алгоритма:
- Список нормализованных элементов исходного поискового запроса. Данный список должен представлять собой массив строк, каждая из которых содержит нормализованную форму соответствующего элемента исходного поискового запроса;
- Список онтологий предметных областей. Данный список должен представлять собой массив строк, каждая из которых содержит уникальный идентификатор (в системе) онтологии предметной области, которые необходимо использовать в процессе онтологической обработки поискового запроса;
- Список искомых типов элементов онтологии предметной области. Данный список должен представлять собой массив строк, каждая из которых содержит уникальный идентификатор (в системе) типа искомых в онтологии предметной области элементов по отношению к каждому значению из списка нормализованных элементов исходного поискового запроса;
Перечисленные данные должны входить в объект типа SearchObject и регламентируется в п.5.2.1.2 "Используемая информация" Настоящего Документа.
Общие требования к выходным данным алгоритма:
1) Выходные данные должны представлять собой массив списков найденных в каждой онтологии предметной области соответствующих нормализованным элементам исходного поискового запроса указанные типы связей. Каждый список такого вида должен включать:
- уникальный (в системе) идентификатор онтологии предметной области, в которой осуществлялся поиск элементов;
- уникальный (в системе) идентификатор типа искомых в онтологии предметной области элементов, указывающий на тип найденных элементов, содержащихся в данном списке;
- соответствующий нормализованный элемент исходного поискового запроса, соответствующие указанным типом связи которому найденные в онтологии предметной области элементы расположены в данном списке;
- порядковый номер соответствующего нормализованного элемента исходного поискового запроса в строке исходного поискового запроса;
- массив строк, содержащий найденные в указанной онтологии предметной области элементы, указанным типом связи соответствующие указанному нормализованному элементу исходного поискового запроса.

Используемая информация

Требования к используемым (входным) данным регламентируются в п.3.5.1.1.5 "Общие требования к входным и выходным данным" Настоящего Документа. Входные данные должны представлять собой объект класса SearchObject, диаграмма которого приведена на рис.8:

Рисунок 8 - Диаграмма класса SearchObject

Атрибуты объекта класса SearchObject:

- _searchId - уникальный идентификатор процесса поиска в системе;

- _query - исходный поисковой запрос;

- _norm_query - нормализованный поисковой запрос;

- _words_forms - формы слов (элементов) исходного поискового запроса;

- _searchQueries - массив поисковых запросов (исходный и сгенерированные);

- _searchQueriesQuantity - количество поисковых запросов;

- _ontoElemQuantity - количество элементов в массиве сформированных в результате онтологической обработки поискового запроса объектов класса OntologyElementsCollection;

- _queryElements - список нормализованных элементов исходного поискового запроса;

- _usedOntologies - список используемых в процессе онтологической обработки запроса онтологий;

- _ontoTypes - список искомых в процессе онтологической обработки запроса элементов онтологии предметной области;

- _ontoElements - массив сформированных в результате онтологической обработки поискового запроса объектов класса OntologyElementsCollection.

Методы объекта класса SearchObject:

- getResources () - функция выделения памяти для атрибутов объекта класса SearchObject;

- clearResources () - функция освобождения (очистки) памяти, используемой атрибутами объекта класса SearchObject.

Массивы информации, сформированные из входных сообщений
Массивы информации, сформированные из входных сообщений регламентируются в п.3.5.1.3.1 "Массивы информации и (или) сигналы, формируемые для выдачи выходных сообщений" Настоящего Документа по причине упрощения схемы реализации алгоритма с генерацией выходных массивов информации "на лету" без генерации "промежуточных" ("временных") массивов данных.

Результаты решения

Результаты решения регламентируются в п.3.5.1.1.5 "Общие требования к входным и выходным сигналам", п.3.5.1.3.1 "Массивы информации и (или) сигналы, формируемые для выдачи выходных сообщений", п.3.5.1.3.2 "Массивы информации, сохраняемой для решения данной и других задач АС" Настоящего Документа.

Массивы информации и (или) сигналы, формируемые для выдачи выходных сообщений
Массивы информации, формируемые для выдачи выходных сообщений регламентируются в п.3.5.1.1.5 "Общение требования к входным и выходным данным" Настоящего Документа. Данный массив информация должен представлять собой массив объектов класса OntologyElementsCollection, диаграмма которого приведена на рис.9.
Рисунок 9 - Диаграмма класса OntologyElementsCollection
Атрибуты объекта класса OntologyElementsCollection:
- _ontology - идентификатор онтологии;
- _type - тип искомых элементов (связей);
- _inQueryNumber - порядковый номер элемента исходного запроса;
- _sourceElement - нормализованный элемент исходного запроса;
- _elements - список найденных в онтологии предметной области элементов.
Массивы информации, сохраняемой для решения данной и других задач АС
Массивом информации, сохраняемым для решения данной или других задач АС является массив выходных данных, регламентируемый в п.3.5.1.1.5 "Общие требования к входным и выходным данным" и п.3.5.1.3.1 "Массивы информации и (или) сигналы, формируемые для выдачи выходных сообщений" Настоящего Документа. Данные массивы информации сохраняются во входном объекте класса SearchObject, регламентированном в п.3.5.1.1.5 "Общие требования к выходным и выходным данным" и п.3.5.1.2 "Используемая информация" Настоящего Документа.

Математическое описание

Математическое описание данного алгоритма отсутствует и не регламентируется в Настоящем Документе.

Алгоритм решения

На рис.10 приведена диаграмма последовательности взаимодействия между собой компонентов системы, реализующих выполнение алгоритма онтологической обработки поискового запроса и информация, передаваемая между ними.

Рисунок 10 - Диаграмма последовательности процесса онтологической обработки запроса

Диаграмма деятельности (высокоуровневой, независимой от архитектуры системы), реализуемой в алгоритме онтологической обработки запроса приводится на Рис. 11.

Рисунок 11 - Диаграмма деятельности алгоритма онтологической обработки запроса (высокоуровневая, независимо от архитектуры системы)

Описание логики алгоритма
Выполнение алгоритма онтологической обработки запроса представляет собой циклическое прохождение:
- всех отмеченных для использования в данном алгоритме онтологий;
- всех нормализованных элементов пользовательского поискового запроса;
- всех отмеченных типов искомых в онтологии элементов.
Это реализуется через циклическое прохождение всех трех списков - тройной вложенный цикл с выполнением запроса к онтологии в каждой итерации.
Основные шаги выполнения алгоритма с учетом программной архитектуры системы:
- Передача массива с необходимыми для выполнения алгоритма онтологической обработки запроса данными модулю онтологической обработки запроса;
- Передача модулем онтологической обработки запроса источнику данных названия онтологии предметной области;
- Передача источником данных интерфейсу базы онтологий названия онтологии;
- Отправка интерфейсом базы онтологий запроса к базе онтологий, направленного на получение OWL-файла указанной в запросе онтологии предметной области;
- Получение интерфейсом базы онтологий OWL-файла запрашиваемой онтологии или кода ошибки в случае ее возникновения (например, отсутствия запрашиваемого OWL-файла онтологии в базе онтологий системы);
- Получение источником данных OWL-файла онтологии;
- Создание источником данных объекта класса Онтологии (Регламентируется спецификой используемой библиотеки для работы с онтологиями) по полученному файлу онтологии;
- Возврат источником данных кода результата выполнения загрузки и чтения OWL-файла онтологии;
- Передача модулем онтологической обработки поискового запроса источнику данных:
- нормализованного элемента исходного поискового запроса;
- идентификатора типа искомых в онтологии предметной области и связанных с нормализованным элементом исходного поискового запроса указанным типом связи элементов;
- названия используемой онтологии предметной области;
- Выполнение источником данных регламентируемого спецификой используемой API-библиотеки запроса к объекту онтологии на предмет получения списка найденных элементов;
- Возврат объектом класса Онтологии источнику данных результатов выполнения запроса;
- Формирование источником данных списка найденных элементов;
- Возврат источником данных списка найденных элементов модулю онтологической обработки запроса;
- Запись полученного списка найденных элементов онтологии в массив выходных данных алгоритма;
- Возврат ядру системы массива результатов выполнения "поиска первого уровня".
Примечания к алгоритму онтологической обработки запроса:
- шаги 2-14 выполняются для каждой указанной в списке используемых в процессе онтологической обработки запроса онтологии;
- шаги 9-14 выполняются для каждого указанного в списке нормализованных элементов исходного поискового запроса значения;
- шаги 9-14 выполняются для каждого указанного в списке искомых типов элементов онтологии значения.
Фрагмент кода модуля онтологической обработки поискового запроса, реализующего данный алгоритм приведен в приложении А.
Соотношения, необходимые для контроля достоверности вычислений
Достоверность вычислений данного алгоритма определяется на завершающем этапе обработки пользовательского поискового запроса, исходя из показателей релевантности и пертинентности результатов поиска. Определение релевантности найденных документов поисковому запросу определяется при помощи встроенных средств системы полнотекстового поиска. Определение пертинентности результатов поиска производится статистически, путем анализа поведения пользователя - отслеживании открываемых пользователем документов-результатов поиска, а так же методом экспертных оценок специалистами предметных областей на этапе оценки результатов работы системы. При открытии пользователем ссылки из списков документов-результатов поиска производится сопоставление и инкремент показателя пертинентности открытого документа относительно исходного пользовательского поискового запроса, независимо от списка результатов - выполненного по исходному пользовательскому запросу либо по расширенному при помощи онтологии предметной области.
Описание связей между частями и операциями алгоритма
Для данного алгоритма описание связей между частями и операциями алгоритма не регламентируется в Настоящем Документе.
Указания о порядке расположения значений или строк в выходных документах
Данные указания регламентируются в п.3.5.1.1.5 "Общие требования к входным и выходным данным" и п.3.5.1.3.1 "Массивы информации и (или) сигналы, формируемые для выдачи выходных сообщений" Настоящего Документа.

6. Рабочая документация

6.1 Руководство пользователя

Введение

Область применения

Область применения заключается в выполнении интеллектуального поиска документов в информационной системе.

Краткое описание возможностей

- Предоставление пользователю системы удобного интерфейса для формирования поискового запроса, выбора онтологий, используемых для обработки поискового запроса а так же искомых в онтологиях элементов;

- Выполнение морфологической обработки пользовательского поискового запроса к системе с целью приведения всех элементов (слов) запроса к нормальной форме (им. падеж, единственное число);

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


Подобные документы

  • Развитие информационного бизнеса, электронной коммерции на основе Интернет. Описание предметной области, процессов и типичного хода событий при создании информационной системы виртуального предприятия. Калькуляция разработки электронной торговли.

    курсовая работа [872,8 K], добавлен 22.05.2015

  • Разработка программной системы для регистратуры поликлиники; создание базы данных. Описание предметной области: сведения о врачах, пациентах, учет обращений, регистрация обследований и назначенных препаратов. Содержимое таблиц, пользовательский интерфейс.

    курсовая работа [6,2 M], добавлен 30.07.2012

  • Логическая и физическая структура базы данных. Аппаратное и программное обеспечение системы. Создание представлений, хранимых процедур, пользовательских функций, триггеров. Описание основной структуры ASP.NET документов. Пользовательский интерфейс.

    курсовая работа [4,2 M], добавлен 21.05.2013

  • Программирование полнофункциональной системы учета для предметной области "Концертный зал": построение концептуальной и реляционной моделей базы данных, описание способов реализации запросов и вывода отчета на экран, разработка интерфейса пользователя.

    курсовая работа [1,5 M], добавлен 22.11.2010

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

    дипломная работа [2,1 M], добавлен 11.07.2015

  • Обоснование выбора метода извлечения ключевых слов. Анализ предметной области, проектирование информационной системы поиска релевантных документов. Реализация запросов к электронным библиотекам. Реализация интерфейса системы поиска релевантных документов.

    дипломная работа [1,1 M], добавлен 21.09.2016

  • Реализация базы данных и серверной части информационной системы склада средствами СУБД Microsoft SQL Server. Анализ предметной области, информационных задач, пользовательской системы. Программа реализации проекта. Выработка требований и ограничений.

    курсовая работа [2,4 M], добавлен 15.11.2015

  • Анализ предметной области. Обеспечение качества проектной документации. Построение инфологической (концептуальной) модели предметной области. Проектирование физической структуры базы данных. Разработка интерфейса, организация ввода и поиска данных.

    курсовая работа [2,5 M], добавлен 10.01.2016

  • Моделирование предметной области. Состав программного модуля. Разработка логической структуры единой базы данных банковской информационной системы "БИС". Создание экранных форм для ввода и корректировки информации. Разработка интерфейса пользователя.

    курсовая работа [1,8 M], добавлен 17.05.2016

  • Анализ предметной области, главных функций организации. Разработка макета внутренней структуры программного обеспечения информационной системы в виде диаграммы классов. Составление схемы базы данных. Разработка интерфейса и руководства пользователя.

    курсовая работа [866,3 K], добавлен 02.06.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.