Структурный подход к моделированию систем Методология функционального моделирования IDEF0
Основные вопросы Сущность структурного подхода Основные принципы структурного подхода Сущность методологии функционального моделирования IDEF0 Основные понятия методологии IDEF0 Правила построения моделей IDEF0 Пример функциональной модели в нотации IDEF0
Сущность структурного подхода к моделированию систем Система разбивается на функциональные подсистемы, которые, в свою очередь, делятся на подфункции, подфункции – на задачи и т.д. до конкретных процедур Система Функция 1Функция 2 … Функция n Подфункция 2 … … Задача 2 … Подфункция 1 … Задача 1 … … Задача n … … Подфункция n …
Базовые принципы структурного подхода принцип «Разделяй и властвуй» принцип иерархического упорядочивания принцип абстрагирования принцип непротиворечивости принцип структурирования данных
Методология структурного анализа и проектирования SADT 70-е гг. ХХ века – методология SADT Предложена Дугласом Россом (Douglas Ross) Основная идея Основная идея данной методологии – построение древовидной иерархической модели предприятия х IDEF0 В начале 1990-х на основе SADT принят стандарт моделирования бизнес-процессов IDEF0, являющийся одним из 14 стандартов линейки IDEF – Integration Definition for Functional Modeling (в данном курсе будут рассмотрены некоторые из них, в частности, IDEF0, IDEF1X, IDEF3) [8, 5]. Положения методологии зафиксированы в разработанном в США стандарте IDEF0 (В России – РД IDEF0 – 2000)
Модели структурного подхода, изучаемые в курсе «Системное моделирование и CASE-технологии» 3 типа моделей, используемых в структурном подходе: 1) функциональные модели (ФМ) 2) информационные модели (ИМ) 3) динамические модели (ДМ) ФМSADT (IDEF0)-модели DFD-модели Пакеты BPWin, Design/IDEF Пакет BPWin ИМERD (IDEF1X)Пакеты Design/IDEF, ERWin ДМIDEF/CPN IDEF3 Пакет Design/IDEF Пакет BPWin
Сущность функционального моделирования Для любой системы определяющим является ее функциональное содержание, так как оно определяет ее основные свойства. Поэтому в основе функционального моделирования лежит функциональное содержание системы, в качестве отношений между функциями рассматривается информация об объектах, связывающих эти функции [1].
Методология IDEF0 В основе IDEF0-методологии лежат 4 основных понятия: 1) функциональный блок; 2) интерфейсная дуга (стрелка); 3) декомпозиция; 4) глоссарий.
Функциональный блок Олицетворяет некоторую конкретную функцию или работу в рамках рассматриваемой системы РД IDEF0 – 2000: прямоугольник, содержащий имя и номер и используемый для описания функции Управлять предприятием А0 управление входвыход механизм Наименование осуществляется оборотом глагола или существительного Каждый блок в рамках единой системы имеет уникальный номер Каждая сторона функционального блока имеет свое назначение
Интерфейсная дуга Интерфейсная дуга отображает элемент системы, который обрабатывается функциональным блоком или оказывает иное влияние на функцию, отображаемую функциональным блоком. Графически изображается в виде однонаправленной стрелки. Каждая дуга должна иметь свое уникальное название, сформулированное оборотом существительного (должно отвечать на вопросы кто?, что?). Примеры: информация, разработчик, документ, обработанная заявка. В зависимости от того, к какой стороне блока она подходит, интерфейсная дуга будет являться входящей, выходящей, управления, механизма.
Интерфейсная дуга Функциональный блок А0 управление входвыход механизм Ресурсы, необходимые для проведения работы (человеческие ресурсы, оборудование, ИС). Ресурсы, перерабатываемые системой Регулирует работу системы, управляет (нормативная документация и т.п.) Результат работы системы, переработанные ресурсы, продукт деятельности Стрелки входа может не быть. Остальные интерфейсные дуги обязательны.
Декомпозиция Принцип декомпозиции применяется при разбиении сложных процессов на составляющие его функции. При этом уровень детализации определяется непосредственно разработчиком модели. контекстной Модель IDEF0 всегда начинается с рассмотрения системы как единого целого, т.е. одного функционального блока с интерфейсными дугами, простирающимися за пределы рассматриваемой области. Такая диаграмма называется контекстной, она обозначается идентификатором А-0. Для определения границ системы на контекстной диаграмме обязательно должны быть цель и точка зрения.
Цель моделирования Цель моделирования должна отвечать на следующие вопросы: Почему процесс должен быть замоделирован? Что должна показывать модель? Что может получить читатель? Примеры целей: «Идентифицировать слабые стороны процесса сбора данных», «Определить ответственность сотрудников для написания должностных инструкций» и т.п. [8]
Точка зрения Точка зрения Точка зрения – позиция, с которой будет строиться модель. В качестве точки зрения берется взгляд человека, который видит систему в нужном для моделирования аспекте. Как правило, выбирается точка зрения человека, ответственного за выполнение моделируемой работы. Между целью и точкой зрения должно быть жесткое соответствие.
Декомпозиция А0 Цель: Т.зрения: А-0 А1 А3 А2 А0 А11 А13 А12 А1 А31 А33 А32 А3 Контекстная диаграмма Декомпозиция контекстной диаграммы Декомпозиция блока А1Декомпозиция блока А3
Декомпозиция А0 А1А2А3 А11А12А13 А0 ____________ А1____________ А11___________ А12___________ А13___________ А2____________ А3____________ Дерево узлов Индекс узлов
Нумерация работ и диаграмм А0 Цель: Т.зрения: А-0 А1 А3 А2 А0 А11 А13 А12 А1 А31 А33 А32 А3 Номер контекстной диаграммы Номер функционального блока на контекстной диаграмме Диаграммы декомпозиции имеют номер декомпозируемого блока Формат номера блока: 1.Префикс 2.Номер родительской работы 3. Собственный порядковый номер
Основные правила построения диаграмм 1. На одной диаграмме рекомендуется рисовать от 3 до 6 блоков. Иначе диаграмма будет плохо читаемой. 2. Функциональные блоки должны располагаться слева направо сверху вниз в порядке доминирования. 3. Следует избегать излишнего пересечения стрелок.
Основные правила построения диаграмм 4. Выход одного блока может являться входом (управлением) для другого. Могут быть и обратные связи по входу и управлению. Связь по входу Связь по управлению
Основные правила построения диаграмм а) обратная связь по входу б) обратная связь по управлению Обратная связь по входу, как правило, используется для описания циклов. Обратная связь по управлению – выход нижестоящей работы передается на управление вышестоящей Обратная связь по механизму – выход нижестоящей работы создает ресурсы, выполняющие вышестоящую работу в) обратная связь по механизму
Основные правила построения диаграмм 5. Стрелки могут быть сливающимися и разветвляющимися Слияние стрелок Разветвление стрелок
Граничные стрелки граничными Стрелки на контекстной диаграмме служат для описания взаимодействия системы с окружающим миром. Они могут начинаться у границы диаграммы и заканчиваться у функционального блока и наоборот. Такие стрелки называются граничными [8]. Граничные стрелки помечаются с помощью ICOM-меток (Input, Control, Output, Mechanism) I1 I2 M1 C1 O1 O2 ICOM-метки
Тоннельные стрелки Иногда необходимо отобразить граничные стрелки, которые значимы на данном уровне и не значимы на родительской диаграмме. Например, некоторые данные используются только на данном уровне и не используются на других. Без использования механизма тоннелирования малозначимая стрелка появится на всех уровнях модели, что затруднит чтение диаграмм.
Глоссарий и FEO-страница глоссарий Для каждого из элементов в IDEF0 существует стандарт, подразумевающий создание и поддержку набора соответствующих определений, ключевых слов, повествований, изложений и т.д, которые характеризуют объект, отраженный данным элементом. Этот набор – глоссарий, являющийся описанием сущности данного элемента. FEO-диаграмма FEO-диаграмма (For Exposition Only) – это диаграмма, которая поясняет особо интересные и тонкие аспекты диаграмм. Эти диаграммы не ограничены синтаксисом IDEF0. В них может быть текстовая, графическая информация, схемы, альтернативная точка зрения на процесс и т.п.
Мастерская страница (каркас диаграммы) Стандартный бланк для диаграмм (облегчает подшивку и копирование) Разделен на 3 основные части: поле рабочей информации 1) поле рабочей информации (для отслеживания диаграммы в процессе моделирования) поле сообщений 2) поле сообщений (область рисования диаграммы) поле идентификации 3) поле идентификации (идентификация диаграммы и ее позиционирование в иерархии)
Мастерская страница Поле сообщений Поле идентификации Поле рабочей информации Статусы проекта: 1) Рабочая версия – диаграмма с большим числом изменений на стадии разработки 2) Эскиз имеет меньше изменений и свидетельствует о достижении некоторого согласия ряда читателей 3) Рекомендовано – сопутствующие тексты утверждены 4) Публикация – материал может печататься. Сведения о модели: -автор; -название проекта; -замечания; -дата создания и пересмотра. Сведения о читателях- экспертах и дате экспертизы Сведения о родительской работе Название диаграммы (совпадает с названием родительской работы) Номер диаграммы Уникальный номер версии диаграммы
Пример модели процесса постройки садового домика Построить дом Материалы Строители Дом Проект дома Цель: Цель: Определить действия, необходимые для постройки дачного домика Точка зрения: Точка зрения: владельца дачного участка 1. Строим контекстную диаграмму.
Пример модели процесса постройки садового домика 2. Декомпозируем контекстную диаграмму Заложить фундамент Возвести стены Положить крышу Выполнить отделку Материалы Проект дома Строители Дом КаменщикиПлотникиКровельщики Мастера по отделке Фундамент Стены Крыша
Пример модели, построенной с использованием CASE-средства BPWin
Дерево узлов
FEO-страница
Итоги лекции Изучены следующие понятия: Структурный подход Функциональная модель Методология SADT/IDEF0 Функциональный блок Интерфейсная дуга Декомпозиция Глоссарий FEO-диаграмма Дерево узлов Мастерская страница