Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
WSO2_diplom.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
1.74 Mб
Скачать

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

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

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

задачи:

  • Определиться с используемыми технологиями;

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

  • Разработать базу данных, удовлетворяющую поставленным целям;

  • Продумать общую архитектуру модуля, который будет удовлетворять поставленным требованиям.

Состав технических средств определен следующим образом:

  • Сервер базы данных Microsoft SQL Server;

  • Среда разработки – Java (версия 1.6).

2. Анализ задачи

2.1 Анализ требований заказчика

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

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

Общая схема приложения представлена ниже.

Рис. 1 Обзор архитектуры системы

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

  • Head Unit and Browser – это устройство, которое встроено в автомобиль, внутри него функционирует собственная операционная система, управляющая этим устройством. На базе этой операционной системы есть браузер, позволяющий взаимодействовать с внешними ресурсами. Этот модуль взаимодействует с модулем Vehicle Backend. Взаимодействие осуществляется через мобильное соединение через VPN канал.

  • Vehicle Backend – этот модуль предназначен для связи различных внешних ресурсов с Head Unit and Browser модулем.

  • Content and Services – это внешние сервисы и ресурсы из которых система получает информацию.

Описав некоторую структуру приложения, было выдвинуто требование, что приложение будет построено с использованием языка Java как веб приложение с использованием различных технологий (JSP, Spring).

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

  • Удобство и простота в эксплуатации на каждом уровне;

  • Высокая доступность и надежность всех компонентов;

  • Надежность: осуществление высокой степени конфиденциальности передаваемой информации;

  • Масштабируемость: модуль должен быть масштабируемым для поддержки меняющихся требований;

  • Гибкость: модуль должен быть разработан с возможностью его изменения в плане расширения и улучшения;

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

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

Основные принципы, применяемые в рамках системы для достижения целей:

  • Модульный подход к системе;

  • Хорошо продуманный дизайн архитектуры для обеспечения четкого разделения подсистем приложения;

  • Строгое использование слоев в системе, способствующее гибкости в отношении повторного использования и расширяемости;

  • Ориентация на сервисы;

  • Использование стандартизированных интерфейсов на каждом уровне;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]