Главная | Обратная связь
МегаЛекции

Функциональные модели, используемые на стадии проектирования





 

Функциональные модели, используемые на стадии проектирования ПО, предназначены для описания функциональной структуры проектируемой системы. Построенные ранее DFD при этом уточняются, расширяются и дополняются новыми конструкциями.

Так, например, для DFD переход от модели бизнес - процессов организации к модели системных процессов может происходить следующим образом:

· внешние сущности на контекстной диаграмме заменяются или дополняются техническими устройствами (например, рабочими станциями, принтерами);

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

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

· определяется и изображается на диаграмме тип связи между процессорами (например, локальная сеть - LAN);

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

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

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

· на DFD выбираются интерактивные процессы нижнего уровня. Интерактивные процессы нуждаются в пользовательском интерфейсе, поэтому нужно определить экранную форму для каждого такого процесса;

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



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

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

· определяется верхняя форма (главная форма приложения), связывающая все формы с меню.

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

Лекция 15. Моделирование данных

 

Основные понятия. Метод Баркера. Подход, используемый в CASE - средстве SILVERRUN.


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

 

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

Наиболее распространенным средством моделирования данных являются диаграммы «сущность-связь» (ERD), нотация которых впервые была введена Питером Ченом в 1976 г. Базовым понятием ERD являются:

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

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

· иметь уникальное имя;

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

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

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

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

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

 

Метод баркера

 

Одной из наиболее распространенных нотаций ERD является нотация, предложенная Ричардом Баркером, автором методов, используемых в технологии создания ПО фирмы Oracle. Метод Баркера можно пояснить на примере моделирования данных компании по торговле автомобилями. Исходными данными для построения ERD являются результаты интервью, проведенного с персоналом компании:

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

Продавец: ему нужно знать, какую цену запрашивать и какова нижняя цена за которую можно совершить сделку. Кроме того, ему нужна основная информация о машинах: год выпуска, марка, модель и т.д.

Администратор: его задача сводится к составлению контрактов, для чего нужна информация о покупателе, автомашине и продавце, поскольку именно контракты приносят продавцам вознаграждения за продажи.

Первый шаг моделирования - извлечение информации из интервью и выделение сущностей.

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

Исходя из этого, выделяются четыре сущности, которые изображаются на диаграмме:

Второй шаг моделирования – идентификация связей.

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

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

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

·продавец может получить вознаграждение за один контракт или более;

·контракт должен быть инициирован ровно одним продавцом.

Изобразим графически предложения, описывающие связь продавца с контрактом (рис.24).


 


Рис.24. Отображение связи «продавец – контракт»

 

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

 

 


Рис.25. Диаграмма «сущность-связь» без атрибутов

 

Атрибут может быть либо обязательным, либо необязательным. Обязательность означает, что атрибут не может принимать неопределенных значений. Обязательный атрибут помечается звездочкой, а необязательный - кружком. Атрибут может быть либо описательным (т.е. обычным дескриптором сущности), либо входить в состав уникального идентификатора (ключа). Уникальный идентификатор - это атрибут или совокупность атрибутов и/или связей, предназначенная для уникальной идентификации каждого экземпляра данного типа сущности. В случае полной идентификации каждый экземпляр данного типа сущности полностью идентифицируются своими собственными ключевыми атрибутами, в противном случае в его идентификации участвуют также атрибуты другой сущности родителя.

Каждый атрибут идентифицируется уникальным именем, выражаемым существительным, описывающим представленную атрибутом характеристику. Атрибуты изображаются в виде списка имен внутри блока сущности, причем каждый атрибут занимает отдельную строку. Атрибуты, определяющие первичный ключ, размещаются наверху списка и выделяются знаком «#». При существовании нескольких возможных ключей один из них обозначается в качестве первичного, а остальные – как альтернативные.

С учетом имеющейся информации дополним построенную ранее диаграмму (рис.26).

 

 


Рис.26. Диаграмма «сущность - связь с атрибутами»

 

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

Супертипы и подтипы: одна сущность является обобщающим понятием для группы подобных сущностей.

Взаимно исключающие связи: каждый экземпляр сущности участвует только в одной связи из группы взаимно исключающих (рис.28).





Рекомендуемые страницы:

Воспользуйтесь поиском по сайту:
©2015- 2019 megalektsii.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.