Экономико-математические модели процессов использования интернет-приложений: методология построения и инструментарий разработки (26.07.2010)

Автор: Щербаков Сергей Михайлович

bp3:=_s;

function ucd_ucc:real;

var _s:real;_nI:real;

_iI:integer;

function _actor0:real;

_nII:real;

_iII:integer;

_sII:real;

_sII:=0;

_nII:=gen1(5,10);

for _iII:=1 to round(_nII) do

_sII:=_sII+_uc1;

_nII:=gen1(10,15);

for _iII:=1 to round(_nII) do

_sII:=_sII+_uc2;

_actor0:=_sII;

_s:=0; _nI:=gen1(10,20);

for _iI:=1 to round(_nI) do

_s:=_s+_actor0;

ucd_ucc:=_s;

Рис. 11. Формирование программного кода по компонентам модели

Рис. 12. Алгоритмы синтеза имитационных моделей

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

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

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

Между компонентами имитационной модели могут существовать отношения двух типов:

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

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

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

Для формирования программного кода по композитному компоненту необходимо провести формирование программного кода по всем входящим в него агрегированным компонентам.

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

На рис. 13 представлен обобщенный алгоритм формирования программного кода по компоненту.

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

Функционирование системы обеспечивается взаимодействием ее ключевых модулей. На рис. 14 представлена предлагаемая архитектура в виде диаграммы пакетов.

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

Источник: Хубаев Г.Н., Широбокова С.Н., Щербаков С.М. Автоматизированный синтез имитационных моделей деловых процессов // Известия вузов. Северо-кавказский регион. Технические науки. – 2008. – №4. – С. 73-79.

Рис. 13. Обобщенный алгоритм формирования программного кода имитационной модели по компоненту метамодели

Рис. 14. Структура системы имитационного моделирования

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

Разработанная на основе предложенных архитектурных моделей программная система СИМ-UML предназначена для решения следующих задач: ведение перечня переменных имитационной модели, позволяющих задавать количественные характеристики изучаемого процесса; построение UML-диаграмм, определяющих структурные и поведенческие характеристики делового процесса; автоматическое формирование программного кода имитационной модели.


загрузка...