Функциональное моделирование SADT (IDEF0)

Методология SADT (IDEF0) представляет собой совокупность мето­дов, пра­вил и процедур, предназначенных для построения функцио­наль­ной модели объекта предметной области (описание на стандарты IDEF находится на сайте http://www.idef.com). Функ­циональная мо­дель SADT отображает функциональную структуру объекта, т.е. прои­зво­ди­мые им действия (бизнес-процессы) и связи между ними (п. 2.2).

В основе этой методологии лежат следующие кон­цепции.

· Графическое представление блочного моделирования. Графики бло­ков и дуг SADT-диаграммы отображает функцию в виде блока, а интер­фей­сы входа/выхода представляются дугами, соответственно входящими в блок и выходящими из него. Взаимодействие блоков описы­ва­ется посредством интерфейсных дуг, выражающих «ограничения», кото­рые, в свою очередь, определяют, когда и каким образом функции выпол­ня­ются и управляются.

· Строгость и точность. Выполнение правил SADT требует стро­гости. Правила SADT включают в себя: ограничение количества блоков на каждом уровне декомпозиции (правило 3–6 блоков), связность диаграмм (номера блоков), уникальность меток и наименований (отсутствие повторяющихся имен), синтаксические правила для графики (блоков и дуг), разделение входов и управлений (правило определения роли данных).

· Отделение организации от функции, т.е. исключение влияния ор­гани­зационной структуры на функциональную модель.

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

Состав функциональной модели

В результате применения методологии SADT появляется модель, ко­то­рая состоит из диаграмм, фрагментов текстов и глоссария, имеющих ссыл­ки друг на друга. Диаграммы, все функции ИС и интерфейсы представ­лены как блоки и дуги. Место соеди­не­ния дуги с блоком опре­де­ляет тип интерфейса. Управляющая инфор­ма­ция входит в блок сверху, в то время как информация, которая под­вер­га­ет­ся обработке, показана с левой стороны блока, а результаты выхода – с пра­вой. Механизм (человек или автоматизированная система), который осу­ществляет операцию, представляется дугой, входящей в блок снизу (рисунок 1.6.3.1.1).

 
  Функциональное моделирование SADT (IDEF0) - student2.ru

Рисунок 1.6.3.1.1. Функциональный блок и интерфейсные дуги

Одной из наиболее важных особенностей методологии SADT явля­ет­ся постепенное введение все больших уровней детализации по мере созда­ния диаграмм, отображающих модель. На рисунках 2.1.1; 2.2.3.3 и 2.2.3.5 приведены три диаграммы: контекстуальная, первого и второго уровня модели изготовления изделий соответственно. Каждый компонент модели может быть декомпозирован на дру­гой диаграмме. Каждая диаграмма иллюстрирует «внутреннее строение» блока на родительской диаграмме.

Иерархия диаграмм

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

Затем блок, который представляет систему в качестве единого моду­ля, детализируется на другой диаграмме с помощью нескольких блоков, со­единенных интерфейсными дугами (рисунок 2.2.1). Эти блоки определяют основные подфункции исходной функции. Данная деком­позиция выявляет полный набор подфункций, каждая из которых показана как блок с границами, определенными интерфейс­ными дугами. Каждая из этих подфункций может быть декомпозирована подобным образом в целях большей детализации (рисунки 2.2.3.4; 2.2.3.5; 2.2.6.1; 2.2.6.3).

На каждом шаге декомпозиции более общая диаграмма называется родительской для более детальной диаграммы. Дуги, входящие в блок и выходящие из него на диаграмме верхнего уровня, являются точ­но теми же самыми, что и дуги, входя­щие в диаграмму нижнего уровня и выходящие из нее, потому что блок и диаграмма изображают одну и ту же часть системы. Как результат – построение дерева диаграмм (рисунок 2.2.5.1).

Моделирование данных

Основные понятия

Цель моделирования данных состоит в обеспечении разработчика ИС концептуальной схемой базы данных в форме одной мо­дели или нескольких локальных моделей, которые относительно легко могут быть перенесены в любую систему баз данных.

Наиболее распространенным средством моделирования данных яв­ляются диаграммы «сущность-связь» (ERD).

Базовыми понятиями ERD явля­ются (п. 3.1.1):

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

Каждая сущность должна обладать некоторыми свойствами:

· иметь уникальное имя; к одному и тому же имени должна всегда применяться одна и та же интерпретация; одна и та же интерпре­тация не может применяться к различным именам, если только они не являются псевдонимами;

· обладать одним или несколькими атрибутами, которые либо при­надлежат сущности, либо наследуются через связь;

· обладать одним или несколькими атрибутами, которые однознач­но идентифицируют каждый экземпляр сущности;

· может обладать любым количеством связей с другими сущностями модели.

Связь (Relationship) – поименованная ассоциация между дву­мя сущ­ностями, значимая для рассматриваемой предметной обла­сти. Связь – это ассоциация между сущностями, при которой каж­дый экземпляр одной сущности ассоциирован с произвольным (в том числе нулевым) коли­чест­вом экземпляров второй сущности, и наоборот.

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

Экземпляр атрибута – это определенная характеристика отдель­ного элемента множества. Экземпляр атрибута определяется типом харак­те­рис­тики и ее значением, называемым «значение атрибута». В ER-мо­де­ли атрибуты ассоциируются с конкретными сущностями. Таким образом, экзем­пляр сущности должен об­ладать единственным определенным значе­нием для ассоциированного атрибута.

Методология IDEF1

Метод IDEF1 позволяет построить модель данных, эквива­лент­ную реляционной модели в третьей нормальной форме. В настоящее время на основе совершенствования методологии IDEF1 создана ее новая версия – ме­­то­до­логия IDEF1X, разработанная с учетом таких требований, как просто­та изучения и возможность автоматизации. IDEF1Х-диаграммы ис­пользуются рядом распространенных СASE-средств: ERWin (п. 3.1), Design/IDEF.

Сущность в методологии IDEF1X является независимой от иден­ти­фикаторов или просто независимой, если каждый экземпляр сущности может быть однозначно идентифицирован без определения его отношений с другими сущностями. Сущность называется зависимой от иденти­фи­ка­то­ров или просто зависимой, если однозначная идентификация экзем­пля­ра сущности зависит от его отношения к другой сущности.

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

В IDEF1X могут быть выражены следующие мощности связей:

· каждый экземпляр сущности-родителя может иметь нуль, один или более одного связанного с ним экземпляра сущности-потом­ка;

· каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;

· каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;

· каждый экземпляр сущности-родителя связан с некоторым фик­сированным числом экземпляров сущности-потомка.

Если экземпляр сущности-потомка однозначно определяется связью с сущностью-родителем, то связь называется иден­тифицирующей (рисунок 3.2.3.1), в противном случае – неидентифицирующей (рисунок 3.2.3.2).

Связь изображается линией, проводимой между сущностью-роди­те­лем и сущностью-потомком с точкой на конце линии у сущности-потомка. Мощность связи может принимать следующие значения: N – нуль, один или более, Z – нуль или один, Р – один или более. По умолчанию мощность связи принимается равной N.

Идентифицирующая связь между сущностью-родителем и сущ­ностью-потомком изображается сплошной линией (рисунок 3.2.3.1). Сущ­ность-потомок в идентифицирующей связи является зависи­мой от иден­тификатора сущностью. Сущность-родитель в иден­тифицирующей связи может быть как независимой, так и зависи­мой от идентификатора сущ­ностью (это определяется ее связями с другими сущностями).

Пунктирная линия изображает неидентифицирующую связь (рисунок 3.2.3.2). Сущ­ность-потомок в неидентифицирующей связи будет незави­си­мой от идентификатора, если она не является также сущностью-потомком в какой-либо идентифицирующей связи.

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

Сущности могут иметь также внешние ключи (Foreign Key),которые могут использоваться в качестве части или целого первичного ключа или неключевого атрибута. Внешний ключ изображается с помощью поме­щения внутрь блока сущности имен ат­рибутов, после которых следуют буквы FK в скобках (рисунок 5.2.11).

Наши рекомендации