РАЗРАБОТКА МОДЕЛИ ЗНАНИЙ
В базе должны храниться следующие данные:
Данные о предприятии-исполнителе: название, адрес, телефон, специальный режим, материальная база, экономические показатели.
Данные об изделии: размеры, вид сборки, производственные ресурсы, стандартные решения.
Такие данные о предприятии-исполнителе, как название, адрес и телефон, следует поместить в одну таблицу, так как для каждого предприятия будет храниться по одному экземпляру данных такого типа. Кроме того, в таблицу следует добавить поле комментария о предприятии. Каждое предприятие характеризуется также уникальным ключом.
Экономические показатели следует вынести в отдельную таблицу, так как у одного предприятия может быть много экономических показателей. Каждый показатель характеризуется уникальным номером и двумя целочисленными значениями. Также в таблицу добавлено поле комментария для внесения заметок о показателе. Эта таблица по указанной выше причине связана с таблицей предприятий отношением «один ко многим».
Показатели материальной базы также выносятся в отдельную таблицу, так как у предприятия может быть много показателей материальной базы, причём их точное количество не определено. Каждый показатель характеризуется уникальным номером и двумя целочисленными значениями. Также для большей гибкости в таблицу введено поле комментария. Эта таблица также связана с таблицей предприятий отношением «один ко многим».
Такая структура таблиц экономических показателей и материальной базы продиктована соображениями универсализации структуры знаний. Эти таблицы могут обновляться, например, посредника, в базе данных которого устанавливается соответствие между хранящимися текстовыми описаниями параметров и их уникальными ключами, хранящимися в базе знаний.
Так как на предприятии может быть несколько режимов, то они вынесены в отдельную таблицу. Каждый режим характеризуется уникальным ключом и названием. Также к описанию режима добавлено поле комментария. Таблица режимов, как и описанные выше таблицы, связана с таблицей предприятий отношением «один ко многим».
Также в базе знаний должны содержаться сведения о производящихся предприятием в настоящий момент изделиях и производившихся ранее изделиях. Сведения о производившихся ранее изделиях (архив) нужны, например, для того, чтобы иметь возможность оценить, какой опыт в производстве изделий данного типа имеет предприятие.
Сведения о производимых ранее изделиях вынесены в отдельную таблицу, и содержат наименование изделия, количество заказов (в качестве характеристики востребованности изделия), комментарий и уникальный ключ. Эта таблица связана с таблицей предприятий отношением «один ко многим».
Сведения о производящихся в настоящий момент изделиях содержат наименование изделия, вид сборки, дату изготовления изделия, количество заказов изделия. Так как обычно предприятие производит не одно изделие, и точное количество их неизвестно, то сведения о них вынесены в отдельную таблицу, которая связана отношением «один ко многим» с таблицей предприятий.
Каждое производимое изделие также характеризуется размерами и заказчиками.
Сведения о размерах вынесены в отдельную таблицу, так как их может быть разное количество у разных изделий. Они содержат название размера, описание размера, а также его уникальный ключ. Таблица размеров связана с таблицей изделий отношением «один ко многим».
Так как заказчиков изделия может быть много, сведения о них содержатся в отдельной таблице. Они включают: наименование заказчика, адрес заказчика, телефон заказчика, комментарий, а также уникальный ключ заказчика. Эта таблица также связана с таблицей изделий отношением «один ко многим».
Получившаяся модель знаний представлена на рис. 3.
Рис. 3. Модель знаний.
Определим атрибуты каждой из сущностей.
Предприятия:
EntKey – уникальное ключевое поле;
Name – название предприятия;
Address – адрес предприятия;
Phone – телефон предприятия;
Comment – комментарий.
Экономические показатели:
Number – уникальное ключевое поле;
Value1 и Value2 – значения показателя;
Comment – комментарий;
EntKey – ключ предприятия-обладателя показателя.
Материальная база:
Number – уникальное ключевое поле;
Value1 и Value2 – значения показателя;
Comment – комментарий;
EntKey – ключ предприятия-обладателя показателя.
Режимы предприятия:
SecKey – уникальное ключевое поле;
Name – наименование режима;
Comment – комментарий;
EntKey – ключ предприятия-обладателя режима.
Архив:
Number – уникальное ключевое поле;
IzdName – наименование изделия;
KolZak – количество заказов изделия;
Comment – комментарий;
EntKey – ключ предприятия, производившего изделие.
Изделие:
IzdKey – уникальное ключевое поле;
Name – наименование изделия;
Vid_Sb – вид сборки изделия;
EntKey – ключ предприятия, производящего изделие;
IsgDate – дата первого изготовления изделия;
KolZak – количество заказов изделия.
Размеры:
SizeKey – уникальное ключевое поле;
Name – название размера;
Description – описание размера;
IzdKey – ключ изделия, к которому этот размер относится.
Заказчик:
EntKey – уникальный ключ заказчика;
Name – наименование заказчика;
Address – адрес заказчика;
Phone – телефон заказчика;
Comment – комментарий;
IzdKey – ключ заказанного изделия;
Ключом связи таблицы «Предприятия» с таблицами «Экономические показатели», «Материальная база», «Режимы предприятия», «Архив» и «Изделия» является поле EntKey. Ключом связи таблицы «Изделия» с таблицами «Размеры» и «Заказчик» является поле IzdKey.
Такая модель знаний позволяет:
Избежать избыточности;
Уменьшить место, занимаемое базой данных на диске;
Обеспечить простоту реализации;
Воспользоваться при реализации программного продукта стандартными, хорошо разработанными технологиями;
Снизить количество ошибок в программном продукте;
Снизить время разработки;
Снизить стоимость разработки.