Добрый день, уважаемый Дмитрий Анатольевич;pdf

ЛАБОРАТОРНАЯ РАБОТА №1
РАЗРАБОТКА ФУНКЦИОНАЛЬНОЙ МОДЕЛИ
ИНФОРМАЦИОННОЙ СИСТЕМЫ
1. Цель работы:
Целью данной лабораторной работы является построение
функциональной модели информационной системы с помощью
методологии SADT.
2. Краткие теоретические сведения
Методология SADT разработана Дугласом Россом в 1980-х
годах в США. На ее основе разработана, в частности, известная
методология IDEF0 (Icam DEFinition), которая является
основной частью программы ICAM (Интеграция компьютерных
и промышленных технологий), проводимой по инициативе ВВС
США.
Методология SADT представляет собой совокупность
методов, правил и процедур, предназначенных для построения
функциональной модели объекта какой-либо предметной
области.
Функциональная
модель
SADT
отображает
функциональность объекта, т.е. производимые им действия и
связи между этими действиями. Основные положения этой
методологии основываются на следующих концепциях:
• графическое представление блочного моделирования.
Совокупность блоков и дуг SADT-диаграммы отображает
функцию в виде блока, а интерфейсы входа/выхода
представляются дугами, соответственно входящими в
блок и выходящими из него. Взаимодействие блоков
друг с другом описываются посредством интерфейсных
дуг, выражающих "ограничения", которые в свою
очередь определяют, когда и каким образом функции
выполняются и управляются;
• строгость и точность. Выполнение правил SADT требует
достаточной строгости и точности, не накладывая в то
же время чрезмерных ограничений на действия
аналитика. Правила SADT включают:
• ограничение количества блоков на каждом уровне
декомпозиции (правило 3-6 блоков);
• иерархическая
упорядоченность и функциональная
связность диаграмм (номера блоков);
уникальность меток и наименований (отсутствие
повторяющихся имен);
• синтаксические правила для графики (блоков и дуг);
• разделение входов и управлений (правило определения
роли данных).
• отделение организации от функции, т.е. исключение
влияния
организационной
структуры
на
функциональную модель.
Методология
SADT
может
использоваться
для
функционального моделирования широкого круга систем и
определения требований, предъявляемым к системе, а затем
для разработки системы, которая удовлетворяет определенным
требованиям и реализует необходимые функции. Для уже
существующих систем методология SADT может быть
использована для анализа функций, выполняемых системой.
Состав функциональной модели
Результатом применения методологии SADT является
модель, которая состоит из диаграмм, фрагментов текстов и
глоссария, имеющих ссылки друг на друга. Диаграммы главные компоненты модели, все функции ИС и интерфейсы на
них представлены как блоки и дуги. Место соединения дуги с
блоком
определяет
тип
интерфейса.
Управляющая
информация входит в блок сверху, в то время как информация,
которая подвергается обработке, показана с левой стороны
блока, а результаты выхода показаны с правой стороны.
Механизм (человек или автоматизированная система), который
осуществляет операцию, представляется дугой, входящей в
блок снизу (рис. 1.1).
Одной из наиболее важных особенностей методологии
SADT является постепенное введение все больших уровней
детализации по мере создания диаграмм, отображающих
модель.
•
Управление
Вход
Ôóí êöèÿ
Выход
Механизм
Рис. 1.1
На рисунке 1.2, где приведены четыре диаграммы и их
взаимосвязи, показана структура SADT-модели. Каждый
компонент модели может быть декомпозирован на другой
диаграмме. Каждая диаграмма иллюстрирует "внутреннее
строение" блока родительской диаграммы.
Иерархия диаграмм
Построение SADT-модели начинается с представления
всей системы в виде простейшей компоненты - одного блока и
дуг, изображающих интерфейсы с функциями вне системы.
Поскольку единственный блок представляет всю систему как
единое целое, имя, указанное в блоке, является общим. Это
верно и для интерфейсных дуг - они также представляют
полный набор внешних интерфейсов системы в целом.
Затем блок, который представляет систему в качестве
единого модуля, детализируется на другой диаграмме с
помощью нескольких блоков, соединенных интерфейсными
дугами. Эти блоки представляют основные подфункции
исходной функции. Данная декомпозиция выявляет полный
набор подфункций, каждая из которых представлена как блок,
границы которого определены интерфейсными дугами. Каждая
из этих подфункций может быть декомпозирована подобным
образом для более детального представления.
Во всех случаях каждая подфункция может содержать
только те элементы, которые входят в исходную функцию.
Кроме того, модель не может опустить какие-либо элементы,
т.е., как уже отмечалось, родительский блок и его интерфейсы
обеспечивают контекст. К нему нельзя ничего добавить, и из
него не может быть ничего удалено.
Модель SADT представляет собой серию диаграмм с
сопроводительной документацией, разбивающих сложный
объект на составные части, которые представлены в виде
блоков. Детали каждого из основных блоков показаны в виде
блоков на других диаграммах. Каждая детальная диаграмма
является декомпозицией блока из более общей диаграммы. На
каждом шаге декомпозиции более общая диаграмма
называется родительской для более детальной диаграммы.
Дуги, входящие в блок и выходящие из него на диаграмме
верхнего уровня, являются теми же самыми, что и дуги,
входящие в диаграмму нижнего уровня и выходящие из нее,
потому что блок и диаграмма представляют одну и ту же часть
системы.
Контекстная диаграмма
(Общее представление)
А-0
Диаграмма первого уровня
(Более детальное представление )
1
2
3
4
А0
Диаграмма A0
является
"родительской" для
диаграммы А4
41
42
43
А4
Рис. 1.2
На рисунках 1.3 - 1.5 представлены различные варианты
выполнения функций и соединения дуг с блоками.
Функции блоков 2 и 3 могут
выполняться параллельно
1
2
3
Рис. 1.3
Родительская диаграмма
Родительский блок
1
2
А1
3
Эта управляющая дуга переносится
с родительской диаграммы
Детальная диаграмма
21
22
Эта входная дуга переносится
с родительской диаграммы
23
Эта дуга продолжается
на родительской диаграмме
Рис. 1.4
На
SADT-диаграммах
явно
не
указаны
ни
последовательность, ни время выполнения функций. Обратные
связи,
итерации,
продолжающиеся
процессы
и
перекрывающиеся (по времени) функции могут быть
изображены с помощью дуг. Обратные связи могут выступать в
виде комментариев, замечаний, исправлений и т.д. (рис. 1.5).
системные требования
комментарии
Разработка проекта
1
Экспертиза
2
предварительная
спецификация
улучшенный проект
Рис. 1.5
Как было отмечено, механизмы (дуги с нижней стороны)
показывают средства, с помощью которых осуществляется
выполнение функций. В качестве механизма выполнения
функции может выступать человек, программное средство или
любое другое устройство, реализующее данную функцию (рис.
1.6).
Рис. 1.6
Каждый блок на диаграмме имеет свой номер. Блок любой
диаграммы может быть далее описан диаграммой нижнего
уровня, которая, в свою очередь, может быть далее
детализирована с помощью необходимого числа диаграмм.
Таким образом, формируется иерархия диаграмм.
Для того, чтобы указать положение любой диаграммы или
блока в иерархии, используются номера диаграмм. Например,
А21 является диаграммой, которая детализирует блок 1 на
диаграмме А2. Аналогично, А2 детализирует блок 2 на
диаграмме А0, которая является самой верхней диаграммой
модели. На рисунке 1.7 показано типичное дерево диаграмм.
Рис. 1.7
3. Работа с пакетом Computer Associates BPWin 4.0
Запуск программы осуществляется через меню Пуск ->
Программы -> Computer Associates BPWin4.0 (рис. 1.8).
Рис. 1.8
После загрузки
программы (рис. 1.9.).
программы
появится
главное
окно
Рис. 1.9
Рассмотрим
программы.
подробнее
элементы
главного
окна
3.1. Главное меню.
Главное меню содержит команды для работы с
приложением (рис. 1.10)
Рис. 1.10
Меню File содержит команды для работы с файлами (рис.
1.11).
Рис. 1.11
С помощью элементы меню File можно:
Создать новый файл - «New».
Открыть существующий - «Open».
Настроить режим печати модели - «Print Setup»
Обратиться к файлу, с которым велась работа в последний
раз - «Recent File».
Завершить работу с программой - «Exit».
Группа команд меню ModelMart предназначена для
согласованного проектирования системы в рамках рабочей
группы.
3.2. Пиктографическое меню
Пиктографическое меню представлено на рисунке 1.12:
Рис. 1.12
Элементы пиктографического меню позволяют:
- создать новую модель;
- открыть существующий файл модели;
- сохранить файл модели;
- распечатать модель;
- (Report Builder) – создать отчёты по модели;
- выбрать масштаб отображения модели;
- (Zoom to Border) – масштабировать по границе;
- (Zoom to Rectangle) – масштабировать по блоку;
- проверить корректность используемых имён в
модели;
- открыть/закрыть панель проводника модели;
- показать/скрыть панель ModelMart.
3.3. Панель инструментов
Панель инструментов представлена на рис.1.13.
Рис 1.13
Здесь:
Pointer – устанавливает для курсора режим указателя;
Activity Box – реализует создание нового блокафункции;
Arrow – реализует создание новой стрелки,
соединяющей блоки;
Squiggle – обеспечивает привязку надписи к объекту;
Text – позволяет ввести текст на схему;
Dictionary Editor – словарь модели;
Go to sibling diagram – обеспечивает переход к
родственной диаграмме;
Go to parent diagram – обеспечивает переход к
родительской диаграмме;
Create or go to child diagram
создать/перейти к дочерней диаграмме.
–
позволяет
3.4. Создание новой модели
Новая модель создаётся нажатием кнопки File->New или
пиктограммой. Появится окно создания новой/открытия
существующей модели (рис. 1.14)
Здесь вы можете создать
новую (Create model) или
открыть существующую (Open
model) модель. Для того чтобы
создать
новую
модель,
выберите Create model, в поле
Name (имя) укажите имя новой
модели, в поле Type (Тип)
выберите тип IDEF0 и нажмите
кнопку ОК. Появится окно
редактирования
свойств
модели (рис. 1.15)
Рис. 1.14
General
–
общие
свойства
модели.
Позволяют ввести имя
(Author) и инициалы
(Author
Initials)
создателя модели.
Numbering
–
устанавливает
порядок
наименования
схем
модели.
Display – настраивает
показ информации о
модели.
Layout
–
устанавливает
настройки
расположения блоков
на диаграмме.
ABC
Units
–
устанавливает
единицы
измерения
стоимостного
анализа.
Рис 1.15
Page Setup – настраивает внешний вид схемы
Header/Footer – устанавливает вид колонтитулов схемы.
За исключением
модели,
настройки по
умолчанию в
изменении
практически
не
нуждаются.
Нажав
кнопку
ОК,
вы
перейдёте к
модели,
открытой в
режиме
необходимости
ввести
имя
автора
редактирования (рис. 1.16).
Рис 1.16
Внимание! BPWin
версии
4.0
по
умолчанию использует
шрифты без поддержки
кириллицы. Для того,
чтобы было возможно
использовать русские
названия, необходимо
сделать следующее:
1.
Открыть
настройки
шрифтов
(Щелчок
правой
кнопкой
мыши
на
свободном участке поля модели->Parent Diagram Text Font)
Рис. 1.17
2. В появившемся меню (рис. 1.17) заменить шрифт Arial
на шрифт Arial Unicode MS, установив нижнюю галочку
3. Нажать кнопку ОК.
4. Снова щёлкнуть правой кнопкой мыши на свободном
участке поля модели и выбрать пункт Parent Diagram Title Text
Font.
5. В появившемся окне (такое же, как на рисунке 1.17)
выставить шрифт Times New Roman, также установив нижнюю
галочку.
6. Нажать кнопку ОК.
3.5. Редактирование модели
3.5.1. Присвоение имени блоку
Для изменения имени блока щёлкните на нём правой
кнопкой мыши. В появившемся меню (рис. 1.18) выберите пункт
Name (имя). Появится меню свойств блока (рис. 1.19)
Рис 1.18
Рис. 1.19
В среднем поле введите новое имя блока и нажмите
кнопку ОК.
В данном меню можно настроить не только имя блока, но и
его представление (Color), используемые шрифты (Font) и т.д.
Аналогичное меню существует и для стрелок.
В закладке Definition вы можете записать словесные
комментарии для данного блока/стрелки.
3.5.2. Создание нового уровня детализации
Для того, чтобы декомпозировать какой-либо
блок,
выделите его левой кнопкой мыши, и нажмите кнопку
в
панели инструментов. Появится окно декомпозиции блока (рис.
1.20)
Рис. 1.20
В данном окне вы определяете тип создаваемого уровня
декомпозиции, и число блоков, которое может быть туда
помещено. Это число не окончательное, и вы можете в
дальнейшем добавить ещё или удалить существующие блоки.
3.5.3. Создание/редактирование стрелок
Для того чтобы добавить стрелку-связь, войдите в режим
Arrow, нажав кнопку
. У вас изменится курсор. В BPWin
стрелки не могут начинаться из произвольного места. Наведя
курсор, на участок схемы, который может породить стрелку, вы
заметите, что этот участок стал чёрным. Нажав левую кнопку
мыши, вы увидите, как из этого участка протянулась линия к
текущему положению курсора. Если вы наведёте стрелку на
участок, который может быть завершением стрелки, он также
изменит цвет на чёрный (рис. 1.21). Нажав левую кнопку мыши
второй раз, вы создадите новую стрелку. Дать ей имя, и
изменить свойства можно аналогично блоку.
Рис. 1.21
3.5.4. Туннели.
Часто бывает необходимо указать, что стрелка приходит от
родительского блока, уходит к дочернему блоку, или же, в силу
своей малой значимости, остаётся на текущем уровне
детализации. Этому служат туннели (Arrow tunneling). В случае,
если вы создаёте новую стрелку, которая уходит на
верхний/нижний
уровень
детализации,
эта
стрелка
обозначается квадратными скобками (рис. 1.22). Это
обозначает, что для этой стрелки не принято решение
пользователя.
Рис 1.22
Для того чтобы определить движение стрелки, выделите
стрелку и нажмите правую кнопку мыши. В появившемся меню
выберите Arrow Tunneling. Появится окно выбора (рис. 1.23).
Рис. 1.23
Если вы выберете верхний вариант (Resolve it to border
arrow), то стрелка будет продолжена на другом уровне
детализации. Если же вы выберете нижний вариант, то стрелка
будет обозначена круглыми скобками, и не выйдет за пределы
диаграммы. Обычно так поступают с малозначащими
стрелками.
3.5.5. Стоимостной (ABC) анализ
Вы можете задать стоимость (расходы на выполнение)
любого блока. Для этого:
1. Первоначально необходимо задать используемые
единицы измерения. Щёлкните на свободном участке поля
модели и выберите пункт Model Properties. В появившемся окне
откройте закладку ABC units. В появившемся окне (рис. 1.24) вы
должны определить используемые единицы стоимости и
времени и их обозначения/сокращения.
Рис. 1.24
2. Затем, при
редактировании
блока откройте
закладку Costs. В
данной закладке
(рис. 1.25) вы
определяете
расход ресурсов в
единицу времени,
время работы
блока.
В BPWin вы
можете
определять расход
ресурсов только из
какого-либо существующего центра затрат. На рисунке 1.25
такие
Рис. 1.25
и
центры находятся в середине окна («минимальный лечебный
набор» и «базовый диагностический набор»). Для того, чтобы
добавить новый или отредактировать существующий центр
затрат, нажмите кнопку Cost Center Editor. Откроется окно
редактора центров расходов (рис. 1.26).
Рис. 1.26
В этом редакторе вы можете добавлять новый центр
затрат (ввести имя в верхнем поле и нажать кнопку Add),
редактировать существующий (выделить центр затрат в
центральном списке и нажать Update), удалять (выделить центр
затрат и нажать Delete) и добавить комментарий к центру
затрат (выделить центр затрат, набрать комментарий в нижнем
поле).
3.5.6. Node Tree
Вы можете создать
пояснительное дерево
узлов (Node Tree). Для
этого в верхнем меню
выберите Diagram -> Add
Node Tree. Появится окно
мастера создания Node
Tree (рис. 1.26).
Здесь вы указываете в
верхнем поле название
дерева, в следующем поле
– верхний блок дерева, и в
нижнем поле – число
уровней дерева. Нажмите кнопку Готово. Ваше дерево будет
похоже на
дерево на рисунке 1.27:
Рис. 1.27
3.5.7. Диаграммы FEO
Методология IDEF0 предусматривает пояснительные
диаграммы, не подчиняющиеся строгим правилам. Такие
диаграммы носят название диаграмм FEO. Для того, чтобы
создать диаграмму FEO в верхнем меню выберите Diagram ->
Add FEO Diagram. Появится меню создания FEO Diagram (рис.
1.28):
Рис. 1.28
Здесь вы указываете имя новой FEO диаграммы, её тип
(Context/Decomposition) и исходную диаграмму IDEF0. Нажав
кнопку ОК, вы увидите копию исходной диаграммы, на основе
которой вы можете создать пояснительную FEO диаграмму.
3.5.8. Отчёты (Reports)
BPWin позволяет создавать разнообразные отчёты. Для
этого в верхнем меню выберите Tools -> Reports. Откроется
подменю с широким выбором разнообразных отчётов по
диаграммам.
3.5.9. Пример уровня детализации модели
В процессе работы создаваемые вами уровни будут
принципиально схожи с представленным на рисунке 1.29:
Рис. 1.29
4. Задания на лабораторную работу
3.1. Изучить представление методологии IDEF0 в пакете
BPWin.
3.2.
Проконсультировавшись
с
преподавателем,
определить
профессиональную
область,
и
построить
функциональную модель выбранной предметной области.
5. Требования к отчету
Отчет должен содержать титульный лист, цель работы,
задания на лабораторную работу, диаграммы функциональной
модели и ответы на контрольные вопросы
6. Контрольные вопросы
1. Что такое функциональная модель? Для чего она
служит?
2. Назовите основные элементы функциональной модели.
3. Что такое уровень детализации модели?
4. Поясните построение Arrow Tunnel.
5. Как создаются Node Tree и диаграммы FEO?
6. Что такое стоимостной анализ?
7. Где хранятся комментарии к сущностям и связям?