Научная статья на тему 'Преобразование диаграммы классов UML в модель UFO- toolkit'

Преобразование диаграммы классов UML в модель UFO- toolkit Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
404
54
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Украинец Алексей Геннадьевич

Проводится стыковка уже зарекомендовавшего себя CASE-инструмента Rational Rose и нового инструмента системологического объектно-ориентированного анализа и моделирования UFO-Toolkit. Исследуется вопрос преобразования диаграммы классов модели, созданной в Rational Rose, в модель, описанную в UFO-Toolkit.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

UML Class Diagram Transformation into UFO-Toolkit Model

This paper describes integration of well-known CASE-tool Rational Rose and UFO-Toolkit — new tool for the systemobject analysis and modeling. The problem of the Rational Rose’s class diagram transformation into the UFO-Toolkit’s model was solved. The results of this work can give possibility to more effective big program system’s basic technology stages processing.

Текст научной работы на тему «Преобразование диаграммы классов UML в модель UFO- toolkit»

УДК 519.688 + 519.683.7

ПРЕОБРАЗОВАНИЕ ДИАГРАММЫ КЛАССОВ UML В МОДЕЛЬ UFO-TOOLKIT

УКРАИНЕЦ А.Г.___________________________

Проводится стыковка уже зарекомендовавшего себя CASE-инструмента - Rational Rose и нового инструмента системологического объектно-ориентированного анализа и моделирования UFO-Toolkit. Исследуется вопрос преобразования диаграммы классов модели, созданной в Rational Rose, в модель, описанную в UFO-Toolkit.

1. Введение

В настоящее время в мире информационных технологий широко используется синтез-методология объектно-ориентированного анализа и проектирования, основанная на подходах трех ведущих специалистов в данной области: Буча, Рамбо и Дже-кобсона. Разработанная ими универсальная нотация для моделирования объектов (UML - Unified Modeling Language) претендует на роль стандарта в области объектно-ориентированного анализа и проектирования. Программное средство Rational Rose использует упомянутую выше методологию и поддерживает унифицированный язык мод елиро -вания UML. Данное CASE-средство фирмы Rational Software Corporation (США) позволяет решать задачи автоматизации этапов анализа и проектирования программного обеспечения, а также генерировать коды на различных языках и формировать проектную документацию [1]. Кроме того, это программное средство используется для решения задач анализа и моделирования бизнеса. Однако объектно-ориентированный анализ и язык UML предназначены изначально для разработки программного обеспечения. Поэтому инструмент Rational Rose плохо приспособлен к решению задач анализа и моделирования бизнеса. Но такие задачи обязательно возникают, особенно при создании сложных программных систем.

В стенах научно-учебной лаборатории Приобретения знаний кафедры социальной информатики Харьковского национального университета радиоэлектроники был разработан новый оригинальный системно-объектный (системологический) подход и объектно-ориентированная системологическая методология анализа и проектирования (OMSAD), позволяющая эффективно решать задачи анализа и моделирования бизнеса. Для реализации данной методологии и автоматизации значительной части аналитической работы был создан инструмент системологического объектно-ориентированного анализа и моделирования UFO-Toolkit. Данный подход и CASE-инструмент согласуются с требованиями объектно-ориентированной технологии проектирования информационных систем и позволяют выполнять начальные технологические процессы разработки объектных приложений [2].

На сегодняшний день существует необходимость решения вопроса стыковки уже зарекомендовавшего себя CASE-инструмента — Rational Rose и нового инструмента системологического объектноориентированного анализа и моделирования UFO-Toolkit. Данная необходимость вызвана тем, что более эффективное моделирование бизнес-процессов можно осуществлять в UFO-Toolkit, а дальнейшие этапы разработки сложных программных приложений лучше выполнять в Rational Rose. Кроме того, существует необходимость более эффективного описания моделей бизнес-процессов, созданных с помощью Rational Rose, что можно реализовать в программном инструменте UFO-Toolkit.

Наиболее известной средой описания и анализа бизнес-процессов из аналогов является ARIS. Она включает в себя методологическую основу и ее программную реализацию в виде семейства продуктов ARIS. В настоящее время имеются интерфейсы для ARIS к другим CASE-средствам (более подробную информацию о среде ARIS можно получить по адресу: http://www.vest-meta.ru/ default.asp). Таким образом, можно утверждать, что вопросы стыковки программных инструментов, поддерживающих моделирование бизнес-процессов, с другими CASE-средствами возникают и требуют решения.

Результаты решения задачи стыковки Rational Rose и UFO-Toolkit могут способствовать более эффективному выполнению начальных технологических процессов разработки сложных программных систем.

2. Постановка задачи

Целью данной работы является решение вопроса преобразования диаграммы классов модели, созданной в Rational Rose, в модель, представленную в инструменте системологического объектно-ориентированного анализа и моделирования UFO-Toolkit.

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

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

— реализовать программу, осуществляющую преобразование модели, описанной в Rational Rose, в модель в формате UFO-Toolkit.

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

— какие данные нам необходимо получать из диаграммы классов модели, описанной в нотации унифицированного языка моделирования UML, для создания модели в рамках системно-объектного подхода;

— каким структурным элементам модели системнообъектного подхода соответствуют базовые строительные блоки UML и правила их сочетания.

106

РИ, 2004, № 2

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

— выявить особенности получения данных из моделей, созданных при помощи программного инструмента Rational Rose;

— построить дерево объектов на основе анализа диаграммы классов модели в формате Rational Rose;

— преобразовать дерево объектов в модель формата UFO-Toolkit.

Входными данными для программы является модель, описанная в нотации унифицированного языка моделирования UML, разработанная на программном инструменте Rational Rose и представленная в формате файла данного программного средства. Эта модель должна содержать диаграмму классов.

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

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

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

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

3. Реализация

На первом этапе выполнения данной работы исследовался вопрос выявления соотношения моделей, созданных в нотации UML, и моделей, созданных в рамках нового оригинального системно-объектного (системологического) подхода. В частности, рассматривалась возможность преобразования модели UML в модель системно-объектного подхода.

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

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

Модель системно-объектного подхода представляет любую систему в виде трехэлементной конструкции, т.е. в виде «узла», «функции» и «объекта» (УФО-элемента). Основной особенностью объектно-ориентированной системологической методологии является использование при анализе и проектировании систем формально-семантического адаптивного алфавита УФО-элементов. Алфавит представляет собой набор узлов (перекрестков системных связей), набор функций, балансирующих эти узлы, и набор объектов, реализующих эти функции. При этом для набора узлов используется фасетная классификация, определяемая таксономической классификацией видов системных связей [3].

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

[3].

Данный подход позволил разработать метод моделирования и анализа бизнес-систем (УФО-анализ), который дает возможность адаптировать свои средства к конкретной предметной области, т.е. учесть ее семантику.

Кратко процедуры УФО-анализа можно представить следующими основными шагами:

— выявление узлов связей в структуре моделируемой (проектируемой) системы на основании ее функциональных связей в целом, определяемых заказчиком или решаемой проблемой;

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

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

На основании описанной выше информации появляется необходимость проводить преобразование модели UML в модель системно-объектного подхода следующим образом:

РИ, 2004, № 2

107

— определить, какие структурные элементы диаграммы классов UML соответствуют узлам и системным связям в структуре моделируемой (проектируемой) системы в рамках системно-объектного подхода;

— определить нотацию, описание, входные и выходные параметры выявленных узлов;

— провести классификацию полученных узлов и связей на основании базовой таксономической классификации системных связей;

— выявить, какую функциональность поддерживают обнаруженные узлы, путем анализа диаграммы классов UML;

как описывает реализацию данного интерфейса (рис. 3);

ЗаписьКадровогоУчета

%>taxlD

^employmenyHi story ^bsatary

ISccurelnformation

ij-tfjf Библиотеки Компания

□ 3 ISecurelnformation

f(n] ЗаписьКадровогоУчета

— определить, какие структурные элементы диаграммы классов UML соответствуют объектам, реализующим выявленную функциональность.

В ходе анализа диаграммы классов модели UML и модели системно-объектного подхода были выявлены следующие закономерности:

— множество классов диаграммы классов UML может быть представлено в виде перекрестков связей с другими структурными элементами. Кроме того, классы обладают функциональностью, так как в них описывается реализация операций. Поэтому класс диаграммы классов UML соответствует узлу и функции этого узла в модели системнообъектного подхода. Нотации узла и имени функции соответствует имя класса, а описанию узла -описание соответствующего класса (рис. 1);

Рис. 1. Преобразование класса

— множество интерфейсов диаграммы классов UML соответствует узлам в модели системно -объектного подхода, так как интерфейсы могут быть так же, как и классы, представлены в виде перекрестка связей с другими структурными элементами. Соответственно нотация узла и его описание соответствует имени интерфейса и его описанию;

—экземпляры класса диаграммы классов UML реализуют функциональность класса и таким образом соответствуют объектам функции соответствующего узла в модели системно-объектного подхода (рис. 2);

current: Trans action

$--Щ Библиотеки I Й-Щ Банкомат | ЁьВ Transaction

І □ f(x) Transaction

І *.gJ current

Рис. 3. Преобразование конструкции «класс реализует интерфейс»

— атрибуты классов и интерфейсов диаграммы классов UML с уровнем видимости public являются входными и выходными системными связями соответствующих узлов модели системно-объектного подхода, так как они доступны пользователю классов и интерфейсов как для задания, так и для извлечения. Аналогично преобразуются и параметры операций классов и интерфейсов диаграммы классов UML с уровнем видимости public. Здесь параметры, передаваемые операции, являются входными системными связями соответствующего узла, а возвращаемое значение операции — выходной связью узла. Полученные входные и выходные системные связи естественно отображаются и в иерархию системных связей (рис. 4);

Person <>name : Name ^employeelD : Integer Otitle : String

Name 1 4 Name

Д Photo Photo

^setPhoto(p : Photo) ^getSoundBiteQ ^g etc о nta ctl nf о rm ati о n () ^getPersonalRecords() ^getPhotoQ / * —и String Person > String

Рис. 4. Получение входов и выходов узла

— все входные и выходные системные связи соответствуют информационным связям базовой таксономической классификации системных связей, а именно данным. Это объясняется тем, что все программные системы ведут обработку информации, в качестве которой выступают данные. Таким образом, все полученные узлы модели системнообъектного подхода относятся к классу узлов, у которых входными и выходными параметрами являются данные.

Рис. 2. Преобразование экземпляра класса

— из всех видов отношений между строительными блоками диаграммы классов UML целесообразно рассматривать только отношение реализации классом интерфейса. В этой ситуации интерфейс отождествляется с узлом, а класс — с его функцией, так

Второй этап этого исследования заключался в разработке программы, непосредственно осуществляющей преобразование диаграммы классов модели, описанной в Rational Rose, в модель в формате UFO-Toolkit.

108

РИ, 2004, № 2

Программа разработана таким образом, что она сначала извлекает данные из диаграммы классов модели, созданной в Rational Rose, и строит на их основе дерево объектов, а в дальнейшем на основании полученного дерева объектов создает модель в формате UFO-Toolkit.

В качестве среды разработки программы была выбрана Java 2 SDK 1.4.0., поддерживающая язык программирования Java. Выбор данной среды программирования обусловлен наличием при разработке программной системы ряда неосновных библиотек Java, позволяющих работать с документами формата Rational Rose. Данные библиотеки дают возможность создания, разбора и модификации файла формата Rational Rose. Эти библиотеки и их описание, а также документацию по формату файла Rational Rose можно получить на Internet-ресурсе http:// crazybeans.sourceforge.net/. Следует сказать, что основные библиотеки для Java не предоставляют средств для работы с указанным документом. Кроме того, Java 2 SDK 1.4.0. обладает набором библиотек для работы с .XML (этот вид имеет внутреннее представление файла формата UFO-Toolkit).

4. Выводы

В данной работе был исследован вопрос преобразования диаграммы классов модели, созданной в Rational Rose, в модель, описанную в инструменте системологического объектно-ориентированного анализа и моделирования UFO-Toolkit.

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

На основе проведенных исследований по выявлению соотношения моделей, созданных в нотации

унифицированного языка моделирования UML, и моделей, созданных в рамках нового оригинального системно-объектного подхода, была реализована программа, осуществляющая преобразование диаграммы классов модели, описанной в Rational Rose, в модель в формате UFO-Toolkit.

Полученная модель содержит:

— иерархию связей;

— набор узлов, проклассифицированных на основе базовой таксономической классификации;

— нотации, описания, входные и выходные параметры узлов;

—функции узлов и объекты, их реализующие (если таковые были выявлены на диаграмме классов UML).

Программа, явившаяся результатом данной работы, может служить основой для стыковки Rational Rose и UFO-Toolkit. В дальнейшем программа может расширяться за счет дополнения ее модулями для преобразования других видов диаграмм унифицированного языка моделирования UML (например, диаграммы прецедентов).

Литература: 1. Трофимов С.А. Case-технологии: работа в Rational Rose. М.: Бином, 2001. 272с. 2.Буч Г., Рамбо Д, Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. М.: ДМК, 2000. 432с. 3. Маторин С.И Анализ и моделирование бизнес-систем (системологическая объектно-ориентированная технология) X.: ХНУРЭ, 2002. 322с.

Поступила в редколлегию 05.02.2004

Рецензент: д-р техн. наук, проф. Шабанов-Кушнаренко С.Ю.

Украинец Алексей Геннадьевич, студент ф-та КН ХНУРЭ. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. (057) 70-21-591, E-mail: [email protected].

УДК 621.391

АНАЛИЗ ЧИСЛОВЫХ ХАРАКТЕРИСТИК ЛОГАРИФМА ОТНОШЕНИЯ ПРАВДОПОДОБИЯ МАР ДЕКОДЕРА

ПРИХОДЬКО С.И., ЖУЧЕНКО А.С, ПАРХОМЕНКО Д.А._______________________

Проводится анализ числовых характеристик логарифма отношения правдоподобия МАР декодера для случаев, когда дисперсия шума известна и когда неизвестна.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Постановка проблемы

Существует анализ [1, 2] числовых характеристик логарифма отношения правдоподобия МАР (maximum a posteriori probability) декодера для известной дисперсии шума. Знание особенностей числовых характеристик логарифма отношения правдо-

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

Анализ литературы. Модификации МАР алгоритма, уменьшающие вычислительную сложность, предложены в [3—5]. В [1, 2] проведен анализ числовых характеристик логарифма отношения правдоподобия — среднего значения и дисперсии в целях выявления зависимостей между ними, когда дисперсия шума известна.

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

Алгоритм декодирования и условия моделирования

При исследовании числовых характеристик логарифма отношения правдоподобия использовался алгоритм, предложенный в [5]. Было проведено

РИ, 2004, № 2

109

i Надоели баннеры? Вы всегда можете отключить рекламу.