When Content Meets Applications

29
Craig Randall | Principal Scientist, Adobe | @craigsmusings When Content Meets Applications (revised)

description

Technical track session presented on day 2 of Day Ignite Berlin 2010

Transcript of When Content Meets Applications

Page 1: When Content Meets Applications

Craig Randall | Principal Scientist, Adobe | @craigsmusings

When Content Meets Applications (revised)

Page 2: When Content Meets Applications

Adobe CEM

revolutionizes

how enterprises

engage with

customers

and how customer

experience is

delivered

Page 3: When Content Meets Applications

3

Transactional Systems (ERP, CRM, ECM, PLM, Banking Systems)

Customers

Adobe + Day =

strong assets integrated to optimize customer experience

Global Web Social

Collaboration

Interactive

Applications

Interactive

Documents

Content Process Analytics

Customer Experience Management

Adobe Day Adobe Customer Experience Management

Page 4: When Content Meets Applications

4

Current customer experience online…

It’s real jungle

Page 5: When Content Meets Applications

Customer interaction with an enterprise

5

Websites

Customer

Call Center

Apps

Point of Sale

Loyalty Site

Web

Applications

Social

Media

Mobile Apps

Customer

Service

Application Microsites

Statements

Email

Page 6: When Content Meets Applications

Challenges

Non-intuitive experience

Inconsistency across channels

Not contextual

Impact on organization

Low conversion rates

Lost revenues

High cost-to-service

Brand deterioration

Customer /

Citizen /

Partner

Page 7: When Content Meets Applications

What the customer wants

Personalized, responsive experiences

Right experience for right task for the right

device

Multi-channel communication

Customer /

Citizen /

Partner

Page 8: When Content Meets Applications

Tablet

What the customer wants

PDF forms Guided navigation

Rich, engaging

experience

Personalized, responsive experiences

Right experience for right task for the right

device

Multi-channel context aware

Print

Customer /

Citizen /

Partner

Mobile

Tablet

Desktop / offline

Page 9: When Content Meets Applications

What the customer wants

Personalized, responsive experiences

Right experience for right task for the right

device

Multi-channel context aware

Online Call Center Branch Agent /

Field

Mail &

Fax Email Mobile

Customer /

Citizen /

Partner

Context flow across apps and channels

Page 10: When Content Meets Applications

Challenges

Content, application and context problem

Multiple stacks and project silos

High cycle time for change

Multiple systems to scale, manage and

administer – high TCO

IT Team

Websites Applications GAP

Portals

Mobile apps

RIA

Web apps

Commerce

Business apps

Websites

Microsites

Mobile Sites

WCM

DAM

Campaigns

Context

flow Content

integration

Analytics Application

integration

Page 11: When Content Meets Applications

Adobe’s Customer Experience Management (CEM) vision

PUBLIC CLOUD

Services

USER EXPERIENCE

Multiple

Channels

Multiple

Platforms

TOOLS

Creative

Suite

Flash

Catalyst

Flash

Builder

LiveCycle

Workbench Foundation

CUSTOMER EXPERIENCE MANAGEMENT PLATFORM

EXISTING APPLICATIONS & SYSTEMS

Legacy

Systems

Enterprise

Information

Systems Databases Directories

Message

Queues

ECM

Repository

Modules

Dynamic

Content

Enterprise

RIA

Business

Process

Solution Accelerators

Online Mobile Branch Agent/

Field

Mail &

Fax Email

Call

Center Social

Analytics Document

Services

Page 12: When Content Meets Applications

Content + applications

PUBLIC CLOUD

Services

USER EXPERIENCE

Multiple

Channels

Multiple

Platforms

TOOLS

Creative

Suite

Flash

Catalyst

Flash

Builder

LiveCycle

Workbench Foundation

CUSTOMER EXPERIENCE MANAGEMENT PLATFORM

EXISTING APPLICATIONS & SYSTEMS

Legacy

Systems

Enterprise

Information

Systems Databases Directories

Message

Queues

ECM

Repository

Modules

Dynamic

Content

Enterprise

RIA

Business

Process

Solution Accelerators

Online Mobile Branch Agent/

Field

Mail &

Fax Email

Call

Center Social

Analytics Document

Services

Page 13: When Content Meets Applications

LiveCycle Rich Internet Application (RIA) Services

LiveCycle Collaboration Service

Build real-time, multi-user

collaboration into existing or new

rich Internet applications

LiveCycle Mosaic

Assemble intuitive, personalized

and highly productive applications

through a composite RIA

framework

LiveCycle Data Services

Improve the performance and

simplify the development and

integration of your RIA

application with backend

systems

13

Page 14: When Content Meets Applications

LiveCycle Mosaic

Composite RIA Framework for rapidly assembling intuitive, personalized and

activity-centric RIA applications that aggregate existing enterprise applications

Increased productivity

Intuitive and consistent

Personalized

Activity centric

Improved decision making

and response time

Context aware

Aggregation from multiple

sources

14

Page 15: When Content Meets Applications

LiveCycle Mosaic – developing composite RIAs

Composition approach to application

development

Client side communication between

application components

Comprehensive ActionScript and JavaScript

API – HTML and Flex integration

Central catalog for housing all reusable

application components

Out-of-the box skins, shells and layout

managers

Pluggable component model

Integrates with existing SSO, directory and

entitlement management solutions

15

Page 16: When Content Meets Applications

LiveCycle Mosaic – UI components

16

View organizer

Shell

View

Panel

Tile

16

Page 17: When Content Meets Applications

• Custom web apps

• RIA services

• Mosaic server

• Data Services

• Collab Service

• Content (CRX)

• Common libraries

• Caching

• Logging

• User management

integration (LiveCycle ES)

• Spring-based

• OSGi-ready

LiveCycle RIA anatomy – client stack

17

Gravity

Flash Player

SWF/Module Loading

Dependency Injection Messaging

RIA Core Services

Logging Authentication

Configuration

Context

Persistence

more …

LiveCycle

RIA

Server

RIA Component Libraries

Content Collab Mosaic

Data

Serv

ices

LiveCycle ―ES Next‖ Solution Application

(e.g. Field Force Automation)

Security Guides more…

More: http://craigrandall.net/archives/2010/10/realizing-great-customer-experiences-with-livecycle-es3/

Page 18: When Content Meets Applications

Experience-oriented architectural approach

Customer-driven and design-led

Maximize potential reuse

Interface-based component interactions

Bundles for logic, UI, etc.

18

Domain

Integration

Presentation

Infr

astr

uctu

re

Page 19: When Content Meets Applications

LiveCycle RIA component patterns

19

RIA Component

Domain & Service

Presentation

View

PresentationModel

Events

Data Binding

{View State}

{Operations}

{Events}

DomainModel

Foo getFoo()

setFoo(Foo f)

IService operation()

ServiceImpl operation()

IPresentationModel

Infrastructure UtilityClasses

Liv

eC

ycle

ES

3 R

IA S

erv

er

Client Server

IDomainModel Foo getFoo()

setFoo(Foo f)

Page 20: When Content Meets Applications

Custom view and presentation model

20

Infrastructure UtilityClasses

Domain &

Service

RIA Component Presentation

CustomPresentationModel

Events

Data Binding

{View State}

{Operations}

{Events}

CustomView

IPresentationModel

Page 21: When Content Meets Applications

Custom application façade

21

Domain & Service Presentation

View

PresentationModel

Events

Data Binding

{View State}

{Operations}

{Events}

DomainModel

Foo getFoo()

setFoo(Foo f)

IService

operation()

ServiceImpl

operation()

IPresentationModel

Infrastructure UtilityClasses

IDomainModel

IPresentationModel

Foo getFoo()

setFoo(Foo f)

RIA Component

Customization Façade

ServiceDelegateImpl

AppDomainModel

eRIADomainModel

serviceDelegate

Foo getFoo()

setFoo(Foo f)

Bar getBar()

setBar()

IServiceDelegate

operation()

backendService

operation()

Page 22: When Content Meets Applications

Content-centric RIA with CRX (future product vision)

Common underlying repository for both content and application data/metadata

Day CRX

LiveCycle’s emerging enterprise RIA platform

Mosaic catalog based on CRX

Contextually agile applications (tile compositions) alongside contextually agile content (WCM, etc.)

Consistent composition model

Ability to leverage a common Package Share model for content + applications

Common delivery platform for applications—both composite content apps (CCA) and rich Internet apps (RIA)

AIR, Flex, Mobile, HTML5

Integrated tooling

Simplify content-centric RIA building via Fiber modeling of CRX (LCDS leverage)

Highly extensible and agile (easy to add new fields, etc. vs. traditional RDBMS)

Single workflow model for updating site content, application content/criteria/configuration

22

Page 23: When Content Meets Applications

Become more familiar with LiveCycle, RIA Services, etc.

Adobe LiveCycle Enterprise Suite

http://www.adobe.com/products/livecycle/

Adobe Partner Portal

https://www.adobe.com/cfusion/partnerportal/index.cfm

Adobe LiveCycle Developer Center

http://www.adobe.com/devnet/livecycle/

Adobe Enterprise Café

http://www.adobe.com/devnet/enterprise/cafe.html

Soon to incorporate the Day community!

Craig’s blog

http://craigrandall.net/

23

Page 24: When Content Meets Applications
Page 25: When Content Meets Applications

Fully integrated design-development workflow

Creative Suite Tools

Illustrator

Photoshop

Design and Development

Tools Flash Professional Flash

Catalyst

Prototyping

Design / develop

workflow

Flash Builder

Eclipse IDE

Code profiling

Debugging

Workbench, RIA Plug-in Spring, WTP

Eclipse IDE

Processes,

forms & docs

Data modeling

InDesign

Page 26: When Content Meets Applications

LiveCycle Mosaic ES2 architecture

Developer Deployment

Tomcat

Mosaic Server

WebDAV / Spring Security

Catalog Composite RIA

Service

View

Management

Authentication /

Authorization

AIR Flash Player

Desktop Client

Runtime Perspective

Design Perspective*

Catalog Management

Perspective*

Browser Client

Runtime Perspective

REST (HTTP + HTTP/S)

Java EE App Server

Production Deployment

Repository User

Management

LiveCycle ES2 Foundation

* Preview

Page 27: When Content Meets Applications

LiveCycle Data Services 3 architecture

27

Edge Server

AM

F

RT

MP

Po

llin

g

Lo

ng

Po

llin

g

Str

eam

ing

NIO

Lo

ng

Po

ll

NIO

Str

eam

ing

NIO

Po

llin

g

HT

TP

Proxy Server

JM

S

Sp

rin

g

Hib

ern

ate

Secu

rity

SQ

L

Oth

ers

Ja

va

Service

Introspector

Flash Builder

PDF Generation

LiveCycle

Rights Management

Process Management

Reader Extensions

Production Print

BAM

Modeler

Plugin

Code

Generator

Network

Monitor

Data

Mgmt

Service

Remoting

Service

Message

Service

Model Driven Architecture

Page 28: When Content Meets Applications

LiveCycle Collaboration Service – SDK makeup

High-level

Components

Foundation

Classes

Pods

RTC UI Components

Shared Managers Shared Model

Session

(Connection, Authentication, Reconnect/Failover, RMI Routing)

Audio Pub / Sub Webcam Pub / Sub File Pub / Sub Shared Cursors

Users AV Streams

Files Room

Pub / Sub Messaging + Permissions

Shared Collection Baton

Shared Property UserQueue

Roster WhiteBoard Chat FileShare Note WebCam

Page 29: When Content Meets Applications

One Web, Any Device* 19 of top 20 OEMS are committed to

delivering Flash

Power of the Adobe Flash Platform

One UX, Any Device We are committed to delivering

customer experiences to every device