Графический язык IDEF0

Автор работы: Пользователь скрыл имя, 20 Июня 2013 в 10:26, контрольная работа

Краткое описание

Графический язык IDEF0 удивительно прост и гармоничен. В основе методологии лежат четыре основных понятия.

Первым из них является понятие функционального блока (Activity Box). Функциональный блок графически изображается в виде прямоугольника (см. рис. 1) и олицетворяет собой некоторую конкретную функцию в рамках рассматриваемой системы. По требованиям стандарта название каждого функционального блока должно быть сформулировано в глагольном наклонении (например, “производить услуги”, а не “производство услуг”).

Содержание

1 IDEF0: назначение и основные элементы
2 UML: назначение
3 BPWin: назначение и возможности

Вложенные файлы: 1 файл

Документ Microsoft Word.docx

— 64.44 Кб (Скачать файл)

  Содержание:

1 IDEF0: назначение и основные элементы

2 UML: назначение

3 BPWin: назначение и возможности

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IDEF0: назначение и основные элементы

Графический язык IDEF0 удивительно  прост и гармоничен. В основе методологии  лежат четыре основных понятия.

 

Первым из них является понятие функционального блока (Activity Box). Функциональный блок графически изображается в виде прямоугольника (см. рис. 1) и олицетворяет собой некоторую конкретную функцию в рамках рассматриваемой системы. По требованиям стандарта название каждого функционального блока должно быть сформулировано в глагольном наклонении (например, “производить услуги”, а не “производство услуг”).

 

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

Верхняя сторона имеет  значение “Управление” (Control);

Левая сторона имеет значение “Вход” (Input);

Правая сторона имеет  значение “Выход” (Output);

Нижняя сторона имеет  значение “Механизм” (Mechanism).

 

Каждый функциональный блок в рамках единой рассматриваемой  системы должен иметь свой уникальный идентификационный номер.

 

 

 Рисунок 1. Функциональный  блок.

 

Вторым “китом” методологии IDEF0 является понятие интерфейсной дуги (Arrow). Также интерфейсные дуги часто называют потоками или стрелками. Интерфейсная дуга отображает элемент системы, который обрабатывается функциональным блоком или оказывает иное влияние на функцию, отображенную данным функциональным блоком.

 

Графическим отображением интерфейсной дуги является однонаправленная стрелка. Каждая интерфейсная дуга должна иметь  свое уникальное наименование (Arrow Label). По требованию стандарта, наименование должно быть оборотом существительного.

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

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

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

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

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

 

 

 Рисунок 2.

 

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

 

 Рисунок 3.

 

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

 

Обязательное наличие  управляющих интерфейсных дуг является одним из главных отличий стандарта IDEF0 от других методологий классов DFD (Data Flow Diagram) и WFD (Work Flow Diagram).

Третьим основным понятием стандарта IDEF0 является декомпозиция (Decomposition). Принцип декомпозиции применяется при разбиении сложного процесса на составляющие его функции. При этом уровень детализации процесса определяется непосредственно разработчиком модели.

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

Модель IDEF0 всегда начинается с представления системы как  единого целого – одного функционального  блока с интерфейсными дугами, простирающимися за пределы рассматриваемой  области. Такая диаграмма с одним  функциональным блоком называется контекстной  диаграммой, и обозначается идентификатором  “А-0”.

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

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

 

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

В процессе декомпозиции, функциональный блок, который в контекстной диаграмме  отображает систему как единое целое, подвергается детализации на другой диаграмме. Получившаяся диаграмма  второго уровня содержит функциональные блоки, отображающие главные подфункции функционального блока контекстной  диаграммы и называется дочерней (Child diagram) по отношению к нему (каждый из функциональных блоков, принадлежащих дочерней диаграмме соответственно называется дочерним блоком – Child Box). В свою очередь, функциональный блок - предок называется родительским блоком по отношению к дочерней диаграмме (Parent Box), а диаграмма, к которой он принадлежит – родительской диаграммой (Parent Diagram). Каждая из подфункций дочерней диаграммы может быть далее детализирована путем аналогичной декомпозиции соответствующего ей функционального блока. Важно отметить, что в каждом случае декомпозиции функционального блока все интерфейсные дуги, входящие в данный блок, или исходящие из него фиксируются на дочерней диаграмме. Этим достигается структурная целостность IDEF0 – модели. Наглядно принцип декомпозиции представлен на рисунке 4. Следует обратить внимание на взаимосвязь нумерации функциональных блоков и диаграмм - каждый блок имеет свой уникальный порядковый номер на диаграмме (цифра в правом нижнем углу прямоугольника), а обозначение под правым углом указывает на номер дочерней для этого блока диаграммы. Отсутствие этого обозначения говорит о том, что декомпозиции для данного блока не существует.

 

Часто бывают случаи, когда  отдельные интерфейсные дуги не имеет  смысла продолжать рассматривать в  дочерних диаграммах ниже какого-то определенного  уровня в иерархии, или наоборот - отдельные дуги не имеют практического  смысла выше какого-то уровня. Например, интерфейсную дугу, изображающую “деталь” на входе в функциональный блок “Обработать  на токарном станке” не имеет смысла отражать на диаграммах более высоких  уровней – это будет только перегружать диаграммы и делать их сложными для восприятия. С другой стороны, случается необходимость  избавиться от отдельных “концептуальных” интерфейсных дуг и не детализировать их глубже некоторого уровня. Для решения  подобных задач в стандарте IDEF0 предусмотрено  понятие туннелирования. Обозначение “туннеля” (Arrow Tunnel) в виде двух круглых скобок вокруг начала интерфейсной дуги обозначает, что эта дуга не была унаследована от функционального родительского блока и появилась (из “туннеля”) только на этой диаграмме. В свою очередь, такое же обозначение вокруг конца (стрелки) интерфейсной дуги в непосредственной близи от блока – приёмника означает тот факт, что в дочерней по отношению к этому блоку диаграмме эта дуга отображаться и рассматриваться не будет. Чаще всего бывает, что отдельные объекты и соответствующие им интерфейсные дуги не рассматриваются на некоторых промежуточных уровнях иерархии – в таком случае, они сначала “погружаются в туннель”, а затем, при необходимости “возвращаются из туннеля”.

Последним из понятий IDEF0 является глоссарий (Glossary). Для каждого из элементов IDEF0: диаграмм, функциональных блоков, интерфейсных дуг существующий стандарт подразумевает создание и поддержание набора соответствующих определений, ключевых слов, повествовательных изложений и т.д., которые характеризуют объект, отображенный данным элементом. Этот набор называется глоссарием и является описанием сущности данного элемента. Например, для управляющей интерфейсной дуги “распоряжение об оплате” глоссарий может содержать перечень полей соответствующего дуге документа, необходимый набор виз и т.д. Глоссарий гармонично дополняет наглядный графический язык, снабжая диаграммы необходимой дополнительной информацией.

 

 

 Рисунок 4. Декомпозиция  функциональных блоков.

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

 

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

 

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                              

 

 

 

 

 

 

 

 

 

 

      UML: назначение

 

Язык UML предназначен для решения следующих задач:

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

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

 

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

 

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

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

Информация о работе Графический язык IDEF0