Open Architecture in the Adobe Marketing Cloud - Summit 2014
-
Upload
paolo-mottadelli -
Category
Technology
-
view
111 -
download
1
description
Transcript of Open Architecture in the Adobe Marketing Cloud - Summit 2014
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Open Architecture in the Adobe Marketing CloudPaolo Mo"adelli | Sr. Mgr, Marketing Cloud Product Management
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 2
Paolo Mo!adelliSenior Manager,Marketing Cloud Product Management
@paolomoz
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 3
Features
Why Openness ma"ers to YOU: the long tail pa"ern
5%
100%1 2 3
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 4
What is an open architecture?
IWhy does “open”
ma!er?
IIMarketing Cloud open architecture principles
III
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 5
What is an Open Architecture?I
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
1) #e Web as it was originally designed. Open by design.
6
POST /
curl -F title=hello http://localhost:4502/foo
GET /
curl http://localhost:4502/foo.tidy.json
Demo
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
2) Modularity at its best
7
PLUG-IN ENGINE
HOST APPLICATION
PLUG-IN PLUG-IN PLUG-IN
PLUG-IN PLUG-IN
PLUG-IN PLUG-IN
PLUG-IN PLUG-IN
traditional plug-ins pure plug-in system
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
What makes a platform “open”
8
Extensibility requires modularization
Reuse needs cleaner structure
More use cases require generalization
Open Architecture Open Standards Open Source
Communication pa!erns
Architectural rules
Common interfaces
No lock-in
More eyeballs
More use cases
More users of any kind
More opinionated developers
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 9
Why does "open" matter?II
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Be"er code
10
✓ Be"er quality
✓ Be"er structure
✓ Be"er sustainability
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Be"er security
11
X Security through Obscurity
✓ Peer reviewed
✓ Industry Standard
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Be"er testing
12
✓ Standardized pa!erns
✓ Samples
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Integration and extensibility
13
✓ Extension points are features
✓ Modularization
✓ Standards
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 14
7 Open Architecture PrinciplesIIIh"ps://marketing.adobe.com
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Open standards"e core infrastructure is based on Open Standards and Open Source projects.1
Infrastructure stack
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Architecture in a nutshell
16
Java$VM$Running$in$Servlet$Container$or$Java$EE$Applica7on$Server$
Access$Control,$Versioning,$Search,$$Observa7on$
Fully$OSGi/Java$based$modern$Applica7on$Stack$$Extensible$and$Modular!
Interac7ng$with$any$client$run7me$$HTTP[S],$WebDAV,$…$
JCR$2.0$Content$Repository$
OSGi$5$Applica7on$Run7me$
RESTful$Web$Applica7on$Framework$
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Open Core
17
Repository*
Applica/on*Run/me*
JCR:!Apache!Jackrabbit!
Search:*Apache!Lucene!
Content*Extrac/on:*POI,!Tika,!PDFBox!
Search!Extensions!
Graphic!Rendering!
CIFS/SMB!Access!
Virtual!Repository!
TARHbased!
NodeHstore!
SharedHnothing!
Cluster!
Web*Framework:!Apache!Sling!
OSGi*Run/me:!Apache!Felix! Vault!&!SVN!Tools!
Web/Eclipse!IDE!
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
#e OSGi container
18
Class%Loading%
Bundle%B%V1.0.0%
Bundle%C%V1.0.0%
Life%Cycle%
Service%Registry%
Services%
Security%
Bundle%A%V1.0.0%
Bundle%A%V1.0.0%
Bundle%B%V2.0.0%
Bundle%A%V1.1.0%
Bundle%B%V2.1.0%
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Why OSGi ma"ers
19
Create Modular and reusable so#wareCreate evolvable so#wareCreate line of products
Your application is going to be OUTDATED. (Or buggy...)
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Cloud stackAll of the Marketing Cloud solutions are developed for cloud deployments for multi-tenancy using a shared stack that exposes shared capabilities.2
Infrastructure stack
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Shared architecture Stack
Shared Cloud Infrastructure Big Data Infrastructure
Big Data Axle, Reporting, Predictive, Visitor Pro!les
Content Platform Modular Execution Runtime
REST Framewo
OrchestrationBPM
SocialInfrastructure
Impl
emen
tatio
nIn
frast
ruct
ure
Authentication Web Development
Shared runtimeDeployment
Content Repository, JCR, Shared Cloud, Transformations
Big Data Axle, Reporting, Predictive, Visitor Pro!les
(Data Connectors)
Content PlatformContent Repository, JCR,
Shared Cloud, Transformations(Content Connectors)
Client Libs/TagsContextUX Framework
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
URLs ma!erAll URLs exposed by the Marketing Cloud are carefully evaluated, designed and managed.3
Web architecture
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 23
/assets.html/content/mac/geometrixx/banners/adventure.psd
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 24
/assets.html/content/mac/geometrixx/banners
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 25
/assets.html/content/mac/geometrixx
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
REST APIs are King.All of the entities in the Marketing Cloud and all solutions are exposed in a resource tree and bound to clean REST APIs.4
Web architecture
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 27
Consistent API design pa!erns/blueprints.(URLs, JSON, PATCH, naming conventions, JSOP...)
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Like the Web as it was originally designed.
28
GET /products/english/18846.html
Resource(Type(Resolu-on(
Render(Code(Repository(Path(
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Like the Web as it was originally designed.
29
POST /products/english/18846/comments/*
Repository*Path*
Title*as*node*name*
Demo
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
CURL power"ere should be a good reason for anything that can’t be done with CURL.4b
Web architecture Demo
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Browser rulesAll our UX is based on Web technology (HTML & friends) for all channels.5
Web architecture
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Browser rules
32
We built for a Browser interface using HTML (html, js, css). We support a JSON (JSOP) interface for both JS applications and native apps.
1 2
PhoneGap
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Shareframe Integration
<script src="https://marketing.adobe.com/etc/clientlibs/mac/mac-api.js"/>
/** * Opens a share card. * * @param {Object} options Shareframe options. * * @param options.url Permalink to the resource that is shared * @param options.title Title of the resource that is shared * @param options.subtitle Subtitle of the resource that is shared * @param options.product Product that is sharing (e.g. Analytics) * @param options.type Type of the resource. * @param options.data Object for type specific information * @param options.auth.token Authentication token * @param options.auth.configId Authentication IMS config id * * Options specific to a "dv-report" * @param options.data.dataURL URL to a JSON resource to fetch data * @param options.data.chartType "bar","trend","pie" * * Options specific to a "asset" * @param options.data.url URL to the asset */tartan.shareCard(options);
33
Demo
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
One UX, one infrastructure. All of the Marketing Cloud shares one UX and one architecture and infrastructure stack for marketing user interaction.6
One pa"ern
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 35
Uni!ed UI
• UI framework for web applications
• Backend agnostic
• Uni$cation of all Adobe apps
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Uni!ed UI key principles
36
§Responsive and scalable layout§.rem, font icons, embedded svg, markup driven
§Rich widgets§less js, data a!ributes
§Mobile $rst§Cu!ing edge technologies§css3, html5, jquery JQUERY
Client UI
UI Con$g
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 37
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Extension points
38
§ Components§ Dialogs§ Virtual resources§ Resource merger§ Client side eventing
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
One UX, one infrastructure. All of the Marketing Cloud shares one UX and one architecture and infrastructure stack for marketing user interaction.6b
One pa"ern
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Marketing Cloud Experience and Solution Services
Media Optimizer(Service)
Campaign(Service)
Analytics(Service)
Experience Manager(Service)
Target(Service)
Social(Service)
ExperienceApacheWebServer
Delivers Web ExperienceProxies & Collates JSON and
HTML streamsManages Dashboard,
ActivityStreams & Social Graphs
Exposes RESTful ActivityStreams &
Dashboard Con!guration Service
Cache & Load balancingTransparent Reverse proxy
(mod_dispatcher)Apache con!g
(1) P
ush
activ
ities
(etc
) to
Stre
ams
and
Das
hboa
rds
(2) R
ende
r JSO
N /
HTM
L ca
rds
via
RESt
ful S
ervi
ce
h"p[s]://[*.]marketing.adobe.com/
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Cross Solution Concepts"e foundational cross solution concepts of Digital Marketing are not contained or de#ned in any single solution but are managed and exposed exclusively by the Marketing Cloud and bi-directionally accessed by each solution.
7
One pa"ern
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Cross Solution Concepts
42
METRICS
CONTEXT
ASSETS
CONTENT
PLAN EXECUTE MONITOR
CAMPAIGN
CHANNELSAUDIENCES
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
#e DNA of Marketing Campaigns
43
Right brain marketers create campaigns by composing experiences that place content and assets into the right channels.
ASSETS
CONTENT
CHANNELS
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
#e DNA of Marketing Campaigns
44
METRICS
CONTEXT
AUDIENCES
Le# brain marketers measure and optimize campaigns by de$ning audiences based on collected context data that combine behavior and identity.
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Accessing cross solution resources
45
Demo
Marketing Cloud provides open widgets (and API) to access cross cu!ing resources.
ASSETS
3rd PARTY SYSTEM
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential. 46
ConclusionsIV
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Adobe Marketing cloud is demonstrably open1
Built on open standards, open protocols and open source code2
Makes a difference in terms of usability, quality, testing, integration and lock-in3
© 2014 Adobe Systems Incorporated. All Rights Reserved. Adobe Con!dential.
Want to follow up?Reach out.
[email protected]@paolomoz
Q&A