Структурные карты Константайна



 

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

Структурные карты Константайна (Constantine) предназначены для описания отношений между модулями.

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

· модуль состоит из множества операторов языка программирования, записанных последовательно;

· модуль имеет имя, по которому к нему можно ссылаться как к единому фрагменту;

· модуль может принимать и/или передавать данные как параметры в вызывающей последовательности или связывать данные через фиксированные ячейки или общие области.

Структурные карты Константайна являются моделью отношений иерархии между программными модулями. Узлы структурных карт соответствуют модулям и областям данных, потоки изображают межмодульные вызовы. При этом циклические и условные вызовы модулей моделируются специальными узлами, поэтому потоки должны быть изображены проходящими через эти специальные узлы. Межмодульные связи по данным и управлению также моделируются специальными узлами, привязанными к потокам (т.е. к вызовам модулей), стрелками указываются направления потоков и связей. (слайд 6)

Базовым элементом структурной карты является модуль. Возможно использовать различные типы модулей (слайд 7):

1. Собственно МОДУЛЬ. Используется для представления обрабатывающего фрагмента для его локализации на диаграмме.

2. ПОДСИСТЕМА. Ранее определенный модуль, детализированный посредством декомпозиции ранее определенных диаграмм. Может повторно использоваться любое число раз на любых структурных картах.

3. БИБЛИОТЕКА. Отличается от подсистемы тем, что определена вне проекта данной системы.

4. ОБЛАСТЬ ДАННЫХ. Используется для указания модулей, содержащих исключительно области глобальных/распределенных данных.

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

Для моделирования условных и циклических вызовов применяются следующие узлы (слайд 8):

Условный узел используется для условного вызова модуля-потомка. Он изображается с помощью ромба, потоки - альтернативные вызовы изображаются выходящими из него. Таким образом, если из ромба выходят два потока, это соответствует конструкции IF-THEN-ELSE, если один поток - конструкции IF-THEN.

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

Связи по данным и управлению между модулями (передаваемые как параметры) раскрываются аннотированием потоков-вызовов (слайд 8). Стрелками отмечаются направления связей.

Пример структурной карты Константайна. (слайд 9)

Структурные карты Джексона

 

Структурные карты Джексона (Jackson), предназначенные для описания внутренней структуры модулей.

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

По аналогии со структурными картами Константайна диаграмма Джексона может включать объекты следующих типов:

· СТРУКТУРНЫЙ блок (базовая компонента методологии) представляет частную функцию или блок кодов с одним входом и одним выходом.

· ПРОЦЕДУРНЫЙ блок является специальным видом структурного блока, представляющим вызов ранее определенной процедуры.

· БИБЛИОТЕЧНЫЙ блок аналогичен процедурному и представляет вызов библиотечного модуля.

Для взаимоувязывания блоков используются связи следующих типов:

· последовательная связь, обеспечивающая последовательное выполнение слева направо;

· параллельная связь, обеспечивающая одновременное выполнение блоков;

· условная связь, обеспечивающая выбор одной из альтернатив;

· итерационная связь, обеспечивающая выполнение блока в цикле.

Пример структурной карты Джексона. (слайд 10)

 

Метод Ericsson-Penker

 

Метод Ericsson-Penker представляет интерес прежде всего в связи с попыткой применения языка объектного моделирования UML (изначально предназначенного для моделирования архитектуры систем ПО) для моделирования бизнес-процессов. Это стало возможным благодаря наличию в UML механизмов расширения.

Авторы метода создали свой профиль UML для моделирования бизнес-процессов, введя набор стереотипов, описывающих процессы, ресурсы, правила и цели деятельности организации.    Основной диаграммой, используемой в этом подходе, является диаграмма деятельности (activity diagram). В результате получился процесс, альтернативный RUP, в котором не применяются варианты использования.

Метод использует четыре основные категории бизнес-модели:

· Ресурсы - различные объекты, используемые или участвующие в бизнес-процессах (люди, материалы, информация или продукты).

· Процессы - виды деятельности, изменяющие состояние ресурсов в соответствии с бизнес-правилами.

· Цели - назначение бизнес-процессов Цели могут быть разбиты на подцели и соотнесены с отдельными процессами.

· Бизнес-правила - условия или ограничения выполнения процессов (функциональные, поведенческие или структурные). Правила могут быть определены с использованием языка OCL.

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

Основной диаграммой UML, используемой в данном методе, является диаграмма деятельности.

Бизнес-процесс в самом простом виде может быть описан как множество деятельностей. Метод Eriksson-Penker представляет образец процесса на диаграмме деятельности (слайд 12) в виде деятельности со стереотипом "process" (в качестве основы данного образца использовано представление процесса в методе IDEF0, расширенное за счет введения цели процесса). Процесс использует входные ресурсы и формирует выходные ресурсы, показанные в виде объектов со стереотипом "resourse", соединенных с процессом связями зависимости. Ресурсы, играющие в методе IDEF0 роли "управления" и "механизма", также соединены с процессом связями зависимости со стереотипами "supply" и "control". Цель процесса показана как объект со стереотипом "goal".

Полная бизнес-модель включает множество представлений. Каждое представление выражено в одной или более диаграммах. Диаграммы могут иметь различные типы и изображать процессы, правила, цели и ресурсы во взаимодействиях друг с другом. Метод Eriksson-Penker использует четыре различных представления бизнес-модели:

· концептуальное представление — структура целей и проблем (дерево целей, представленное в виде диаграммы объектов);

· представление процессов — взаимодействие между процессами и ресурсами (в виде набора диаграмм деятельности);

· структурное представление — структура организации и ресурсов (в виде диаграмм классов);

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

Метод Ericsson-Penker активно использует набор образцов моделирования бизнес-процессов. Образец (pattern) можно определить как общее решение некоторой проблемной ситуации в заданном контексте. Образец состоит из четырех основных элементов: имя; проблема; решение; следствия.

 


Дата добавления: 2021-07-19; просмотров: 111; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!