Продуктивная разработка java ee-приложений с применением...

Post on 03-Dec-2014

3.499 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

<Insert Picture Here>

Продуктивная разработка Java EE-приложений с применением

Oracle ADF.

Дмитрий Нефедкин

Oracle ISV Migration Center FMW Consultant

Dmitry.Nefedkin@oracle.com

“Oracle ADF is an end-to-end Java EE framework

that simplifies application development by

providing out of the box infrastructure services and

a visual and declarative development experience.”

ADF A Development Framework of Oracle WebLogic Server

Технология Application Development Framework Продуктивная, функциональная, расширяемая, проверенная

Увеличение продуктивности разработчиков

Единый инструментарий для всех слоев приложения

Поддержка БД, EJB, Веб-сервисов и т.д.

Веб-приложения, мобильные клиенты, Excel, …

Базируется на стандартах, интегрирована с Ant, Spring, …

Основа Oracle Fusion Applications

Предоставляет полный технологический стек

Поддержка разнообразных back-end технологий

Поддержка разнообразных визуальных клиентов

Легко интегрируется с java инструментами и фреймворками

Зрелая технология, нацеленная на будущее

Уменьшает время для вывода продукта на рынок

Высокая

продуктивность

разработчика

Полный

технологический

стек

Поддержка

разнообразных

архитектур

Простота

интеграции и

расширения

Технология для

продуктивной разработки

Уменьшение Time To Market путем увеличения продуктивности разработчиков

Требования к

экранной форме:

• CRUD-операции

• Поддержка Master-detail

• Функции поиска

• Веб-интерфейс с

поддержкой Ajax

• Валидация данных

• Повторное

использование бизнес-

логики

Сколько времени вам потребуется для реализации?

ADF – Продуктивность «на стеройдах»

• Настраиваемый поиск

• Единая валидационная логика

• Поддержка AJAX

• Использование в порталах в

качестве портлета

• Повторное использование бизнес-

логики в виде сервисов (СОА)

• Пользовательские кастомизации

и ВЫ тоже сможете

Мы можем разработать это за 10 минут - http://bit.ly/ADFIn10Minutes

и еще за 5 минут добавить это

Источники продуктивности ADF Благодаря чему мы достигаем это?

• Единый инстументарий на основе JDeveloper

• Декларативная разработка, основанная на метаданных

• Визуальные средства разработки

• Полный стек технологий: от БД до пользовательского

интерфейса в едином инструменте

• Богатый набор основанных на AJAX JSF-компонентов

• Концентрация на бизнес-задачах, а не на технологии

НУ И ЧТО?

Гм, пройдемте … F

Заказчики сталкиваются с

возрастающими бизнес-вызовами

• Повышение продуктивности сотрудников;

• Ускорение вывода на рынок новых продуктов/услуг;

• Гибкость;

• Простота внесения изменений;

• Высокая доступность;

• Производительность;

• Безопасность;

Что ожидают заказчики от своих ИТ-активов:

Пример реального приложения

Ок, а как насчет примера

реального приложения?

Пилотое приложение «Воронка продаж»

Разработать полнофункциональное приложение со следующими возможностями :

Создание/редактирование сотрудников (продавцов)

Создание/редактирование потенциальных клиентов

Возможности поиска по сотрудникам/потенциальным клиентам

Создание/редактирование потенциальных сделок

Возможность загрузить материалы, используемые при визите к клиенту

Отображение на карте потенциальных клиентов и сделок

Просмотр организационной структуры и показателей деятельности

подчиненных:

Выполнение годового плана продаж

«Воронка продаж» по сотруднику с сегментацией по клиентам

Закрытые и потенциальные сделки в разрезе сотрудников

«Приборная панель» для отображения по продавцу:

Выполнение плана продаж на текущий квартал

Прогноз на следующий квартал

Аналитика Размер сделки/Ожидаемая дата закрытия/Вероятность

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

Требования к пилотному приложению

• Сколько времени вашей команде разработчиков

потребуется на реализацию подобного пилота?

10 дней ?

20 дней ?

1 месяц?

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

• Реализация валидаций в соответствии с бизнес-правилами

• Реализация концепции «приборной панели» (Dashboard)

• Простота модификации приложения

• Современный Web 2.0 пользовательский интерфейс

• Возможность использования в рамках портала в качестве портлета

Пилотное приложение «Воронка продаж»

Критерии

Поиск / редактирование сотрудника

Создание/редактирование потенциальной

сделки

Потенциальные сделки на карте

Оргструктура команды продавцов

Анализ выполнения плана продаж

«Приборная панель» продавца

«Приборная панель» продавца

No.Months

% Probability

Демонстрация

4 Дня!

Пилотное приложение «Воронка продаж»

Как насчет мобильных приложений?

ADF Mobile Browser

Trinidad Components

Style

ADF

ОПТИМИЗИРОВАННЫЕ КОМПОНЕНТЫ ДЛЯ

МОБИЛЬНЫХ УСТРОЙСТВ

ЛЕГКО ДОБАВИТЬ К СУЩЕСТВУЮЩЕМУ

ADF-ПРИЛОЖЕНИЮ

ВЫСОКАЯ ПРОДУКТИВНОСТЬ

ADF

ДОСТУПЕН УЖЕ СЕЙЧАС

HTML5 ДЛЯ ADVANCED-КОМПОНЕНТОВ

Интерфейс для мобильных клиентов

ADF

Модуль-

ность F

Расширя-

емость F

Продуктив-

ность Средства

командного

взаимо-

действия

F

Эффективное

тестирование

и отладка

F

Простая

интеграция

со сторонним

ПО

F

Преимущества Oracle ADF Слагаемые успеха

Быстрая

разработка

F

Снижение Рисков F

Безопасность

F

Снижение TCO F

ADF

Расширя-

емость F

Модуль-

ность F

Безопасность

F

Снижение TCO F

Продуктив-

ность Средства

командного

взаимо-

действия

F

Простая

интеграция

со сторонним

ПО

F

Снижение

рисков F

Преимущества Oracle ADF Продуктивность – тестирование и отладка

Быстрая

разработка

F

Эффективное

тестирование

и отладка

F

Эффективное тестирование и отладка Интерактивная разработка в JDeveloper

• В Oracle JDeveloper

• Модель данных, созданная с помощью ADF BC, может быть

протестирована без полного развертывания приложения

• Все уровни приложения могут быть протестированы во

встроенном экземпляре WebLogic Server

• Код может быть изменен в процессе сессии отладки без

перезапуска сервера короткие циклы внесения

исправлений

• В JDeveloper 11.1.2 – использование Weblogic-

функциональности fast swap для внесения изменений без

полного redeploy.

Эффективное тестирование и отладка Автотесты и непрерывная интеграция

• Автоматизация модульного, регрессионного и

интеграционного тестирования

• Автоматическое создание ant-скриптов для проекта

• Автоматическое развертывание с применением Ant,

Maven или WLST

• Интеграция с Apache Maven* (JDeveloper 11.1.2)

• Непрерывная интеграция с Hudson/Jenkins

Hudson/Jenkins CI

ADF

Расширя-

емость F

Модуль-

ность F

Безопасность

F

Снижение TCO F

Продуктив-

ность

Эффективное

тестирование

и отладка

F

Простая

интеграция

со сторонним

ПО

F

Снижение

Рисков F

Преимущества Oracle ADF Продуктивность – командные взаимодействия

Быстрая

разработка

F Средства

командного

взаимо-

действия

F

Oracle Team Productivity Center Интегрирован в JDeveloper, бесплатен

• Гибкая настройка состава проектной команды

• Управление задачами

• Общение между участниками проекта

напрямую из JDeveloper

• Версионность артефактов проекта

• Интеграция с разнообразными ALM-

продуктами

• Готовые коннекторы к JIRA, Bugzilla, Microsoft

Project Server, Rally Software

• Документированный API для разработки

собственных коннекторов

Бесплатный сервер, клиент, коннекторы

ADF

Расширя-

емость F

Модуль-

ность F

Безопасность

F

Снижение

TCO F

Продуктив-

ность

Эффективное

тестирование

и отладка

F

Средства

командного

взаимо-

действия

F

Простая

интеграция

со сторонним

ПО

F

Снижение

Рисков F

Преимущества Oracle ADF Продуктивность – быстрая разработка

Быстрая

разработка

F

Продуктивные визуальные редакторы Для создания разнообразных компонентов

Графические редакторы

• Структура проекта

• Бизнес-компоненты

• Task Flows

• JSF-страницы

• и многое другое

Все в единой IDE

ADF

Расширя-

емость F

Модуль-

ность F

Снижение

TCO F

Продуктив-

ность

Эффективное

тестирование

и отладка

F

Средства

командного

взаимо-

действия

F

Простая

интеграция

со сторонним

ПО

F

Снижение

Рисков F

Преимущества Oracle ADF Расширенные функции безопасности

Быстрая

разработка

F

Безопасность

F

Подсистема ADF Security Декларативная, гибкая, основана на

стандартах

• Аутентификация - Java EE Web Container Security

• Авторизация на основе JAAS

• Контроль безопасности на уровне страниц, page

flows, бизнес-объектов, методов, атрибутов

• Декларативное описание ролей, доступов

• Проверка доступов в Expression Language или в Java

• Создание пользователей и групп для тестирования

• Единообразная настройка вне зависимости от

используемых источников идентификационных

данных (LDAP-каталоги, базы данных и т.д.)

ADF

Расширя-

емость F

Безопасность

F

Снижение TCO F

Продуктив-

ность

Эффективное

тестирование

и отладка

F

Средства

командного

взаимо-

действия

F

Простая

интеграция

со сторонним

ПО

F

Снижение

Рисков F

Преимущества Oracle ADF Модульность

Быстрая

разработка

F

Модуль-

ность F

Гибкая модульная архитектура

Интеграция со сторонним ПО ADF Faces – библиотека JSF-компонентов

• Основана на спецификации JSF

• Функционально разнообразные

компоненты с поддержкой AJAX

• Возможность использования за

пределами ADF: • JBoss Seam

• Spring

• etc.

• Визуальный редактор в

JDeveloper и Eclipse

Интеграция ADF с продуктами Oracle Используется другими компонентами

Oracle Fusion Middleware

• Вызов ADF Business

Components как Service Data

Objects из Oracle SOA Suite

• ADF Faces, Controller, Model

используются при разработке

форм Human Workflow

• ADF-приложения могут быть

интегрированы в портал

Oracle WebCenter

Достижение максимальной продуктивности Использование ADF на всех уровнях приложения

• Вся мощь ADF раскрывается

при сквозном использовании

на всех уровнях приложения

• Визуальное редактирование в

JDeveloper

• Единые валидационные правила

• Автоматическая поддержка master/detail

• Повторно используемые Task Flows

• Простота локализации приложений

• Кастомизация под специфичные требования

заказчика без внесения изменений в основной код

Core usage in Fusion Applications

При этом архитектура остается расширяемой и интегрируемой с другими компонентами и инструментами!

ADF – полный и унифицированный стек Снижение сложности разработки

Уровень ADF (Fusion App) Open Source-примеры

Представление ADF Faces (AJAX, Portlets, Rich

controls, etc.)

JSF library (IceFaces,

PrimeFaces, …)

JSP with tag

libraries

Контроллер ADF Controller JSF Controller Spring MVC

Data Binding ADF Model Seam JSP, Form

Beans

Бизнес-логика ADF BC EJB Spring beans

Доступ к данным ADF BC JPA Hibernate

Унифицированный и

преинтегрированный,

основанный на метаданных

фреймфорк

Несмотря на высокое качество

индивидуальных компонентов, отсутствие

единого инструментария и

преинтегрированности снижает

продуктивность разработчиков

ADF

Модуль-

ность F

Безопасность

F

Снижение TCO F

Продуктив-

ность

Эффективное

тестирование

и отладка

F

Средства

командного

взаимо-

действия

F

Простая

интеграция

со сторонним

ПО

F

Снижение

Рисков F

Преимущества Oracle ADF Расширяемость и интегрируемость

Быстрая

разработка

F

Расширя-

емость F

ADF – Функционально полный Но легко расширяемый и интегрируемый

• Все артефакты исходного кода - Java и XML

• Никаких непрозрачных бинарных артефактов!

• Простота расширения и кастомизации

• Java и XML

• Модульность

• поддержка разнообразных технологий для реализации бизнес-

логики и презентационного уровня

• Простота интеграции со сторонними инстументами,

библиотеками, фреймворками

• Ant, Maven, Hibernate, веб-сервисы, REST и т.д…

ADF

Модуль-

ность F

Расширя-

емость F

Продуктив-

ность Средства

командного

взаимо-

действия

F

Эффективное

тестирование

и отладка

F

Преимущества Oracle ADF Интеграция со сторонним ПО

Быстрая

разработка

F

Снижение

Рисков F

Безопасность

F

Снижение TCO F

Простая

интеграция

со сторонним

ПО

F

Интеграция ADF со сторонним ПО Множество способов реализации бизнес-

сервисов

• ADF Model - слой метаданных,

позволяющий “привязать”

разнообразные технологии

пользовательского интерфейса к

различным бизнес-сервисам

Live XML data sources

Object Relational Mapping

RSS

• Enterprise Java Beans

• Web Services

• Business Intelligence

• Business Activity Monitoring

• Plain Java Beans, Spring Beans

Интеграция с бизнес-процессами

Интеграция в портальное решение

ADF

Модуль-

ность F

Расширя-

емость F

Продуктив-

ность Средства

командного

взаимо-

действия

F

Эффективное

тестирование

и отладка

F

Простая

интеграция

со сторонним

ПО

F

Преимущества Oracle ADF Снижение общей стоимости владения

Быстрая

разработка

F

Снижение

Рисков F

Безопасность

F

Снижение TCO F

Снижение общей стоимости владения

Снижение TCO

Продуктив-ность

Управля-емость

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

Интегри-руемость

• Высокая продуктивность

• Модульный дизайн

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

• С различными

фреймворками

• В веб, портальных и

мобильных приложениях

• В бизнес-процессах

ADF

Модуль-

ность F

Расширя-

емость F

Продуктив-

ность Средства

командного

взаимо-

действия

F

Эффективное

тестирование

и отладка

F

Простая

интеграция

со сторонним

ПО

F

Быстрая

разработка

F

Безопасность

F

Снижение TCO F

Снижение

Рисков F

Преимущества Oracle ADF Снижение рисков

Снижение рисков Безопасная архитектура с прицелом на

будущее

Снижение

рисков

Функции безопас-

ности

Используется внутри

Oracle

Основа Fusion

Applications

Адаптриру-емость к

использу-емым тех-нологиям

Понятный Roadmap

• Расширенные функции

безопасности

• Средство разработки

внутри Oracle

• Интеграция с различными

технологиями

• Понятные планы

развития продукта

Узнайте больше на Oracle Technology Network

http://bit.ly/OracleADF

Вопросы

©2010 Oracle Corporation

Дмитрий Нефедкин

Технический консультант по продуктам Oracle Fusion Middleware

Oracle ISV Migration Center

Dmitry.Nefedkin@oracle.com

http://blogs.oracle.com/imc - блог команды Oracle ISV Migration Center

http://middletier.blogspot.com – мой блог о Fusion Middleware по-русски

top related