Обзор программных средств моделирования на языке UML - Студенческий научный форум

XIV Международная студенческая научная конференция Студенческий научный форум - 2022

Обзор программных средств моделирования на языке UML

 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

 

UML – унифицированный язык моделирования (Unified Modeling Language) – это система обозначений, которую можно применять для объектно-ориентированного анализа и проектирования. Его можно использовать для визуализации, спецификации, конструирования и документирования программных систем [1].

UML появился в 1994 г. как результат унификации Гради Бучем и Джимом Рамбо из Rational Software Corporation методов объектно-ориентированного подхода при разработке программных систем. В 1996 года был создан некоммерческий консорциум Object Modeling Group, который объединил ведущих производителей ПО (DEC, HP, IBM, Microsoft, Oracle, Rational Software, IBM, Objectime, Platinum Technology, Softeam) над созданием версий UML. В 1997 был выдан UML 1.0, в 2003 была принята версия 1.5, в 2004 г. принята версия UML 2.0Преимущества UML: упрощает сложности проектирования систем; сохраняет возможности открытого общения; автоматизирует производство программного обеспечения и процессов; помогает решить постоянные проблемы с архитектурой информационных систем; улучшает качество работы; сокращает затраты и время выхода на рынок программного обеспечения [2].

Язык UML определяется нотацией и метамоделью. Нотация UML представляет собой совокупность графических элементов, которые применяются в моделях. Тринадцать официальных типов диаграмм UML 2.0 классифицированы по двум основных типам: структурные диаграммы и поведенческие диаграммы. Эти многочисленные варианты сценариев и диаграмм UML определены разными типами ролей от заказчиков и руководителей проектов до технических писателей, конструкторов, аналитиков, программистов и тестеров. Представители каждой роли будут использовать конкретную диаграмму в соответствии со своими потребностями. Это означает, что каждый шаблон требует различного фокуса и уровня детализации. Цель UML — визуально представить диаграммы, которые легко понять каждому.

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

К структурным наиболее известным диаграммам UML относятся:

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

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

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

диаграмма развертывания, на которой показаны аппаратные (узлы) и программные (артефакты) компоненты, и их взаимосвязи;

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

диаграммапрофиля, которая помогает создавать новые свойства и семантику для диаграмм UML путем определения пользовательских стереотипов, теговых значений и ограничений, позволяет настраивать метамодель UML для различных платформ (например, Java Platform, Enterprise Edition (Java EE) или Microsoft .NET Framework) и доменов (например, моделирование бизнес-процессов, сервис-ориентированная архитектура, медицинские приложения и т. д.).

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

К поведенческим наиболее известным диаграммам UML относятся:

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

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

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

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

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

Рисунок 1 – Обобщенный пример диаграммы вариантов использования UML

Язык UML поддержан целым спектром инструментальных программных средств визуального моделирования, это и совместные разработки, которые поддерживают основные языки программирования C++, Java и др., и также среды разработки автоматизированного тестирования и документирования, охватывающих жизненный цикл создания программных систем.

Приведём список из десяти наиболее популярный средств для работы с UML [4]:

StarUML;

Umbrello;

Altova UModel;

Umple;

Visual Paradigm;

Draw.IO;

Edraw;

UML Designer;

WhitestarUML;

GenMyModel.

В таблице 1 обобщена информация о популярных средствах моделирования на UML, акцентировано на условиях использования (открытость кода, бесплатный или коммерческий продукт) и особенностях использования.

Таблица 1 – Десять популярных средствах моделирования на UML

 

Название инструмента UML

Открытость кода и возможность бесплатного использования

Операци-онные системы

Особенности

1

StarUML

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

MacOS, Windows,
Linux

Позволяет обнаруживать/
устанавливать сторонние расширения

2

Umbrello

Открытый код, есть возможность бесплатного использования

Linux

Позволяет создавать схемы программного обеспечения и другой системы в стандартном формате. Это поможет вам проверить скриншот, чтобы увидеть umbrello в действии. Предлагает руководство по обучению Umbrello и UML-моделированию

3

Altova UModel

Есть возможность бесплатного использования

MacOS, Windows,
Linux

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

4

Umple

Открытый код, есть возможность бесплатного использования

MacOS, Windows,
Linux

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

Инструмент Umple помогает пользователям быстрее изучать UML. Инструмент может работать онлайн, как плагин Eclipse, а также автономная командная строка Jar.

5

Visual Paradigm

Есть возможность бесплатного использования

MacOS, Windows,
Linux

Он предлагает поддержку BPMN, UML, ERD, DFD, SysML. Он предлагает полный инструмент для анализа процессов, проектирования систем, проектирования баз данных и т.д. Предлагает функцию пользовательских историй для захвата и поддержания потребностей пользователей.

6

Draw.IO

Открытый код, есть возможность бесплатного использования

Windows

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

7

Edraw

Есть возможность бесплатного использования

MacOS, Windows,
Linux

Вы можете создать блок-схему, интеллектуальную карту, UML, электрические схемы, сетевые диаграммы и т. Д. Он предоставляет удобный интерфейс, похожий на MS Word.

Edraw Max поможет вам поделиться дизайном в любое время и в любом месте. Этот инструмент предоставляет более 280 новейших решений для схем и диаграмм.

8

UML Designer

Открытый код, есть возможность бесплатного использования

Windows, Linux

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

9

WhitestarUML

Открытый код, есть возможность бесплатного использования

Linux

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

10

GenMyModel

Открытый код, есть возможность бесплатного использования

MacOS, Windows,
Linux

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

Рассмотрим немного подробнее один из анализируемых в таблице 1 инструментов UML – Visual Paradigm, как один из немногих, который предлагает полный инструмент для проектирования систем на языке UML, что актуально при дипломном проектировании.

Visual Paradigm разработан специально для программных проектов двигателей. Этот инструмент UML помогает команде разработчиков программного обеспечения моделировать информационную систему бизнеса и процессы разработки. Особенности Visual Paradigm: предлагает поддержку BPMN, UML, ERD, DFD, SysML; предлагает полный инструмент для анализа процессов, проектирования систем, проектирования баз данных и т.д.; предлагает функцию пользовательских историй для захвата и поддержания потребностей пользователей.

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

Рисунок 2 – Окно программы Visual Paradigm

Если говорить о поддерживаемых средой типах диаграмм, то их список достаточно велик. Сюда входят диаграммы классов, use case диаграммы, sequence-диаграммы, диаграммы автоматов и действий, компонентные диаграммы, диаграммы пакетов и т.д. Если нужен какой-то тип диаграммы UML, то можно быть уверенным, что Visual Paradigm for UML его поддерживает. Заявляется полная поддержка UML 2.1.

В Visual Paradigm for UML поддерживается последняя версия BPMN, строить можно два различных типа диаграмм: диаграмма бизнес-процесса (Business Process Diagram – BPD) и диаграмма движения данных (Data Flow Diagram DFD). Для моделирования хранящихся в реляционной базе данных на физическом уровне можно использовать ERD-диаграммы, а для моделирования привязки к классам в приложении пригодятся уже ORM-диаграммы.

Visual Paradigm for UML может не только генерировать код по созданным в ней диаграммам, но и производить reverse engineering кода с тем, чтобы затем по готовому коду составлять диаграммы, иллюстрирующие его структуру. В список языков, с кодом на которых можно так делать, входят C++, Java, IDL, PHP и Python. Также аналогичная возможность поддерживается для XML и XML schema, баз данных (через JDBC) и даже исполняемых файлов для платформы .NET или "родных" для Windows EXE'шек и DLL'ек.

Исходя из обзора средств моделирования на UML и их сравнения по ряду критериев (таблица 1), а также целей дипломного проектирования информационных систем, приходим к выводу о возможности и целесообразности построения структурных и поведенческих диаграмм UML в такой среде моделирования как Visual Paradigm for UML для описания проектной части дипломной работы по созданию информационных систем, направленных на решение различных задач, в том числе на визуализацию пространства и создание интерактивных объектов.

Список используемых источников

UML // Википедия – URL: https://ru.wikipedia.org/wiki/UML (дата обращения 10.02.2022)

Зачем нам UML? Или как сохранить себе нервы и время // Хабр –URL: https://habr.com/ru/post/458680 (дата обращения 10.02.2022)

UML для бизнес-моделирования: зачем нужны диаграммы процессов // EvergreenURL: https://evergreens.com.ua/ru/articles/uml-diagrams.html (дата обращения 11.02.2022)

Visual Paradigm // BPM SOLUTIONS – URL: https://bpms.com.ua/visual-paradigm (датаобращения 12.02.2022)

Просмотров работы: 673