Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Сравнительный анализ программных продуктов, реализующих объектно-ориентированный подход).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 286

Скачиваний: 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

Ведение библиотеки типовых бизнес-моделей

-

+

+

+

+

Организация групповой работа над проектом

-

+

+

+

+

Генерация заготовок программного кода

+

-

+

+

+

Динамическое моделирование событий в системе

-

+

+

+

+

Контроль ошибок в ходе разработки

-

+

+

+

+

Динамическая коррекция одной диаграммы из другой

-

+

+

+

+

Обратное проектирование

-

+

+

+

+

Интеграция с другими приложениями

+

+

+

+

+

Высокая производительность

+

+

-

+

+

Репозиторий

-

+

+

+

+

Возможность экспорта

-

+

+

-

+

Взаимодействие в реальном времени

-

+

+

+

-

Разработка веб-приложений

-

+

-

+

+

Простота использования

+

+

+/-

+/-

+

Стоимость

бесплатно

платно

платно

платно

платно