27
Client or Partner logo and Together. Free your energie Architecting RIAs With the Adobe Flash Platform …and what about JavaFX? Mark Nankman

Architecting RIAs

Embed Size (px)

DESCRIPTION

A deck of slides I used for a presentation about Architecting RIAs on the Adobe Flash Platform and whether the practices applied could be used with JavaFX. I concluded the presentation with a small comparison between Flex/AIR and JavaFX.

Citation preview

Page 1: Architecting RIAs

Client orPartner logo

and Together. Free your energies

Architecting RIAs

With the Adobe Flash Platform…and what about JavaFX?

Mark Nankman

Page 2: Architecting RIAs

| Technology ServicesTogether. Free your energies

Contents

RIA Adobe Flex Adobe AIR

Adobe LifeCycle

Bonus material: Adobe Flex compared to JavaFX

Page 3: Architecting RIAs

| Technology ServicesTogether. Free your energies

RIA

"Rich Internet applications (RIAs) are emerging as vehicles to enable the next generation of Information Workplaces that are best suited for decision-makers and task-oriented workers who engage in complex, multistep processes — people who need seamless, individualized, and highly visual user experiences."

Rich Internet Application

Forrester:

Page 4: Architecting RIAs

| Technology ServicesTogether. Free your energies

TIA versus RIA

Backoffice systems

database

Business logic

Application server

Web server

Web browser

HTTP GET/POST

HTML

Backoffice systems

database

Business logic

Application server

Presentation server

Web server

Web browser

HTTP GET/POST

XML or compressed binary data

RIA Engine

Application

GUI Rendering

Remoting

Data Manager

TIA

RIA

Page 5: Architecting RIAs

| Technology ServicesTogether. Free your energies

Server-side MVC Architecture

Server Client

Model

View

Controller

Model

View

Controller

http://osteele.com/archives/2004/08/web-mvc

Page 6: Architecting RIAs

| Technology ServicesTogether. Free your energies

RIA MVC Architecture

Server Client

Model Model

View

Controller

http://osteele.com/archives/2004/08/web-mvc

Page 7: Architecting RIAs

| Technology ServicesTogether. Free your energies

7

Views

Services

RIA Architecture blueprint: MVCS

MediaService

CommentService

VideoPlayer

Contr

olle

r

interface interface

VideoBrowser

Login,Search…

Models

Collection

VideoInfo

Comment

Comment

populates

references

notifies

com

munic

ate

s

inte

ract

s

Session

inte

rface

http://joeberkovitz.com/blog/reviewtube/

Page 8: Architecting RIAs

| Technology ServicesTogether. Free your energies

8

MVCS In Summary

Model: semantic data only View: interaction and presentation only Controller: actions, mediation, cross-cutting concerns Services: communication only

Page 9: Architecting RIAs

| Technology ServicesTogether. Free your energies

Definition LaunchConstructionDesign

Prototype

Graphical design

Style guide

Take into production

U S E R E X P E R I E N C E a n d T E C H N O L O G Y

Terminology, Methodology: Deliver, Test plan: functional testing & stress testingQuality

User manual, Administration manual, Technical documentationDocumentationUser training, Administrator training, Developer trainingTraining

Meetings, Procedures: Delivery management, Incidence Management & Change ManagementProject ManagementPro

ject

initi

atio

n

Pro

ject

acc

ep

tan

ce

Produce graphic design

Accessability training

Platform installation

Technical design

RIA Architecture

Backoffice Architecture

Database schemas

Visual Concept

Usability requirements

Accessability reqs.

content tree

Content architecture

content templates

Specifications

Use cases

Datamodel

Usability test

Usability tests

Programming

RIA Components

Backoffice components

Database

RIA Competence Center,a RIA specific project methodology

Scenarios

Persona design

usage scenarios

Objectives

Taskdefinitions

Page 10: Architecting RIAs

| Technology ServicesTogether. Free your energies

The Flash Platform

Page 11: Architecting RIAs

| Technology ServicesTogether. Free your energies

The Flash Platform (2)

Page 12: Architecting RIAs

| Technology ServicesTogether. Free your energies

The Flash Player

Flash VM Actionscript VM

Tamarin

Flash Player 10 ARM Processors

Page 13: Architecting RIAs

| Technology ServicesTogether. Free your energies

Flex

Platform Framework

Example applications• http://www.volkswagen.co.uk/used/search• http://www.miele.nl

Page 14: Architecting RIAs

| Technology ServicesTogether. Free your energies9

How Flex Works ...

MXML and ActionScript

XML/HTTPREST

SOAP Web ServicesJEE Application Server

LC Data Services

Web Server

Existing Applications and Infrastructure

Flex Builder 3 IDE

Flex SDK 3

MXML ActionScript

Flex Class Library

.swf

Compile

.swf

HTTP/S AMF/S RTMP/SSOAP

RIA Clients

Flash Player Adobe AIR

Page 15: Architecting RIAs

| Technology ServicesTogether. Free your energies

Flex Architecture sketch

Page 16: Architecting RIAs

| Technology ServicesTogether. Free your energies

AIR

Desktop applications Reuse your Flex skills Reuse your Ajax skills

Example applications:• Balsamiq Mockups

• Google Analytics

Page 17: Architecting RIAs

| Technology ServicesTogether. Free your energies17

LiveCycle Enterprise Suite

Cross-Platform Clients

User Interface Technologies

Tooling

SolutionComponents

Foundation

LIVECYCLE ESENTERPRISE SUITE

LIVECYCLE ESENTERPRISE SUITE

DesignerDesigner WorkbenchWorkbench Flex BuilderFlex Builder

Common Administration, Invocation, Orchestration, SecurityCommon Administration, Invocation, Orchestration, Security

Existing Customer Infrastructure

PDF Flex

ECMECM CRM/SFACRM/SFA ERPERP LDAPLDAP ......

Reader Flash Browser AIR

Forms ESForms ES

Reader Extensions ESReader Extensions ES

Barcoded Forms ESBarcoded Forms ES

Data Services ESData Services ES

PDF Generator ESPDF Generator ESRights Management ESRights Management ES

Digital Signatures ESDigital Signatures ES PDF Generator 3D ESPDF Generator 3D ES

Data Capture Information Assurance Document Output

Output ESOutput ES

Production Print ESProduction Print ES

Process Management

Process Management ESProcess Management ES Business Activity Monitoring ESBusiness Activity Monitoring ES

Content Services ESContent Services ES ES Connectors for ECMES Connectors for ECMContent Services

Page 18: Architecting RIAs

| Technology ServicesTogether. Free your energies

BlazeDS

Open Source “undressed” version of LCDS

http://www.adobe.com/devnet/livecycle/articles/blazeds_gettingstarted.html

Page 19: Architecting RIAs

| Technology ServicesTogether. Free your energies

Flex Micro architecture: Cairngorm

Page 20: Architecting RIAs

| Technology ServicesTogether. Free your energies

Flash vs. JavaFX

Vs.

Page 21: Architecting RIAs

| Technology ServicesTogether. Free your energies

JavaFX

Page 22: Architecting RIAs

| Technology ServicesTogether. Free your energies

JavaFX Platform

Page 23: Architecting RIAs

| Technology ServicesTogether. Free your energies

What is JavaFX?

A programming language A UI framework A platform

Page 24: Architecting RIAs

| Technology ServicesTogether. Free your energies

Hello Flex

Page 25: Architecting RIAs

| Technology ServicesTogether. Free your energies

Hello JavaFX

Page 26: Architecting RIAs

| Technology ServicesTogether. Free your energies

JavaFX-Flex comparison

Cross platform Well suited for mobile Infantile, but mature

foundation Clean code Robust Fast, well okay not

really yet Extremely cool

Cross platform To heavy for mobile Mature Robust Messy (XML + code) Fast Enterprise (

boring?)

Page 27: Architecting RIAs

| Technology ServicesTogether. Free your energies

Questions