Построение моделей и приложений масштаба предприятия с использованием языка UML в стандарте JEE
JV-6
Средство разработки Oracle JDeveloper, сервер приложений Oracle iAS 11g
Результат обучения
По окончанию курса слушатели смогут эффективно использовать UML (Unified Modeling Language) при разработке информационной системы в технологии JEE. В процессе обучения слушатели научаться применять UML к фундаментальным концепциям объектно-ориентированного анализа и проектирования. В курсе рассматриваются вопросы построения моделей развертывания фармов и кластеров с целью обеспечения надежности и отказоустойчивости систем, механизмы коллективной разработки программного обеспечения. На основе контейнера JEE Weblogic строятся модели WEB приложения. Моделируются приложения для CTM контейнера в технологии EJB, рассматриваются модели взаимодействия между различными контейнерами сервера приложений. По окончанию курса, слушатели получают в электронном виде все приложения и модели, которые были созданы на протяжении курса, а также дополнительную справочную и другую информацию по темам.
Аудитория
Разработчики Oracle, системные администраторы, аналитики, которым необходимо получить понимание и навыки объектно-ориентированного анализа и проектирования многозвенных приложений в стандарте JEE с использованием UML в среде разработки Oracle JDeveloper.
Предварительный уровень подготовки
Желание узнать новые направления в современных технологиях корпорации Oracle
Программа курса
1. Зачем мы создаем модели приложений. Основы языка UML
- Простое приложение “Hello world”. Четыре строительных блока UML, ключевые абстракции, механизмы и компоненты.
- Сущности, классы, интерфейсы, прецеденты, активные классы, компоненты, узлы – общее представление.
- Четыре типа отношений UML – связующие элементы между строительными блоками UML.
- Структура пакетов языка UML. Метамодели. Правила и общие механизмы.
2. Основы жизненного цикла разработки JEE приложения
- Каскадный, итерационный циклы, краткая история.
- RUP процесс и особенности распределенных систем – дисциплины развития, тестирования и развертывания JEE приложений в контейнерах серверов приложений. Риски, связанные с разработкой JEE приложений.
3. Oracle JDeveloper и UML
- Описание прецедентов и формирование UseCase диаграмм с помощью Jdeveloper. Предусловия, постусловия. Расширения, обобщения, включения. Исполнители. Комментарии и словарь терминов.
- Диаграммы последовательностей. Жизненный цикл JEE приложений. Межсистемные взаимодействия в распределенных JEE приложениях.
- Диаграммы Моделей Данных. Реляционные отношения в моделях и их описание в UML. Пример разработки конкретной модели данных с загрузкой ее в базу данных. Редактирование модели и синхронизация с базой данных. Описание событий в Базе Данных с помощью UML.
- Концептуальная модель классов. Система обозначений для ассоциаций языка UML. Стандартные ассоциации и роли, обобщения, ограничения в предметной области. • Операции и атрибуты в контексте класса. Агрегация класса и композиция.
- Интерфейсы и абстрактные классы в нотации UML. Моделирование взаимодействия классов в контексте JEE сервера – общее понятие о JNDI контексте. Моделирование конкретных классов с помощью диаграмм Jdeveloper.
4. Модель предметной области. Общая архитектура Oracle iAS 11g.
- Формы, кластеры, контейнер JEE. Взаимодействия между различными сервисами внутри контейнера.
- Концептуальная модель EJB и WEB приложений для контейнера JEE.
5. Моделирование разработки Web приложений.
- Жизненный цикл сервлета. Обязательные методы. Моделирование жизненного цикла обработки запросов и генерирования ответов. Изучение моделей передачи и включения сервлета. Пять контекстов сервлета.
- Компоненты JSP. Архитектура MVC1 и MVC2. Моделирование поведения JSP страниц на стороне сервера и стороне клиента. События в JSP и их отображение в UML.
- Технология Java Server Faces (JSF) и ADF. Модели событий, проверок, акций. Взаимодействие между компонентами в JSF технологии.
- Oracle Application Development Framework (ADF) и моделирование Web приложений. Структура ADF.
- Формирование BC4J диаграмм на основе структуры, размещенной в базе данных. Моделирование поведения BC4J компонент в контексте сервера и Web приложений. Ввод дополнительных правил проверки и ограничений в объектную модель данных с помощью расширений UML.
- Взаимодействие JSP и ВС4J моделей через диаграммы развертывания.
6. Моделирование разработки приложений масштаба предприятия (EJB).
- Краткая история EJB. Версии. Почему компонентная модель. Три вида компонент. Представление компонентов EJB в UML – серверное и клиентское отображение.
- Компоненты управляемые сообщениями (MDB). Моделирование сообщений и роль JMS – два вида сообщений и два вида адресатов.
- Жизненный цикл компонента, управляемого сообщением. Построение диаграммы последовательностей для компонента управляемого сообщением. Управление транзакциями в MDB компонентах.. Отношения MDB компонент и других классов в составе EJB приложения. Взаимодействие со службой JNDI.
- Сеансовые компоненты – типы и диалоговое состояние. Типы интерфейсов сессионных компонент и классы реализации. Локальный и удаленный клиент. Необходимость отказа от удаленных вызовов. Модель диалога компоненты без состояния. Транзакции и демаркация транзакций. Моделирование поведения операций сессионных компонент с различными атрибутами транзакций. Моделирование жизненного цикла компоненты с состоянием. Взаимодействие между различными компонентами Enterprise приложения, и другими классами через JNDI интерфейс. Сеансовые компоненты и Web приложения – моделирование развертывания. Отношения между сеансовыми компонентами с различным типом состояния.
- Компоненты сущности. Деловые объекты. Отображение сущностей в UML. Клиентское и серверное представление сущностных компонент. Моделирование постоянства управляемого контейнером и компонентом, абстракция. Влияние транзакций на операции сущностных компонент. Важность первичного ключа. Жизненный цикл компонента CMP и BMP. Сущности и Web приложения – моделирование взаимодействия через локальные интерфейсы. Создание модели конкретного приложения с взаимодействием EJB компонент с JSF страницами. Модель фасадных компонент для сущностей, стандартные операции фасадов.
- Моделирование Web сервисов. Архитектура Web сервисов. Моделирование интерфейсов и классов – реализаторов для Web сервисов. Взаимодействие с другими классами и EJB компонентами. Сервисы с состоянием и без состояния. Диаграммы развертывания Web сервисов и других приложений.
- Комплексный Пример моделирования приложения с использованием описанных технологий в среде Jdeveloper.