Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3. Приёмы моделирования справочников.docx
Скачиваний:
8
Добавлен:
19.06.2023
Размер:
326.57 Кб
Скачать

Аннотация

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

SUMMARY

The results of the design and fragments of the implementation of the framework that supports work at the execution stage with reference books of various products using the designer of product classes with a specification of the composition and types of product parameters using the example of various product reference books are presented. The results of testing the developed procedures with examples of specifications of various product directories are presented.

Содержание

1. Разработка функциональных требований к подсистеме 6

2. Разработка модели классов 6

3. Разработка модели хранения 7

4. Подготовка скриптов метаданных 7

5. Разработка основных процедур 9

6. Тестирование разработки. 17

Выводы 20

1. Разработка функциональных требований к подсистеме

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

Рис. 1. Диаграмма прецендентов работы со справочником.

2. Разработка модели классов

Рис. 2. Диаграмма классов справочника.

3. Разработка модели хранения

Рис. 3. ER-диаграмма справочника.

4. Подготовка скриптов метаданных

Создание таблиц:

/* Единицы измерения*/ CREATE TABLE UM ( s_name VARCHAR(10) UNIQUE, name VARCHAR(50), PRIMARY KEY (name) ); /* Промежуточные вершины (классы) */ CREATE TABLE Metaclass ( name VARCHAR(100), s_um VARCHAR(10), parent VARCHAR(100), PRIMARY KEY (name), FOREIGN KEY (parent) REFERENCES Metaclass(name), FOREIGN KEY (s_um) REFERENCES UM(s_name) ); /* Терминальные вершины */ CREATE TABLE Product ( name VARCHAR(100), parent VARCHAR(100) NOT NULL, PRIMARY KEY (name), FOREIGN KEY (parent) REFERENCES Metaclass(name) ); /* Перечисления (параметры) */ CREATE TABLE Enum ( s_name VARCHAR(15), name VARCHAR(100), PRIMARY KEY (name), UNIQUE (s_name) ); /* Значения перечислений */ CREATE TABLE EnumVal ( idVal SERIAL, s_name VARCHAR(15), name VARCHAR(100), val DOUBLE PRECISION, s_enumName VARCHAR(15) NOT NULL, PRIMARY KEY (idVal), UNIQUE (s_enumName, name), UNIQUE (s_enumName, s_name), FOREIGN KEY (s_enumName) REFERENCES Enum (s_name) ); /* Параметры классов */ CREATE TABLE Parameters ( s_name VARCHAR(10), name VARCHAR(100), varType VARCHAR(5), s_um VARCHAR(10), s_enumName VARCHAR(15), PRIMARY KEY (name), UNIQUE (s_name), FOREIGN KEY (s_um) REFERENCES UM(s_name), FOREIGN KEY (s_enumName) REFERENCES Enum (s_name) ); /* Ограничения на значения числовых параметров метаклассов */ CREATE TABLE ParamRestrictions ( className VARCHAR(100), s_paramName VARCHAR(10), minVal DOUBLE PRECISION, maxVAL DOUBLE PRECISION, FOREIGN KEY (className) REFERENCES Metaclass (name), FOREIGN KEY (s_paramName) REFERENCES Parameters (s_name) ); /* Значения параметров конечных продуктов */ CREATE TABLE ParamValues ( productName VARCHAR(100), s_paramName VARCHAR(10), val DOUBLE PRECISION, s_enumVal VARCHAR(15), FOREIGN KEY (productName) REFERENCES Product (name), FOREIGN KEY (s_paramName) REFERENCES Parameters (s_name) );

Рис. 4. Представление метаданных таблиц в DataGrip.