Метод функционального моделирования SADT( IDEF0)

Визуальное моделирование. Модели структурного анализа и проектирования.

 

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

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

Моделирование способствует более полному усвоению требований, улучшению качества системы и повышению степени ее управляемости.

Так как сложность систем повышается, поэтому необходимы хорошие метода моделирования.

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

Язык моделирования включает:

– элементы модели – фундаментальные концепции моделирования и их семантику;

– нотацию (систему обозначений) – визуальное представление элементов моделирования;

– руководство по использованию – правила применения элементов в рамках построения тех или иных типов моделей ПО. Наиболее применимы для этих целей являются графические языки моделирования.

Достоинства графических языков:

– получение общего представления о системе.

– общение с экспертами организации.

– изучение методов проектирования.

В процессе создания ПО, автоматизирующего деятельность некоторой организации, используются следующие виды моделей:

– модели деятельности организации (или модели бизнес-процессов);

– модели «AS-IS» («как есть»), отражающие существующее на момент обследования положение дел в организации и позволяющие понять, каким образом функционирует данная организация, а также выявить узкие места и сформулировать предложения по улучшению ситуации;

– модели «AS-TO-BE» («как должно быть»), отражающие представление о новых процессах и технологиях работы организации.

Возможен переход от модели «AS-IS» к модели «AS-TO-BE». Это может выполняться двумя способами:

1) совершенствованием существующих технологий на основе оценки их эффективности;

2) радикальным изменением технологий и перепроектированием (реинжинирингом) бизнес-процессов.

Модели проектируемого ПО строятся на основе модели «AS-TO-BE», уточняются и детализируются до необходимого уровня.

 

Структурные методы анализа и проектирования ПО

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

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

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

– разбиение системы на уровни абстракции с ограничением числа элементов на каждом из уровней (обычно от 3 до 6–7);

– ограниченный контекст, включающий лишь существенные на каждом уровне детали;

– использование строгих формальных правил записи;

– последовательное приближение к конечному результату.

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

При этом система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.

В структурном анализе и проектировании используются различные модели, описывающие:

1) функциональную структуру системы;

2) последовательность выполняемых действий;

3) передачу информации между функциональными процессами;

4) отношения между данными.

Наиболее распространенными моделями первых трех групп являются:

– функциональная модель SADT (Structured Analysis and Design Technique);

– модель IDEF3;

– DFD (Data Flow Diagrams) – диаграммы потоков данных.

 

Метод функционального моделирования SADT(IDEF0)

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

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

Основные элементы этого метода основываются на следующих концепциях:

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

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

Правила SADT включают:

– ограничение количества блоков на каждом уровне декомпозиции (правило 3–6 блоков – ограничение мощности краткосрочной памяти человека),

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

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

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

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

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

На рисунке представлены функциональный блок и интерфейсные дуги

 

Построение SADT-модели заключается в выполнении следующих действий:

– сбор информации об объекте, определение его границ;

– определение цели и точки зрения модели;

– построение, обобщение и декомпозиция диаграмм;

– критическая оценка, рецензирование и комментирование.

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

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

Общее представление

 

На SADT-диаграммах не указаны явно ни последовательность, ни время.

На рисунке показано одновременное выполнение функций

 

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

Пример обратной связи

Рекомендуется прекращать моделирование, когда уровень детализации модели удовлетворяет ее цели, если:

– блок содержит достаточное количество деталей;

– необходимо изменить уровень абстракции, чтобы достичь большей детализации блока;

– необходимо изменить точку зрения, чтобы детализировать блок;

– блок похож на другой блок этой модели или на блок другой модели;

– блок представляет тривиальную функцию.

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

– случайная;

– логическая;

– временная;

– процедурная;

– коммуникационная;

– последовательная;

– функциональная.

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

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

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

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

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

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

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

 

Метод SSADM

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

Структура модели

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

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: