Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебники CALS(SE) / Август-Вильгельм Шеер - Моделирование бизнес-процессов.doc
Скачиваний:
198
Добавлен:
11.02.2015
Размер:
5.96 Mб
Скачать

А.3.2.3.3.2. Связи с базами данных

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

С другой стороны, если в объектно-ориентированном проектировании используются реляционные системы баз данных, могут возникать проблемы со связью двух парадигм проектирования. По умолчанию возможно применения двух противоположных методов для решения этого вопроса (Oestereich. Objektorientierte Softwareentwicklung. 1997, с. 136).

Метод 1. Каждый объект каждого класса хранится только в одном отношении, поэтому необходимо обновлять различные виды кортежей в таблице. Принцип метамодели требует, чтобы все КЛАССЫ были связаны только с одним ОТНОШЕНИЕМ (см. рис. 127а).

Рис. 127а. Каждый долговечный объект хранится в реляционной таблице

Метод 2. Для каждого класса создается отдельная таблица с мощностью ассоциации 1:1 (см. рис. 127б). При этом возникает необходимость в группировке данных из нескольких доминирующих классов для объектов подклассов.

Рис. 127б. Каждому классу присваивается отношение

Компромиссным решением было бы хранить данные на самом нижнем уровне подклассов (Oestereich. Objektorientierte Softwareentwicklung. 1997, с. 137). Это означало бы группировку всех взаимосвязанных данных в одном объекте. Однако в этом случае при обращении к доминирующим классам с множеством подклассов сначала пришлось бы сгруппировать данные из множества таблиц.

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

А.3.2.4. Описание реализации

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

Объектно-ориентированные языки программирования (C++, Smalltalk, Java и т.д.) позволяют реализовать методы и диаграммы спецификации проекта в программном коде (см. рис. 128, где описание класса «окружность», приведенное на рис. 125, реализовано на языке C++).

class cirle

{

int radius; point position;

public:

void radius (int newradius); void position (point newpoint); void display (); void hide ();

};

Void cirle::radius (int newradius)

{

if (newradius > 0)// evaluation

{

};" };

Конкретная реализация одиночных операций здесь опущена.

Рис. 128. Реализация объектного класса, приведенного на рис. 125 (Oestereich. Objektorientierte Softwareentwicklung. 1997, с. 37)

А.3.3. Отношения между функциями и выходом

Понятие «выход» охватывает материальный выход и услуги, в том числе информационные.

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

На рис. 129 показаны отношения между функциями и выходом в здании ARIS.

Рис. 129. Отношения между функциями и выходом