Смекни!
smekni.com

IDEF0-моделирование (стр. 2 из 3)

- "балласт" человек, давно работающий на предприятии и непонятно чем занимающийся. На вопросы типа: "Какие функции Вы выполняете?", "С какими документами Вы работаете?" агрессивно повторяет: "Я делаю все", "Со всеми документами", "Все документы ко мне приходят и все уходят". Какой-либо информации получить не удается по причине ее отсутствия. Естественно, никакого отражения подобной "деятельности" в модели не производится;

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

- "мелкая сошка" человек, не привыкший к проявлению интереса к себе и своей работе и занимающий низшую должность. При должном терпении реально получение того небольшого "куска" информации, которым он владеет [4, c. 124].

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

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

Оформляйте материалы сразу после встречи с экспертом. Посмотрите и закончите ваши заметки, а потом составьте 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].

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