Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2015_Alontseva_Anokhin_Saakyan_Structural_analysis

.pdf
Скачиваний:
45
Добавлен:
29.03.2016
Размер:
1.5 Mб
Скачать

сайта заказчиком. Связь типа вход-механизм представлена дугой «Программное обеспечение сайта». С помощью этого программного обеспечения производится наполнение сайта информацией.

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

В диаграмме нижнего уровня на рис. 5 имеются пять граничных дуг: «Информация о предметной области», «Сайт, доступный пользователям», «Мода», «Заказчик» и «Группа разработки».

Очевидно, что граничные дуги диаграммы-потомка должны быть согласованы по числу и наименованию с дугами, примыкающими к родительскому блоку. Однако на практике это не всегда выполняется. Так, в приведенном примере к родительскому блоку «Создать сайт» примыкают пять дуг. Четыре из них – «Информация о предметной области», «Сайт, доступный пользователям», «Мода» и «Группа разработки» – совпадают с граничными дугами диаграммыпотомка. В то же время к родительскому блоку примыкает «Техническое задание», которого нет в диаграмме-потомке. Зато в этой диаграмме есть граничная дуга «Заказчик», которой нет при родительском блоке. Их отсутствие объясняется тем, что они «помещены в тоннель», который обозначается парой круглых скобок, «обжимающих» дугу с двух сторон. Существуют два способа использования тоннеля.

1. В тоннель помещается свободный конец интерфейсной дуги – это означает, что данная дуга отсутствует на родительской диаграмме. Данный прием применяется в случаях, когда объекты,

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

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

20

2. В тоннель помещается конец дуги, присоединенный к родительскому блоку, – это означает, что данная дуга отсутствует на диаграмме-потомке, порожденной в результате декомпозиции этого блока. Данный прием используется, если объект,

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

имеет скрытый для нижнего уровня приемник.

Дуги могут отображать как простой, так и агрегированный или обобщенный объекты. Чтобы показать это, дуги должны разветвляться на несколько ветвей. Разветвление дуги, изображаемое в виде расходящихся линий, означает, что все содержимое дуги или его часть может появиться в каждом ответвлении дуги. Дуга всегда помечается до разветвления. Кроме того, каждая ветвь дуги может быть помечена или не помечена в соответствии со следующими правилами:

непомеченные ветви содержат все объекты, указанные в метке дуги перед разветвлением;

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

Примером разветвляющейся дуги является «Группа разработки», осуществляющая создание сайта в примере на рис. 5. Эта группа состоит из дизайнера, программиста, контент-менеджера и специалиста по продвижению сайтов, каждый из которых выполняет свою задачу, как показано на диаграмме-потомке.

Аналогичную роль играет слияние дуг, изображаемое как сходящиеся вместе линии. Слияние означает, что содержимое каждой ветви идет на формирование метки дуги, являющейся результатом слияния ветвей.

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

для дуг и блоков – определение (definition – определение объекта, отображаемого дугой, или функции, отображаемой блоком), примечание (note – дополнительная поясняющая информация), ссылку

21

или извлечение из источника, несущего информацию об объекте или функции (source);

для диаграмм – стадию работы над диаграммой (в работе, черновой вариант, отрецензированный, готовый к публикации в отчете), сопроводительный поясняющий текст;

для модели в целом – название проекта (project), в рамках которого разрабатывается модель; информацию об авторе модели (author); стадию работы над моделью (аналогичную стадиям работы над диаграммами); цель моделирования (purpose); точку зрения, с которой осуществлялось структурирование моделируемого процесса (viewpoint); определение моделируемого процесса (definition); границы моделирования (scope); перечень источников информации, на основании которой строилась модель (source).

2.2. Диаграмма потоков данных в нотации DFD

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

Базовыми понятиями диаграмм потоков данных являются работа

(activity), внешняя ссылка (external reference, entity), хранилище дан-

ных (data store), поток данных (data flow) (табл. 3). Аналогично диаграммам IDEF0 диаграммы потоков данных строятся в виде функциональной сети, состоящей из вершин и направленных дуг. Основное отличие потоковых диаграмм состоит в возможности использования трех типов вершин, служащих не только для представления процессов, но и для отображения отдельных объектов и средств накопления и хранения данных.

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

22

Таблица 3

Нотация диаграмм потоков данных DFD

Символ

 

Функция

Функция

 

Внешняя

 

сущность

 

Хранилище

 

Хранилище

Объект

 

 

Назначение

Функция, работа, действие, операция преобразования данных

Внешняя сущность

Хранилище данных

Поток данных, объект

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

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

23

ные, управляющие и обеспечивающие, подводя их к соответствующим стороне прямоугольника или сектору круга (см. рис. 7б)

а)

б)

Рис. 7. Диаграмма потоков данных «Создание сайта» в нотации DFD:

а– в формате Visio; б – в формате BPWin

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

Третий тип вершин – хранилище данных – предназначен для представления любых средств хранения данных: баз данных, карто-

24

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

2.3. Диаграмма рабочих процессов в нотации IDEF3

Стандарт IDEF3 предлагает нотацию построения диаграмм двух видов: функциональных диаграмм для описания процессов (Process Flow Description Diagrams, PFDD) и диаграмм для описания изменения состояния объектов (Object State Transition Network, OSTN). В

данном разделе мы рассмотрим диаграммы первого типа, диаграммы второго типа будут описаны в главе 4.

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

Базовыми понятиями диаграмм процессов являются (табл. 4) единица работы (unit of work), перекресток (junction), объект ссылки (referent), комментарий (note), порядок следования работ (precedence), взаимосвязи между работами (relation link). Аналогично предыдущим диаграммам, диаграммы процессов IDEF3 представляют собой функциональную сеть с вершинами четырех типов и направленными дугами трех типов. Рассмотрим их подробнее.

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

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

25

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

 

 

 

 

 

 

 

 

 

 

Таблица 4

 

 

 

 

 

 

 

Нотация диаграмм рабочих процессов IDEF3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Символ

 

Назначение

 

 

 

 

 

 

 

 

 

 

Единица

 

 

Единица работы (функция, действие, операция). В

 

 

работы

 

 

нижних секциях указываются номера данного блока

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Перекресток, где С – один из символов: &, O, X

 

 

С

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Объект

 

Объект ссылки. В нижней части указывается номер

 

 

ссылки

 

ссылаемого блока

 

 

 

 

 

 

 

 

 

 

 

 

 

Комментарий

 

Комментарий. В верхней части указывается номер

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Стрелка, определяющая порядок следования работ,

 

 

 

 

 

 

 

где С – один из символов: , , ,

 

 

С

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Линия взаимосвязи между работами

 

 

 

 

 

 

 

 

 

 

 

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

26

Рис. 8. Диаграмма рабочих процессов «Создание сайта» в нотации IDEF3

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

Таким образом, если простые стрелки показывают, каким может быть поведение системы, то маркеры на стрелках указывают, каким оно должно быть.

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

27

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

Необходимо отметить, что нотация IDEF3 в части номенклатуры стрелок не всегда трактуется однозначно. Так, в популярном пакете BPWin, на основе которого написано большинство отечественных учебных изданий по CASE-технологиям, отсутствуют маркеры ограничений, зато присутствует двойная стрелка, означающая поток объектов. В то же время IDEF3 резервирует двойную стрелку для изображения «сильного перехода» в диаграммах состояний, которые отсутствуют в BPWin.

Важным понятием диаграмм процессов являются перекрестки – специальные вершины, предназначенные для синхронизации выполнения нескольких единиц работ. Дуги порядка следования от нескольких единиц работ могут сходиться к перекрестку (перекресток сходящихся дуг – рис. 9 а), либо расходиться от него к нескольким единицам работ (перекресток расходящихся дуг – рис. 9 б). В диаграммах процессов предусмотрены пять видов перекрестков, значения которых поясняются в табл. 5.

а) б)

Рис. 9. Перекрестки в нотации IDEF3

Вершины двух других типов – объекты ссылок и комментарии являются вспомогательными и могут использоваться для

изображения «точки разрыва», т.е. перехода, соединяющего части различных диаграмм,

напоминания о некотором процессе, определенном в другом месте диаграммы, без его вторичного определения;

организации цикла работ; представления объекта, причастного к данной единице работы;

28

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

Таблица 5

Перекрестки диаграммы рабочих процессов

Обозна- чение

&

&

O

O

X

Назва-

Функция для

Функция для

ние

сходящихся дуг

расходящихся дуг

 

 

 

Асин-

Все предшествующие

Все последующие про-

хронный

процессы должны быть

цессы должны старто-

И

завершены

вать

Син-

Все предшествующие

Все последующие про-

хронный

процессы должны быть

цессы должны старто-

И

завершены одновременно

вать одновременно

Асин-

Один или несколько пред-

Один или несколько

хронный

шествующих процессов

последующих процес-

ИЛИ

должны быть завершены

сов должны стартовать

Син-

Один или несколько

Один или несколько

хронный

предшествующих про-

последующих процес-

ИЛИ

цессов должны быть за-

сов должны стартовать

 

вершены одновременно

одновременно

Исключа

Ровно один предшест-

Ровно один последую-

ющий

вующий процесс должен

щий процесс должен

ИЛИ

быть завершен

стартовать

2.4. Диаграмма цепочек процессов в нотации eEPC

Диаграмма в нотации еЕРС (extended Event-driven Process Chain)

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

29

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]