Создание и внедрение программного продукта "Объектно-ориентированный менеджер структуры универсальной системы хранения данных"

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



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

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

Каждый мастер-объект и версия обязательно имеют идентификаторы, которые называются .

Обязательные атрибуты класса объектов:

-наименование (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) - указывает на то, что связь заблокирована пользователем (взята на редактирование).

Допустимые операции над логическими связями:

-Установление или изменение привязки логической связи;

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

-Чтение атрибутов связи.

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

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