strengthening adobe’s enterprise platform with day software and open development

73
Strengthening Adobe’s Enterprise Platform with Day Software and Open Development Roy Fielding | Chief Scientist, Day Software | @fielding David Nuescheler | CTO, Day Software | @davidnuescheler Craig Randall | Principal Scientist, Adobe | @craigsmusings

Upload: craig-randall

Post on 30-May-2015

1.939 views

Category:

Technology


1 download

DESCRIPTION

Authors/presenters in chronological order: (1) Roy Fielding; (2) David Nuescheler; (3) Craig Randall

TRANSCRIPT

Page 1: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Roy Fielding | Chief Scientist, Day Software | @fieldingDavid Nuescheler | CTO, Day Software | @davidnueschelerCraig Randall | Principal Scientist, Adobe | @craigsmusings

Page 2: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Topics

2

1

Open DevelopmentOpen Source, Open Standards, Open Architecture

32

Web Content ManagementArchitecture, Product & Highlights Demo

CEMApps meet Content

Page 3: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Topics

3

1

Open DevelopmentOpen Source, Open Standards, Open Architecture

32

Web Content ManagementArchitecture, Product & Highlights Demo

CEMApps meet Content

Page 4: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

5

The Open Development Triad

OPENSOURCE

OPENSTANDARDS

OPENARCHITECTURE

Page 5: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Effective Collaboration

6

✴ (One) Shared Goal

✴ Agree how to disagree & decide

✴ Shared Workspace

✴ Dynamic Awareness

✴ Parallelization

Page 6: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Open Source Infrastructure

7

OPENSOURCE

Page 7: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache is BIG

8

> 2359 committers

84 projects (+ 36 incubating)

No officesalmost no f2f meetings

all decisions on mailing listsHundreds of releases

ASF members: 330 3 TB/day www traffic

TheApacheSoftware Foundationh t t p : / / w w w . a p a c h e . o r g /

Page 8: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache already has rules for decision-making

9

+1

Page 9: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache already has a shared workspace

10

revision control system

mailing lists + archives IRC

Wikis

blogs

issue trackerautomated builds

httpd (of course)

Page 10: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache already supports dynamic awareness

11

Collaboration hub!

code

issues

tests

decisionsRSS feeds

email events

subscriptions

Page 11: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Leadership in Open Source

12

OPENSOURCE

[email protected]

[email protected]

[email protected]

[email protected]

Page 12: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Leadership in Open Standards

13

OPENSOURCE

OPENSTANDARDS

URI

HTTP

CMIS

JSOP

JCR

URI Templates

HTML

Page 13: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Leadership in Open Architecture

14

OPENSOURCE

OPENSTANDARDS

OPENARCHITECTURE

REST OSGi

Page 14: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Why Open Architecture?

15

Open Development

Collaborative open source development> emphasizes community> takes advantage of the scalability

obtainable through Internet-basedvirtual organizations

> adapts to the volunteer nature of developers

Page 15: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Why Open Architecture?

16

Open Development+

Conway’s Law

Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.

Melvin E. Conway, Datamation, April 1968http://www.melconway.com/law/index.html

Page 16: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Why Open Architecture?

17

True open development(a.k.a, Community-driven Design)will only occur when the design of

your system reflects the organizational structure of open development!

Open Development+

Conway’s Law

Page 17: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Why Open Architecture?

18

Open Development+

Conway’s Law+

Change is inevitable!

Decentralized Software Evolution(or rapid obsolescence)

Page 18: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Challenges

19

✴ Trade-off: Adaptability vs Consistency✴ what changes are possible?

✴ what assurances are provided?

✴ Where to place the open points✴ behavioral junctions (APIs, callback hooks)

✴ virtual machines (command tables, scripting)

✴ data flow (filters, plug-ins)

Page 19: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Closed Source Examples

20

✴ Adobe

Page 20: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

✴ Apple iPhone Ecosystem

Closed Source Examples

21

Page 21: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Open Source Examples

22

✴ What is common to the largest and most successful open source projects?

✴ a software architecture

✴ designed to promote anarchic collaboration

✴ through extensions

✴ while preserving control over the core interfaces

Page 22: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache httpd: modules

23

[Apache Modeling Project, f-m-c.org]

Modules

• simplify core

• enable independent development

• promote experiments

Project improves

• reduced friction

• anarchic growth

• more features

• less communication

Page 23: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache httpd: I/O filters

24

[Apache Modeling Project, f-m-c.org]

Filters provide more extensibility

• protocol replacement

• httpd, ftpd, nntpd, …

• stackable content manipulation

• extensions that can extend other extensions

Page 24: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Linux Kernel Modules

25

Modules

• simplify core

• enable independent development

• promote experiments

Project improves

• reduced friction

• anarchic growth

• more features

• less communication[diagram from Ivan T. Bowman, 1998]

Page 25: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Mozilla Firefox

26

Open Source

Extensible

Architecture

Plug-in Tools

Layered CSS

Editor Platform

Page 26: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

27

ArchitectingIt’s all about

Open Development

for

Page 27: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Representational State Transfer

28

The REST architectural style is

1 a model of ideal Web application behavior

2 a guide for optimizing Web architecture

3 a pattern for communicating‣ architectural constraints‣ induced properties‣ resulting trade-offs

4 a new software industry buzzword

Page 28: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

REST on a slide

29

85

the disadvantages) of the optional constraints when they are known to be in effect for some

realm of the overall system. For example, if all of the client software within an

organization is known to support Java applets [45], then services within that organization

can be constructed such that they gain the benefit of enhanced functionality via

downloadable Java classes. At the same time, however, the organization’s firewall may

prevent the transfer of Java applets from external sources, and thus to the rest of the Web

it will appear as if those clients do not support code-on-demand. An optional constraint

allows us to design an architecture that supports the desired behavior in the general case,

but with the understanding that it may be disabled within some contexts.

5.1.8 Style Derivation Summary

REST consists of a set of architectural constraints chosen for the properties they induce on

candidate architectures. Although each of these constraints can be considered in isolation,

describing them in terms of their derivation from common architectural styles makes it

Figure 5-9. REST Derivation by Style Constraints

RR CS LS VM U

CSS LCS COD$

C$SS LC$SS LCODC$SS REST

replicated

on-demand

separated

layered

mobile

uniform interface

stateless

shared

intermediate

processing

cacheable

extensible

simple

reusable

scalable

reliable

multi-org.

visible

programmable

Page 29: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development
Page 30: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development
Page 31: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development
Page 32: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

33

OSGi

[Birsan, ACM Queue, Mar 2005]

Taking modular extensibility to the next level OSGi

Page 33: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

34

Eclipse Platform

Page 34: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

35

Eclipse Platform

Page 35: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

Apache Sling

36

Drop-in

Extensibility

usingOSGi Bundles

jsp

rubyscala

groovyesp...

JCR backedContent-orientedWebDAV-ableREST-based

+

OSGi REST

Page 36: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

The Answer to Effective Collaboration

37

✴ (One) Shared Goal

✴ Agree how to disagree & decide

✴ Shared Workspace

✴ Dynamic Awareness

✴ Parallelization

➡ Open Standards

➡ Apache-styleVoting

➡ Apache Workspace

➡ Apache Notifications

➡ Open Architecture

Page 37: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Topics

38

1

Open DevelopmentOpen Source, Open Standards, Open Architecture

32

Web Content ManagementArchitecture, Product & Highlights Demo

CEMApps meet Content

Page 38: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Introducing Day Software

40

Global WCM Leader

Headquartered Basel, Switzerland and Boston, Massachusetts

Support Offices: California, Basel, Singapore

International Offices: Switzerland, Germany, France, Italy, UK, Singapore

Healthy, organically growing public company

HG

K

A

L

C F

B

I

J

E

Page 39: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Day + Adobe

41

Page 40: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Global Brands Trust in Day

42

Page 41: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Powered by CQ5

43

Page 42: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Industry Standards

170

283

Page 43: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Re-architecting

45

Roy David

Web Content

Blueprints and Roadmap for the Next Generation EnterpriseWeb Content System

2001

Page 44: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

WCM Target Audiences

46

CMOBUSINESS

CIOIT

25%25%

25% 25%

Authors

SiteOwner

Developer

Systems

AB

CD

Page 45: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

CQ5 re-architected - initial release in 2008

47

Page 46: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 48

Platform

Standardized Content Infrastructure

WCM

CRXJCR CompliantContent Repository

connector

connector

connector

connector

DAMSocialCollab

+ Portal

+ Search

+ BPM

Page 47: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

CRX Architecture

49

Content Repository(Development, Packages)

Apache Sling

Tagging, Workflow, Widgets, Internationalization

CR

XC

Qpl

atfo

rm

JCR

OSGI

CC

A P

latformREST

Page 48: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 50

CRXCQ5

For Production - 100% Cloud or

Hybrid On-Premises / Cloud Cluster

For Demos, Trials, POCsFor

Development and Test

Page 49: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Flashy Web 2.0

51

JavaScriptdirect full access

Page 50: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Flashy Web 2.0

52

ActionScriptdirect full access

Page 51: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Flashy Web 2.0

53

ActionScriptdirect full access

Page 52: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

WEB 2.0

HTML5

54

Page 53: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

HTML5 Video

55

Page 54: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Multi-Channel

Web & Mobile Push!56

Page 55: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

The bad news...

UserAgentRadical: nokia6170colors: 65536fall_back: nokia_generic_series40_dp20j2me_amr: TRUEj2me_cldc_1_1: TRUEj2me_h263: TRUEj2me_mpeg4: TRUEj2me_screen_height: 160max_data_rate: 200max_deck_size: 4194304max_image_height: 115max_image_width: 122mms_3gpp: TRUEmms_max_height: 480mms_max_size: 100000

mms_max_width: 640mms_mp4: TRUEmms_vcalendar: TRUEmms_video: TRUEmodel_name: 6170mp3: TRUEphysical_screen_height: 40physical_screen_width: 32playback_3gpp: TRUEplayback_acodec_amr: nbplayback_mp4: TRUEplayback_vcodec_h263_0: 10resolution_height: 160ringtone_amr: TRUEringtone_mp3: TRUE

ringtone_voices: 40streaming_3gpp: TRUEstreaming_real_media: nonestreaming_video: TRUEstreaming_video_acodec_amr: TRUEuaprof: http://nds1.nds.nokia.com/uap....user_agent: Nokia6170video: TRUEvideo_3gpp: TRUEvideo_3gpp2: FALSEvideo_max_height: 96video_max_width: 128video_mp4: TRUEvideo_preferred_height: 96video_preferred_width: 128

Detecting over

17k Devices(...and coun

ting)

Page 56: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Device Groups

1 32

Feature Phone Smart Phone Touch Phoneextensible

58

Page 57: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 59

demo

Page 58: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Topics

60

1

Open DevelopmentOpen Source, Open Standards, Open Architecture

32

Web Content ManagementArchitecture, Product & Highlights Demo

CEMApps meet Content

Page 59: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Adobe CEM revolutionizes

how enterprises engage with customers

and how customer experience is

delivered

Page 60: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 63

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

Customer Experience Management

Customers

Adobe + Day =

Global Web Social Collaboration

Interactive Applications

Interactive Documents

Content Process Analytics

AdobeDay

Page 61: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 64

Current customer experience online…It’s real jungle

Page 62: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Customer interaction with an enterprise

65

Websites

Customer

Call Center Apps

Point of Sale

Loyalty SiteWeb

Applications

Social Media

Mobile Apps

Customer Service

ApplicationMicrosites

Statements

Email

Page 63: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

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 64: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

What the customer wants

Personalized, responsive experiences

Right experience for right task for the right device

Multi-channel communication

Customer / Citizen / Partner

Page 65: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Tablet

What the customer wants

PDF formsGuided 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 66: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

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 /

FieldMail &

Fax Email Mobile

Customer / Citizen / Partner

Context flow across apps and channels

Page 67: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

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 ApplicationsGAP

PortalsMobile appsRIAWeb appsCommerceBusiness apps

WebsitesMicrositesMobile SitesWCMDAMCampaigns

Context flow

Content integration

Analytics Application integration

Page 68: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Adobe’s Customer Experience Management (CEM) vision

PUBLIC CLOUD

Services

USER EXPERIENCE

Multiple Channels

MultiplePlatforms

TOOLS

CreativeSuite

FlashCatalyst

FlashBuilder

LiveCycleWorkbench Foundation

CUSTOMER EXPERIENCE MANAGEMENT PLATFORM

EXISTING APPLICATIONS & SYSTEMS

Legacy Systems

Enterprise Information

SystemsDatabasesDirectoriesMessage

QueuesECM

Repository

Modules

Dynamic Content Enterprise RIA Business

Process

Solution Accelerators

Online Mobile Branch Agent/ Field

Mail &Fax Email Call

CenterSocial

Analytics Document Services

Page 69: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Content + applications

PUBLIC CLOUD

Services

USER EXPERIENCE

Multiple Channels

MultiplePlatforms

TOOLS

CreativeSuite

FlashCatalyst

FlashBuilder

LiveCycleWorkbench Foundation

CUSTOMER EXPERIENCE MANAGEMENT PLATFORM

EXISTING APPLICATIONS & SYSTEMS

Legacy Systems

Enterprise Information

SystemsDatabasesDirectoriesMessage

QueuesECM

Repository

Modules

Dynamic Content Enterprise RIA Business

Process

Solution Accelerators

Online Mobile Branch Agent/ Field

Mail &Fax Email Call

CenterSocial

Analytics Document Services

Page 70: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

• 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

73

Gravity

Flash Player

SWF/Module Loading

Dependency Injection Messaging

RIA Core Services

LoggingAuthentication

Configuration

Context

Persistence

more …

LC RIA Server

RIA Component Libraries

Content Collab Mosaic

Dat

a Se

rvic

es

LiveCycle “ES Next” Solution Application(e.g. Field Force Automation)

Security Guides more…

Page 71: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

LiveCycle RIA component patterns

74

RIA Component

Domain & ServicePresentation

View

PresentationModel

Events

Data Binding

{View State}{Operations}{Events}

DomainModel

Foo getFoo()

IServiceoperation()

ServiceImploperation()

IPresentationModel

Infrastructure UtilityClasses

Live

Cycl

e “E

S N

ext”

RIA

Ser

ver

Client Server

IDomainModelFoo getFoo()

Page 72: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

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

75

Page 73: Strengthening Adobe’s Enterprise Platform with Day Software and Open Development

© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.