IDEF0-моделирование

Автор работы: Пользователь скрыл имя, 21 Февраля 2010 в 13:55, Не определен

Описание работы

Введение
1. Процесс создания IDEFO-модели
2. Построение IDEF0-модели
3. Принципы моделирования в IDEF0
Заключение
Список литературы

Файлы: 1 файл

РБП - IDEF0-моделирование.doc

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

     Оформляйте  материалы сразу после встречи  с экспертом. Посмотрите и закончите  ваши заметки, а потом составьте IDEF0-глоссарий как средство определения  новых понятий и терминологии. Затем набросайте диаграмму, определяя, какие еще вопросы следует задать и какие области исследовать [5, c. 113].

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

     1. Титульный лист.

     2. Интервью и последующую запись

      • ФИО интевьюера (автора IDEF-модели);
      • дата интервью;
      • продолжительность интервью (начало и окончание);
      • ФИО интервьюируемого
      • должность и ответственность интервьюируемого
      • номер телефона.
      • дополнительные источники информации: документы, другие интервью (ФИО, должность, ответственность, адрес, номер телефона);
      • существенные элементы информации - ключевые вопросы, рассмотренные в интервью;
      • последующие вопросы или области, не охваченные в интервью;
      • новые термины для проектного глоссария.

     3. Список функций и данных (объектов).

     4. Список основных интервьюируемых  (разработанный при подготовке к интервью)

     5. Примечания и эскизы диаграмм [6, c. 105].

 

      2. Построение IDEF0-модели 

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

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

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

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

     Отправной точкой для любого анализа является ограничение контекста. Аналитику  необходимо решить, что будет центральным (главным) элементом, прежде чем будет  создан самый верхний блок. Следует  остерегаться "дрейфа" из этой тщательно выбранной стартовой области. Каждый шаг должен сверяться с данной стартовой целью. Те данные, которые ей не соответствуют, могут быть отложены для последующего моделирования [2, c. 367].

     Моделирование начинается с создания диаграммы А-0. Затем рисуется одиночный блок, содержащий название функции, которая охватывает полные возможности (контекст) описываемой системы, с использованием входных, управляющих и выходных дуг для представления данных и объектов системы, реализующих интерфейс с окружающей ее средой. Эта одноблочная диаграмма ограничивает контекст для полной модели и формирует основание для дальнейшей декомпозиции. Цель и точка зрения записываются на А-0 контекстной диаграмме.

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

     Если  диаграмма А-0 началась на слишком низком уровне детализации, А-0 блок необходимо сделать основанием для нового уровня АО диаграммы, продвинуться на один уровень к новой А-0-диаг-рамме, и повторно рассмотреть точку зрения и цель. Затем следует повторить этот процесс, пока А-0 не достигнет состояния, при котором охватываются все аспекты системы. Иногда более высокий уровень будет значительно шире, чем необходимо с выбранной точки зрения. Если такое случится, то нужно создать А-1 многоблочную контекстную диаграмму и привести диаграмму АО к первоначальному виду [7, c. 18].

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

     Реальная "вершина" модели - диаграмма А0. Ее структура раскрывает то, что диаграмма А-0 только наметила показать. Содержание и структура А0 также ограничивают каждый последующий уровень, потому что это законченное описание выбранного объекта. Нижние уровни только раскрывают (но не дополняют) функции А0. Диаграмма А0 вынуждает автора поддерживать выбранный уровень абстракции, одинаковую "глубину" моделирования и относить подробности к более низкому уровню [1].

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

     Чтобы получить четкую и ясную диаграмму, нужно изменять или перерисовывать диаграмму столько раз, сколько потребуется. Следует попробовать разбить блок на две (или более) части и синтезировать (объединить) две (или более) части в одиночный блок. В результате родительская диаграмма должна быть представлена тремя-шестью блоками.

     При создании любой IDEF0-диаграммы необходимо учитывать следующие требования:

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

     Каждая  диаграмма, как правило, будет сопровождаться страницей текста комментария, глоссария  и, возможно, FEO. Текст, связанный с  диаграммой А-0, должен завершать ориентацию модели, он пишется после создания диаграммы А-0 и дополняет контекст, описывая точку зрения и цель модели [7, c. 20]

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

     Имея  законченную родительскую диаграмму, необходимо "укрепить" более высокие  уровни, прежде чем переходить к  дальнейшей детализации, т.е., имея А0, описать работу на уровне Al, A2, A3. Декомпозицию А1 в АН, АН 1 и т. д. следует сделать позже.

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

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

     Более простые разделы могут быть декомпозированы  позже с меньшим риском допустить  ошибку.

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

  • Создайте список данных (объектов), относящийся к описываемому объекту в пределах контекста родительского блока.
  • Дайте имена функциям, которые взаимодействуют (связаны) с перечисленными данными (объектами) и нарисуйте блоки вокруг этих имен.
  • Начертите эскизно соответствующие дуги.
  • Завершите диаграмму, которая представляет собой четкую структуру размещения блоков и дуг. Сгруппируйте дуги, если их структура слишком детализирована. Оставьте только существенные элементы.
  • Создайте текстовую диаграмму, глоссарий и FEO-диаграммы (если необходимо), чтобы отразить важные аспекты.
  • Определите, не нужно ли сделать изменения в родительской диаграмме [1].

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

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

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

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

     Создание  интерфейсных дуг. Соединение интерфейсных дуг с каждым индивидуальным блоком показывается эскизно. Нужно подсоединить концы дуг, чтобы показать, какие из них входные и управляющие, а какие выходные [6, c. 107].

     Если  дуга содержит и вход, и управление, то это показывается как управление. Часто тяжело определить, показывать дугу или нет. Самый простой способ решить этот вопрос заключается в следующем "когда есть сомнения, отбрасываем" (если это не управление). Если дуга действительно несущественна для главной "магистрали" диаграммы или имеются соответствующие сомнения, то правильнее будет не изображать ее. Неверно вычерченная сомнительная дуга будет вызывать постоянную угрозу ошибки.

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

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

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

     Не  следует создавать хаос на диаграммах, используя большое количество информации и множество дуг. Не нужно тратить слишком много времени на один уровень. Не стоит стараться все выразить сразу. Нужно отнести подробности к подфункциям, для чего выполнить итерационные согласования между диаграммами высокого уровня и подфункциями для отображения подробностей [7, c. 22].

 

      3. Принципы моделирования в IDEF0

     В IDEF0 реализованы три базовых принципа моделирования процессов:

Информация о работе IDEF0-моделирование