Опубликован: 24.09.2008 | Уровень: специалист | Доступ: платный | ВУЗ: Московский физико-технический институт
Лекция 5:

Методы объектного анализа и построения моделей предметных областей

< Лекция 4 || Лекция 5: 12345 || Лекция 6 >

4.1.2. Объектный метод построения моделей ПрО

Наибольшее распространение среди методов анализа ПрО получил метод OOAS Шлеера и Меллора [4.1], предназначенный для отображения ПрО следующими моделями:

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

Согласно этого методу ПрО анализируется в три этапа: информационное моделирование, моделирование состояний, моделирование процессов. В результате их выполнения создается система в виде совокупности этих моделей. Информационная модель отображает ПрО как мир объектов с характеристиками и атрибутами.

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

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

Анализ ПрО состоит в выявлении объектов, предоставлении им уникальных и значимых названий, соответствующих смысловым понятиям в этой предметной области. В качестве объектов могут выступать:

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

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

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

Описательный атрибут устанавливает реальную характеристику, которая может определяться одним из таких возможных способов:

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

Указывающий атрибут задает форму, назначение, перечисление или ссылку.

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

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

Ссылка на некоторый атрибут может уточняться именем класса, задаваемым через точку, а атрибуты - отношениями, которые определяются по следующим правилам:

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

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

В информационной модели связи между объектами изображаются стрелками, указывающими направление связи. Возле рамки объекта, принимающего участие в связи, на линии стрелки указывается роль, которую этот объект поддерживает в данной связи. Связь 1:1 обозначается двунаправленной стрелкой, имеющей по одному "наконечнику" с каждой стороны; связь 1:N представляется стрелкой, имеющей два "наконечника" со стороны объекта, который состоит в связи с несколькими объектами; и, наконец, по два "наконечника" с каждой стороны имеет стрелка, означающая связь N:M.

 Пример информационной модели.

Рис. 4.1. Пример информационной модели.

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

В этом рисунке, связь R3 - логическое следствие связей R1 и R2.

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

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

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

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

В данном методе предусмотрены две нотации для представления динамических аспектов поведения объектов: диаграмма перехода состояний и таблица перехода в состояния.

При построении модели состояний для каждого объекта информационной модели определяется следующее:

  1. множество состояний, в которых объект может находиться;
  2. множество инцидентов или событий, которые побуждают экземпляры класса изменять свое состояние;
  3. правила перехода объекта из зафиксированного состояния на новое состояние при условии, что произойдет некоторое событие из множества событий;
  4. действие на каждое из состояний выполняется при переходе в новое состояние.

Эта информация представляется в диаграмме перехода состояний (рис. 4.2) исходя из следующих условий:

  • каждое состояние, определенное для класса объектов, получает номер, уникальный идентификатор (ІD) и название;
  • состояние обозначается рамкой, содержащей номер и название;
  • переход от состояния к состоянию изображается направленной дугой, помеченной меткой и названием события, обусловившего переход;
  • начальное состояние обозначается стрелкой, направленной к соответствующей рамке, и является состоянием, которое экземпляр объекта приобретает после своего создания;
  • заключительное состояние жизни экземпляра объекта (продолжение или разрушение) обозначается пунктирной рамкой;
  • указание на действия, которые должны быть выполнены экземпляром объекта для перехода в другое состояние.

Изменение состояния экземпляра класса объектов осуществляется при выполнении таких действий:

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

Изменение состояния экземпляра класса объектов осуществляется при выполнении таких действий:

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

Рис. 4.2. Модель состояний для обслуживания клиентов

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

< Лекция 4 || Лекция 5: 12345 || Лекция 6 >
Александр Медов
Александр Медов

Здравствуйте,при покупке печатной формы сертификата,будут ли выданы обе печатные сторны?

Александр Медов
Александр Медов

Здравствуйте, прошел курс МБА Управление ИТ-проектами и направил документы на получение диплома почтой. Подскажите, сроки получения оного в бумажной форме?

:

Иван Одоевский
Иван Одоевский
Россия, Москва
Давид Белозеров
Давид Белозеров
Россия