Создание и внедрение программного продукта "Объектно-ориентированный менеджер структуры универсальной системы хранения данных"
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
? объекта, и его версии, описывающие изменение объекта в процессе жизненного цикла. В каждый момент времени только одна версия мастер-объекта является эффективной, то есть используется для представления состояния объекта в указанный момент времени.
Для каждого класса объектов задается перечень возможных этапов жизненного цикла его объектов, а каждому объекту данного класса в конкретный момент времени должен быть присвоен какой-либо этап из этого перечня.
Каждый мастер-объект и версия обязательно имеют идентификаторы, которые называются .
Обязательные атрибуты класса объектов:
-наименование (NAME) - уникальное отображаемое имя класса (например, Спецификация, Узел, Деталь и т.п.);
-признак замороженности класса (IS_FROZEN) - указывает, можно ли изменять описание класса или удалить его.
Основные операции над классами объектов:
-Создание нового класса. Создается запись о новом классе, пользовательские атрибуты не определены;
-Удаление класса. Удаляется запись о классе и всех его пользовательских атрибутах. Удаление класса возможно, если он не заморожен и нет ни одного объекта данного класса;
-Добавление, изменение описания и удаление атрибутов класса;
-Добавление и удаление этапов жизненного цикла из перечня этапов;
-Добавление и удаление правил вычисления эффективной версии из перечня правил;
-Заморозить класс - изменения и удаление класса запрещено;
-Разморозить класс - изменения и удаление класса возможны.
Обязательные атрибуты мастер-объекта:
-код мастер-объекта (OBJ_CODE) - уникальный идентификатор мастер-объекта в следующем формате MMMM.NNNN , где
a)MMMM - общая часть наименования таблицы БД, где находится данный мастер-объект;
b)NNNN - уникальный идентификатор записи о данном мастер-объекте в таблице БД (ID записи);
-признак замороженности мастер-объекта (IS_FROZEN) - указывает, можно ли изменять мастер-объект или удалить его;
-по крайней мере, одно правило вычисления эффективной версии;
-поля для управления доступом к объекту (см. 2.1.4).
Версия - некоторое фиксированное состояние объекта в определенный момент времени.
Обязательные атрибуты версии:
-ссылка на мастер-объект (ID_MASTER_OBJ) - уникальный код мастер-объекта (ID записи), к которому относится данная версия;
-номер версии (VERSION) - порядковый номер версии для данного мастер-объекта, представляет собой целое число, нумерация начинается с 1;
-признак замороженности версии (IS_FROZEN) - указывает, можно ли изменять версию или удалить ее;
-признак check-in/check-out (IS_CHECK) - указывает на то, что версия заблокирована пользователем (взята на редактирование);
-ссылка на текущий статус версии (ID_LC_STAGE) - уникальный код этапа жизненного цикла объекта.
Второй вид классов - классы связей. Это структуры данных, описывающие отношения между объектами в системе. Используются два вида связей:
-. Связи данного вида называются иерархическими связями и не обладают атрибутами. Они создаются автоматически при создании версии объекта.
-. Связи данного вида называются логическими и создаются пользователями системы. Такие связи имеют атрибуты.
Обязательные атрибуты класса связей:
-прямое наименование (DIRECT_VERB) - наименование, используемое в описании отношения родительского объекта к подчиненному объекту. Например, в предложении Узел состоит из Детали1 и Детали2 фраза состоит из - это прямое наименование;
-обратное наименование (INVERSE_VERB) - наименование, используемое в описании отношения подчиненного объекта к родительскому объекту. Например, в предложении Деталь1 входит в Узел фраза входит в - это обратное наименование;
-признак замороженности связи (IS_FROZEN) - указывает, можно ли изменять описание класса или удалить его.
Основные операции над классами связей:
-создание нового класса. Создается запись о новом классе, присоединяемые атрибуты не определены;
-удаление класса. Удаляется запись о классе и всех его присоединенных атрибутах. Удаление класса возможно, если он не заморожен и нет ни одного объекта данного класса;
-добавление, изменение описания и удаление атрибутов класса;
-заморозить класс - изменения и удаление класса запрещено;
-разморозить класс - изменения и удаление класса возможны.
Обязательные атрибуты логической связи:
-код мастер-объекта, от которого идет связь (PARENT_OBJ_CODE);
-уникальный идентификатор записи (ID записи) о версии, от которой идет связь (ID_VERSION);
-код мастер-объекта, к которому идет связь (CHILD_OBJ_CODE)
-признак check-in/check-out (IS_CHECK) - указывает на то, что связь заблокирована пользователем (взята на редактирование).
Допустимые операции над логическими связями:
-Установление или изменение привязки логической связи;
-Редактирование несистемных атрибутов логической связи;
-Чтение атрибутов связи.
Логические связи создаются пользователем в процессе формирования иерархии объектов.
Правило выбора эффективной версии - функция, определяющая на основании значений атрибутов мастер-объекта и его версий, а также всех других мастер-объектов и их версий, какая версия в данный момент времени яв