Применение UML-диаграмм для проектирования программных комплексов | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 26 октября, печатный экземпляр отправим 30 октября.

Опубликовать статью в журнале

Библиографическое описание:

Применение UML-диаграмм для проектирования программных комплексов / Е. В. Коптенок, М. В. Трунников, Е. А. Сухарев [и др.]. — Текст : непосредственный // Молодой ученый. — 2020. — № 19 (309). — С. 133-135. — URL: https://moluch.ru/archive/309/69887/ (дата обращения: 17.10.2024).



Проектирование — процесс определения компонентов, архитектуры, интерфейсов и других характеристик программного продукта или его части. Обычно, проектирование занимает 10–15 % от всего времени разработки. Цель проектирования — выявить отношения между процессами и показать, как процессы преобразуют свои входные данные в выходные.

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

– Статические диаграммы состоят из постоянно находящихся в системе сущностей, а также из связей между этими сущностями. К данному виду диаграмм относятся диаграммы: объектов, классов, развертывания и компонентов.

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

Рассмотрим некоторые конкретные виды UML-диаграмм:

  1. Use-case диаграммы применяются для определения взаимодействия между внешними системами и рассматриваемым проектом. Причем внешней системой может быть человек, компания, удаленный сервер и любое другое ПО.

Такой внешний участник называется актером (actor). Актер взаимодействует с разрабатываемой системой через варианты использования, предоставляемые этой системой.

  1. Диаграммы последовательностей.

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

1) Слева направо — Изменение вовлечения сущностей во взаимодействие;

2) Сверху вниз — Порядок обмена сообщениями между вовлеченными в процесс сущностями.

Также такая UML-диаграмма хорошо помогает при документировании проекта.

Sequence диаграмма состоит из:

1) Взаимодействующих объектов;

2) Сообщений, которыми они обмениваются.

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

  1. Диаграммы активностей.

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

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

Еще более опасные последствия могут произойти в случае отклонения от установленной последовательности действий при запуске ракеты или при работе сотрудников на АЭС.

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

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

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

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

Существует несколько типов отношений между классами, а именно:

1) абстракция;

2) обобщение;

3) зависимость.

  1. Диаграммы компонентов иразмещений.

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

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

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

Таким образом, UML-диаграммы — обязательный инструмент, используемый при проектировании программных комплексов. А большое количество типов диаграмм позволяет детально проработать каждый аспект системы.

Пример диаграммы компонентов представлен на рис.1.

Рис. 1. Диаграмма компонентов

Литература:

  1. Диаграмма вариантов использования (Use Case diagram) | Хабр [Электронный ресурс]. — https://habr.com/ru/post/47940/
  2. Диаграмма активностей (Activity diagram) | Flexberry PLATFORM Documentation [Электронный ресурс]. — https://flexberry.github.io/ru/fd_activity-diagram.html
  3. Основы UML. Диаграммы последовательностей | Блог программиста [Электронный ресурс]. — https://pro-prof.com/archives/2769
  4. UML-диаграммы классов: сущности, связи, интерфейсы | Программирование [Электронный ресурс]. — https://prog-cpp.ru/uml-classes/
  5. Диаграмма компонентов (Component diagram) | Самоучитель UML [Электронный ресурс]. — http://www.telenir.net/uchebniki/samouchitel_uml/p10.php
  6. Зачем нам UML? Или как сохранить нервы и время | Хабр [Электронный ресурс]. — https://habr.com/ru/post/458680/
Основные термины (генерируются автоматически): диаграмма, диаграмма компонентов, диаграмма активностей, UML, класс, компонент, процесс, течение времени.


Задать вопрос