УДК 004.4(06) Технологии разработки программных систем А.А. КОВАЛЬ Московский инженерно-физический институт (государственный университет) ПРИМЕНЕНИЕ ЦВЕТНЫХ СЕТЕЙ ПЕТРИ ДЛЯ МОДЕЛИРОВАНИЯ СЦЕНАРИЯ РАБОТЫ ПРИЛОЖЕНИЙ В докладе рассматриваются вопросы моделирования и анализа сценариев работы приложений на основе цветных сетей Петри. Задача спецификации функциональной модели приложения является актуальной на всех стадиях жизненного цикла приложения. В идеальном варианте модель строится в начале разработки программной системы, но очень часто работы над этой подзадачей начинаются на более поздних этапах или же вовсе при возникновении потребности в реинжиниринге системы. С другой стороны, задачи, которые решают реальные системы, иногда настолько комплексны и сложны, что не всегда удается сформулировать в полном объеме функциональные требования на начальном этапе разработки. Таким образом, можно считать, что спецификация функциональной модели актуальна в процессе всего жизненного цикла приложения: для анализа предметной области, проектирования системы, документирования, тестирования, моделирования, реинжиниринга и т.д. В качестве формального языка для описания бизнес-процессов приложения предлагается использовать аппарат сетей Петри. Сети Петри являются расширением классической теории графов. Теория сетей Петри [1-2] делает возможным спецификацию системы математическим представлением, анализ которой помогает получить важную информацию о структуре и динамическом поведении моделируемой системы. Важными расширениями сетей Петри являются цветные и иерархические сети Петри. Первые позволяют более конкретно специфицировать условия срабатывания переходов, а вторые осуществлять иерархическую композицию или декомпозицию объектов сети. Для исследований выбрана проблемная область автоматизации работы службы сопровождения программного обеспечения процессингового центра. Можно выделить несколько задач, в которых одним из основных является понятие сценарий. Например, можно говорить о сценарии обработке заявки пользователя в системе автоматизированной технической поддержки или сценарии работы ISBN 5-7262-0555-3. НАУЧНАЯ СЕССИЯ МИФИ-2005. Том 2 97 УДК 004.4(06) Технологии разработки программных систем банкомата. Для обоих сценариев можно построить модель в виде сети Петри и абстрагироваться от деталей реализации конкретных программных модулей и сосредоточиться на анализе элементов проблемной области. Формальное определение сценария позволяет нам автоматически генерировать сеть Петри на основе описания сценария. Для описания сети Петри предлагается использовать язык Colored Petri Net Markup Language (CPN ML). CPN ML является расширением известного функционального языка программирования Standard ML (SML). Для первоначального анализа наиболее удобным является графическое представление сети. Для задачи визуализации сети Петри, описанной с помощью CPN ML, используется программный продукт CPN Tools. CPN Tools – это средство для редактирования, моделирования и анализа цветных сетей Петри. В качестве более легковесного решения для визуализации сети Петри предлагается использовать формат Scalable Vector Graphics (SVG) [3]. SVG - формат описания двумерных векторных графических изображений, основанный на XML, подготовленный консорциумом w3c. Так как CPN ML и SVG являются XML документами, то можно реализовать XSLT программу, преобразовывающую CPN ML файл в SVG формат, который можно отобразить в браузере Internet Explorer (с помощью специального плагина Adobe). С другой стороны, используя модель сценария в виде цветной сети Петри, мы можем работать с переменными и данными, что дает возможность загрузить в сеть данные, полученные из результатов работы моделируемой системы и выполнить повторный прогон сценария в построенной сети. Это дает нам возможность проводить ретроспективный анализ. С течением времени сценарии работы приложений могут меняться и, следовательно, перед внесением изменений в рабочее приложение, можно выполнить тестирование сценария на основе построенной сети Петри. Список литературы 1. 2. 3. Котов В.Е. Сети Петри.- М.: Наука, 1984. Питерсон Дж. Теория сетей Петри и моделирование систем. - М.: Мир, 1984. J. David Eisenberg SVG Essentials O’Relly 2002. ISBN 5-7262-0555-3. НАУЧНАЯ СЕССИЯ МИФИ-2005. Том 2 98