v¦bo project
О проекте Vlad's Business Objects
Объектное моделирование
Трансакция
Свойства
Автор: Тюрин Владислав
Дата публикации: 27 марта 2015
Поделиться
Файлы
Новое
Чем хороши шаблоны, условия для бизнеса на старте, как менеджеры теряют время,...
Как работать по 12 часов в день, какая экономика может себе позволить инновации,...
Абсолютная экономическая эффективность, как статистика измеряет прошлое, ещё...
Поиск
c l i c k ! m e
Описывается одна из важнейших базовых концепций проекта: создание и использование объектных моделей. Это основа процессов исследования бизнес-моделей в рамках проекта.

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

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

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

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

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

Задача трансакции – это метка или набор меток, которые обусловливают ожидаемый результат трансакции для инициатора. Задача трансакции определяет, для чего она осуществляется и требуется ли её повторение или завершение трансакций с другим объектом. Для взаимодействия с конкретным объектом может быть определена общая для всех трансакций задача. Задача может изменяться. Трансакция устанавливает задачу до следующей трансакции. Соответственно, задача имеет значение для всех трансакций, в которых выступит инициатор в качестве реактора после трансакции, устанавливающей задачу. Трансакция может повторить задачу, установленную предыдущей трансакцией, в этом случае она называется трансакцией с текущей задачей. Может существовать класс трансакций с текущей задачей. Задача может изменяться в зависимости от реактора трансакции, т.е. иметь персональную направленность.

Результатом трансакции может быть: ознакомление с атрибутом реактора, изменение атрибута реактора (в том числе создание/генерализация или игнорирование/опущение атрибута). Результатом трансакции может быть, например, создание нового объекта, для этого, по условиям настоящего документа, при моделировании достаточно создать идентификатор объекта.

В зависимости от типа трансакций (по методам) они разделяются на: инициирующие, реактивные и программные. Инициирующая трансакция – это трансакция, которая является изначальной для взаимодействия, и без которой бы такое взаимодействие не началось бы. Реактивная трансакция – это трансакция, которая является ответом на инициирующую трансакцию. Программная трансакция – это трансакция, которая осуществляется в рамках некоторой заданной последовательности трансакций и не зависит от реактора.

В зависимости от характера трансакций (по задачам) они разделяются на трансакции: конфликта, игры с сотрудничества. Трансакция конфликта – это трансакция, базовой задачей которой является влияние на атрибуты реактора. Трансакция игры – это трансакция, базовой задачей которой является установление собственных атрибутов, на основе результатов взаимодействия с атрибутами реактора. Трансакция сотрудничества – это трансакция, базовой задачей которой является совместное влияние инициатора и реактора на атрибуты. Характер трансакций проявляется как напрямую в каждой конкретной трансакции, так и по ряду трансакции между парой конкретных объектов.

В зависимости от принципа трансакций (по статусу) они разделяются на трансакции: безразличные, доверительные, секретные. Секретная трансакция – это трансакция, при которой основными являются статусы закрытый и абстрактный. Доверительная трансакция – это трансакция, при которой основными являются статусы открытый и подчиненный. Безразличная трансакция – это трансакция, при которой основным является статус неопределенный.

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

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

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

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

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

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

Дополнительные виды и последовательности трансакций определяются и регламентируются соответствующими методами моделирования динамических моделей.

Скачайте полную версию публикации и дополнительные материалы
по ссылкам в разделе 'Файлы' в левой части страницы.