Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Сравнительный анализ программных продуктов, реализующих объектно-ориентированный подход).pdf
Добавлен: 31.03.2023
Просмотров: 284
Скачиваний: 2
- интеграция с другими приложениями MS Office[38];
- возможность создавать схемы компонентов UML, отображающие компоненты, порты, интерфейсы и связи между ними;
- возможность создавать схемы связей UML в свободной форме для демонстрации взаимодействия между жизненными циклами, которые используют последовательные сообщения;
- возможность создавать схемы развертывания UML, отображающие архитектуру развертывания артефактов программного обеспечения на узлах;
- расширенная поддержка AutoCAD[39].
Внешне Visio похожа на другие программы семейства Microsoft Office (рисунок 6).
Рисунок 6. Интерфейс Microsoft Visio[40]
Rational Rhapsody - это среда визуальной разработки для проектировщиков систем и разработчиков программного обеспечения, позволяющая создавать динамические и встроенные системы и программное обеспечение. Обеспечивается сотрудничество коллективов для анализа требований, снижения уровня сложности за счет применения промышленных языков, проверки функциональности на ранних этапах жизненного цикла разработки, проверки эскизов и автоматизации доставки инновационных, высококачественных продуктов.
Rational Rhapsody предлагает следующие функции:
- совместное использование, связывание и проверка информации об эскизах с помощью интеграции IBM Jazz и IBM Rational Rhapsody Design Manager;
- содержит профайлы, параметры, стереотипы, теги и API, предназначенные для расширения и настройки продукта;
- статическая проверка согласованности эскиза
- набор инструментов проектирования систем для автоматизации общих функций проектирования систем, включая IBM Rational Harmony for Systems Engineers;
- импорт XMI (обмен метаданными XML) и IBM Rational Rose для интеграции с существующими системами и повторного использования;
- интерфейс управления конфигурацией, включая расширенный графический инструмент сравнения и объединения, с возможностью интеграции IBM Rational Synergy, IBM Rational Team Concert и IBM Rational ClearCase;
- создание документации с помощью спектра инструментов - от простого генератора отчетов RTF до полностью настраиваемых инструментов создания отчетов;
- поддержка разработки стандартов безопасности: ISO 26262, IEC 61508, IEC 62304, EN 50128, DO-178B и DO-178C[41]
Рисунок 7. Интерфейс Rational Rhapsody[42]
Flexberry Designer - это платформа для проектирования, разработки и поддержки сложных информационных систем. Платформа включает в себя UML-редактор и визуальный конструктор форм приложений, фреймворк для создания мобильных и Web-приложений, подсистему для хранения, создания, редактирования, анализа и отображения географической информации, сервисную шину и другие компоненты, позволяющие ИТ-подразделениям предприятий и компаниям-разработчикам оптимизировать процесс проектирования, разработки и поддержки информационных систем[43] .
Использование Flexberry Designer дает разработчикам следующие преимущества:
- быстрое создание прототипов программного решения;
- повышение эффективности взаимодействия с заказчиками за счёт применения визуальных моделей систем и процессов;
- снижение трудоёмкости процесса разработки и сопровождения информационных систем;
- возможность применения готовых программных компонент и готовой архитектуры;
- быстрое разворачивание в гетерогенных сетях включая облачные платформы;
В основе технологии создания систем на платформе Flexberry лежит архитектура, управляемая моделью (Model Driven Architecture). В рамках этой архитектуры сначала с помощью редактора в формате UML или визуального конструктора форм создаётся модель предметной области проектируемого приложения. По модели создаётся прототип работающего приложения методом кодогенерации. Данный прототип дорабатывается программистами. Затем эта модель уточняется в ходе развития и поддержки проекта, эти изменения прозрачным образом автоматически переносятся в реализованное приложение[44].
Координация и разработка платформы распределённой группы разработчиков производится в git-репозитории. Платформа открыта для подключения новых разработчиков к процессу её разработки.
Разработанный продукт разворачивается в виде стека docker-сервисов, включающий в себя следующие сервисы:
- EmberJS - обеспечивает возможность быстро и качественно создавать универсальный мобильный и WEB-интерфейс;
- REST-интерфейс OData - позволяет построить микросервисную архитектуру вокруг единой точки предоставления данных;
- база данных Postgres является «стандартом de-facto» при создании систем на основе открытого программного обеспечения;
- Docker-технология позволяет интегрировать данные сервисы в конечное кластерное решение.
Формы диаграмм Flexberry Designer представлены на рисунке 8.
Рисунок 8. Диаграммы в Flexberry Designer [45]
Репозиторий UML-моделей позволяет удобно хранить диаграммы в структурированном виде. Для работы с репозиторием применяется браузер репозиториев Flexberry Designer. Репозиторий имеет структуру, не ограничивающую пользователя какой-либо методологией. Для диаграммы как репозиторного объекта реализованы дополнительные возможности для манипуляции.
Реализованы широкие возможности моделирования соответствующими диаграммными методами в рамках редактора UML-диаграмм.
Имеется возможность расширения функционала посредством подключения дополнительных модулей. Модули предоставляют возможности расширения пользовательского интерфейса, структуры данных, возможностей по генерации исходного кода с моделей.
Проектирование с использованием инструментария Flexberry Designer подразумевает принцип Model-First, когда все изменения в модели производятся в Flexberry Designer, а изменения в коде выполняются во время генерации. Также реализован механизм, позволяющий программистам писать код, который при перегенерации не будет потерян, так называемые, «скобки программиста». Использование инструментария проектирования позволяет с лёгкостью вносить изменения в модель любому участнику команды разработки, не опасаясь что-нибудь сломать[46].
MagicDraw - это инструмент бизнес-процессов, архитектуры, программного обеспечения и системного моделирования с поддержкой совместной работы. Этот динамичный и универсальный инструмент разработки облегчает анализ и проектирование объектно-ориентированных систем и баз данных. Он обеспечивает лучший в отрасли механизм разработки кода (с полной поддержкой «туда-обратно» для языков программирования Java, C ++, C #, CL (MSIL) и CORBA IDL), а также моделирование схемы базы данных, создание DDL и средства обратной инженерии[47].
MagicDraw поддерживает метамодель UML 2, новейший стандарт XMI для хранения данных и самые популярные языки программирования для реализации. В отличие от других сред моделирования UML и архитектуры, MagicDraw упрощает развертывание среды жизненного цикла разработки программного обеспечения, Open API упрощают интеграцию с приложениями, которые работают вместе, интегрирует со многими ведущими продуктами: IDE, требованиями, тестированием, оценкой, MDD, базой данных и др.[48]
Интерфейс MagicDraw представлен на рисунке 7.
Рисунок 9. Интерфейс MagicDraw[49]
Таким образом, рассмотренные средства реализации объектно-ориентированного подхода обладают достаточным функционалом для проектирования информационных систем, при этом у каждого есть свои отличительные особенности.
2.2. Сравнительный анализ программных продуктов, реализующих объектно-ориентированный подход
Выбор программных продуктов для проектирования информационной системы может быть начат только тогда, когда полностью определены и формализованы ее потенциальным пользователем конкретные количественные и качественные требования в заданной предметной области.
В целях сравнения рассмотренных выше средств реализации объектно-ориентированного подхода для проектирования информационной системы каждое из них было проанализировано по следующим группам критериев:
- функциональные характеристики (среда функционирования (проектная среда, технологическая среда, программное обеспечение и технические средства); функции, ориентированные на фазы жизненного цикла (моделирование, реализация, тестирование) и общие функции (документирование, управление конфигурацией, управление проектом);
- надежность;
- эффективность;
- сопровождаемость;
- переносимость;
- возможность экспорта - должны быть доступны разные форматы экспорта – хотя бы html и doc;
- удобство пользования – средство проектирования должно быть удобным, интуитивно понятным, с простым интерфейсом для часто используемых функций.
Посредством таблицы в соответствии с приведенной структурой критериев произведен сравнительный анализ рассмотренных выше средств реализации объектно-ориентированного подхода.
Таблица
Сравнительный анализ средств реализации объектно-ориентированного подхода
|
Критерии сравнения |
StarUML |
Microsoft Visio |
Rational Rhapsody |
Flexberry Designer |
MagicDraw |
|
1 |
2 |
3 |
4 |
5 |
6 |
|
Среда для создания диаграмм различных типов |
+ |
+ |
+ |
+ |
+ |
|
Создание пользовательского интерфейса |
+ |
+ |
+ |
+ |
+ |
|
Генерация документации для печати |
+ |
+ |
+ |
+ |
+ |
|
Создание концептуальных и физических моделей структуры базы данных |
- |
+ |
+ |
- |
+ |
|
Независимость от платформы |
- |
+ |
+ |
- |
+ |
Продолжение таблицы
|
1 |
2 |
3 |
4 |
5 |
6 |
|
Ведение библиотеки типовых бизнес-моделей |
- |
+ |
+ |
+ |
+ |
|
Организация групповой работа над проектом |
- |
+ |
+ |
+ |
+ |
|
Генерация заготовок программного кода |
+ |
- |
+ |
+ |
+ |
|
Динамическое моделирование событий в системе |
- |
+ |
+ |
+ |
+ |
|
Контроль ошибок в ходе разработки |
- |
+ |
+ |
+ |
+ |
|
Динамическая коррекция одной диаграммы из другой |
- |
+ |
+ |
+ |
+ |
|
Обратное проектирование |
- |
+ |
+ |
+ |
+ |
|
Интеграция с другими приложениями |
+ |
+ |
+ |
+ |
+ |
|
Высокая производительность |
+ |
+ |
- |
+ |
+ |
|
Репозиторий |
- |
+ |
+ |
+ |
+ |
|
Возможность экспорта |
- |
+ |
+ |
- |
+ |
|
Взаимодействие в реальном времени |
- |
+ |
+ |
+ |
- |
|
Разработка веб-приложений |
- |
+ |
- |
+ |
+ |
|
Простота использования |
+ |
+ |
+/- |
+/- |
+ |
|
Стоимость |
бесплатно |
платно |
платно |
платно |
платно |