SlideShare uma empresa Scribd logo
1 de 122
Baixar para ler offline
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Soirée Flex & RIA
Nantes JUG
© 2010 Adobe Systems Incorporated. All Rights Reserved.
About me : François Le Droff
o “Just another Java guy” (doing Flex)
o 11 years in web 1+n.0
o Open Source Software Geek :
o FlexPMD, Cairngorm
o Ossgtp, ParisJUG, et TTFX
o French JUGs, MAX, et Solution Linux
o http://www.droff.com
o http://twitter.com/francoisledroff
o ledroff adobe.com<at>
© 2010 Adobe Systems Incorporated. All Rights Reserved.3
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
RIA?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Sexy and funky
applications !
© 2010 Adobe Systems Incorporated. All Rights Reserved.
®
Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
What Are Intuitive User Experiences?
 Effective, Efficient, Engaging, Easy to learn, Error free
 Personalized, responsive experiences across devices and channels
 Communication & collaboration in context
 Harmonization of backend processes and services
© 2010 Adobe Systems Incorporated. All Rights Reserved. 8
Rich User Experiences: Opportunities for internal users
Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
®
Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
Rich User Experiences: Opportunities for internal users
5 mins 20 secs
Increase productivity & improve decision making
© 2010 Adobe Systems Incorporated. All Rights Reserved. 10Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
© 2010 Adobe Systems Incorporated. All Rights Reserved.
®
Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
© 2010 Adobe Systems Incorporated. All Rights Reserved.
®
Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
From a system-centric view to a user-centric application.
© 2010 Adobe Systems Incorporated. All Rights Reserved. 13
Hendrix
© 2010 Adobe Systems Incorporated. All Rights Reserved. 14
o Before
Hendrix
© 2010 Adobe Systems Incorporated. All Rights Reserved.
o After
15
Hendrix
© 2010 Adobe Systems Incorporated. All Rights Reserved. 16
Hendrix: APIs , UIs, avoid unnecessary complexity and training
© 2010 Adobe Systems Incorporated. All Rights Reserved.
First-class interfaces
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Productive users Productive developers
Productivity by Design
Productivity by design
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flash?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
FLASH PLAYER 10.1
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Consumer
Electronics
Personal
Computers
Mobile
Phones
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Partenaires technologiques
Open Screen Project
Diffuseurs de contenu
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flash Player 10.1
Flash Player 10.1
Google TV
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Increased software rendering performance on mobile over 87%
Reduced memory consumption on mobile by over 55%
Flash Player 10.1 is designed for mobility
 Performance
 Graphics hardware acceleration
 Audio/video hardware decoding
 Memory, battery & CPU
optimizations
 Optimized SWF Management
 Sleep mode
 Device integration
 Multi-touch and gestures
 Accelerometer
 Screen orientation
 Mobile text input
 Porting kit for OSP partners
© 2010 Adobe Systems Incorporated. All Rights Reserved.
o Brings full Flash Player feature set to devices
o New Features:
o Multi-touch & gestures
o Accelerometer
o Screen orientation
o Mobile text input
o Device capabilities discovery
o Globalization support (GSLib)
o Mobile settings manager
o Global error handling
Flash Player 10.1
© 2010 Adobe Systems Incorporated. All Rights Reserved.
AIR ?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
Flash Player 10.1
+ WebKit
+ SQLite
+ Desktop APIs
---------------------
= Adobe AIR
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
Xplatform runtime
Drag & Drop files / Desktop
Local system access
Multiple windows
Transparent applications
Native Process, UDP, USB...
© 2010 Adobe Systems Incorporated. All Rights Reserved.
DETECT AND BROWSE
USB STORAGE
© 2010 Adobe Systems Incorporated. All Rights Reserved.
UDP Network Protocols
PEER 2 PEER
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Documents and Processes
OS INTEGRATION
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Demos
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex ?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Basics
Flash Builder IDE
Flex SDK
Flex Class Library
MXML ActionScript
Compile
SOAP HTTP/S AMF/S RTMP/S
Web Server
Existing Applications & Infrastructure
J2EE Application Server
LC Data Services
XML/HTTP
REST
SOAP Web Services
Browser
Flash Player
© 2010 Adobe Systems Incorporated. All Rights Reserved.
OLD COMPONENT MODEL
FLEX FRAMEWORK 3
Graphics
Layout
Animation
Parts
States
Behavior
Logic
Data
Component / Skin
© 2010 Adobe Systems Incorporated. All Rights Reserved.
SPARK COMPONENT MODEL
FLEX FRAMEWORK 4
ActionScript MXML
Graphics
Layout
Animation
Parts
States
Component
Skin
CSS properties
Behavior
Logic
Data
© 2010 Adobe Systems Incorporated. All Rights Reserved.
SPARK COMPONENT THEME
FLEX FRAMEWORK 4
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW VIDEO COMPONENT
FLEX FRAMEWORK 4
© 2010 Adobe Systems Incorporated. All Rights Reserved.
TEXT LAYOUT FRAMEWORK SUPPORT
FLEX FRAMEWORK 4
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW STATES MODEL
FLEX FRAMEWORK 4
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW LAYOUT MODEL
FLEX FRAMEWORK 4
http://www.rialvalue.com/coverflow/
© 2010 Adobe Systems Incorporated. All Rights Reserved.
OLD MX COMPONENTS
FLEX FRAMEWORK 4
http://tinyurl.com/notspark
© 2010 Adobe Systems Incorporated. All Rights Reserved.
HTML5 ?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
&
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
HTTP Request
&
WebServices
© 2010 Adobe Systems Incorporated. All Rights Reserved.2008 Adobe Systems Incorporated. All Rights Reserved.
Flex/JSP architecture
UI LAYER
SERVER
PRESENTATION
/SERVICES/DAO
LAYER
DATABASE/
STORAGE LAYER
listEvents.jsp
Java servlet container (tomcat, WAS…)
JDBC
Web browser
JAVA classes/services
Webapp (WAR)
EventService.java public getEvents()
WSDL
XML on
HTTP(s)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
 Same with PHP, Ruby, Perl, ASP...
 Returns XML, text, tabulated text, JSON...
 Use send() to launch the request
 Result and Fault events
 New data-services wizard in Flash Builder 4 to
generate a STUB on the client side
Flex and <HTTPRequest>
© 2010 Adobe Systems Incorporated. All Rights Reserved.
 Web Services Description Language 1.1 (WSDL 1.1)
document
 The Flex web service API generally supports Simple
Object Access Protocol (SOAP) 1.1, XML Schema
1.0, and WSDL 1.1 RPC-encoded, RPC-literal, and
document-literal (bare and wrapped style
parameters).
 Flex supports web service requests and results that
are formatted as SOAP messages
Flex and <Webservice>
© 2010 Adobe Systems Incorporated. All Rights Reserved.
AMFPublished in December 2007
XML
5000 rows ?1.1Mo 29Ko
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Remoting AMF
© 2010 Adobe Systems Incorporated. All Rights Reserved.
LiveCycle Data Services ES
LiveCycle Data Services is a set of Java EE
components and APIs used to:
Create data-intensive RIAs with less code, less risk, and
accelerated time to market due to an innovative client-
server programming model
Integrate RIAs with existing applications, back-end data,
and JEE infrastructure
Easily integrate RIAs with LiveCycle document and
process services
Enable collaboration, offline AIR and real-time data
streaming applications to be built in a scalable and
reliable manner with robust publish and subscribe
messaging
Generate PDF documents from RIAs that include
graphical assets
LiveCycle Data Services ES
Data Management
RPC Services
Messaging
Service
Adapters
Data Synchronization
Off-line Applications
Data Paging
Web Service
HTTP Service
Remote Object Service
Publish & Subscribe
Collaboration
Real Time Data Push
Proxy Service
Web-tier Compiler
Portal Deployment
RIA-PDF Generation
LiveCycle
ColdFusion
Hibernate
SQL
JMS
Java
Custom…
© 2010 Adobe Systems Incorporated. All Rights Reserved.
BlazeDS is a set of Java EE components and APIs,
and a subset of LiveCycle Data Services:
- Free and open source.
- High performance data transfer for more responsive
applications using AMF
- Real-time server push over standard HTTP
- Full pub/sub messaging that extends existing
messaging infrastructure
LiveCycle Data Services ES
Data Management
RPC Services
Messaging
Service
Adapters
Data Synchronization
Off-line Applications
Data Paging
Web Service
HTTP Service
Remote Object Service
Publish & Subscribe
Collaboration
Real Time Data Push
Proxy Service
Web-tier Compiler
Portal Deployment
RIA-PDF Generation
LiveCycle
ColdFusion
Hibernate
SQL
JMS
Java
Custom…
© 2010 Adobe Systems Incorporated. All Rights Reserved.
LCDS.war
 Structure of the WAR file:
 +WEB-INF/classes To place your Java classes
 +WEB-INF/lib Hosts the JAVA libraries of LCDS
 +WEB-INF/flex Hosts the XML configuration files
 Remoting-config.xml Destinations to Java classes for remoting
 Messaging-config.xml Destinations for messaging
 Data-Management-config.xml Destinations to Java assemblers
 Proxy-config.xml Destinations to HTTP services
 Services-config.xml Channels configurations
A file named « LCDS.war » is provided to start your Flex/Java projects.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Java and ActionScript value objects
Java VO ActionScript VO
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Java and ActionScript types
STRING STRING
BOOLEAN BOOLEAN
INT, SHORT, BYTE INT
DOUBLE, FLOAT, LONG NUMBER
CALENDAR, DATE DATE
OBJECT OBJECT
COLLECTION ARRAYCOLLECTION
OBJECT[] ARRAY
ORG.W3C.DOCUMENT XML OBJECT
NULL NULL
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex/Java classic architecture
UI LAYER
SERVER
PRESENTATION
/SERVICES/DAO
LAYER
DATABASE/
STORAGE LAYER
LiveCycle Data Services
Java servlet container (tomcat, WAS…)
JDBC
Web browser
JAVA classes/services
Webapp (WAR)
RPC services Messaging Data Mgt
WSDL
AMF over HTTPs
JAVA <-> AMF
EventService.java public getEvents()
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Spring BlazeDS Integration
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Spring & Flex Services
o Intégrer Spring & Flex, c’est donc :
o exposer les interfaces de ces services Flex,
o en laissant le conteneur Spring gérer
o leurs instanciations,
o leurs configurations,
o le cycle de vie de leurs implémentations
o leurs sécurité,
o leurs aspects (transactionels …)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Messaging
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Channels
Flex client
Servlet-based endpoints
AMF Endpoint
HTTPEndpoint
StreamingAMFEndpoint
NIO-based endpoints
NIOAMFEndpoint
NIOHTTPEndpoint
RTMPEndpoint
Socket Server (LCDS only)
HTTPProxy
Message
Data Management
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Publish/Subscribe Messaging
Message
Service
LiveCycle DS / Blaze DS
Endpoint
Publisher
Subscriber
RTMP
AMF
HTTP
Client A
Client B
Client C
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Push - Messaging
Message
Services
LiveCycle DS / Blaze DS
Adapter Y
Adapter X
Messaging
System Y
Messaging
System X
Endpoint
JMS
Provider
JMS Adapter
Publisher
Subscriber
RTMP
AMF
HTTP
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Data Management
Services
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Management Services
LiveCycle Data Services
Data
Service
DAO
Object
Adapter
Hibernate
Adapter
JDBC
Adapter
Hibernate
RDBMS
CFC
Adapter ColdFusion
Endpoint
Client A
Client B
Client C
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Management Benefits
1. Automatic Client to Middle-Tier Synchronization
 Change Tracking
 Automatic invocation of remote services
1. Highlander Principle: there is only one instance of a given entity in
memory at any given time
2. Conflict resolution
3. Offline Synchronization (thanks to Adobe AIR)
4. Lazy loading
5. Paging
6. Cross-client synchronization
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Today’s LiveCycle Data Services
Flex Client Flex Client Flex Client
LCDS
Java Classes
•Thing1.class
•Thing2.class
•Thing3.class
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???
•??.???
•??.???
Java Classes
•Thing1.class
•Thing2.class
•Thing3.class
.NET C# Classes
•Thing1.dll
•Thing2.dll
•Thing3.dll
IIS Plugin
•.NET Remoting
•Messaging
•MSMQ Messaging
.NET Adapter
•Remoting
•Messaging
•Data Mgmt
.NETAdapter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???
•??.???
•??.???
Java Classes
•Thing1.class
•Thing2.class
•Thing3.class
.NET C# Classes
•Thing1.dll
•Thing2.dll
•Thing3.dll
IIS Plugin
•.NET Remoting
•Messaging
•MSMQ Messaging
.NET Adapter
•Remoting
•Messaging
•Data Mgmt
.NETAdapter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Native Java Client
 Java calling of remoting and messaging
destinations
 Full Java implementations of:
 RemoteObject
 Producer
 Consumer
 Channel implementations, etc.
 Includes support for native Android applications
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???
•??.???
•??.???
Java Classes
•Thing1.class
•Thing2.class
•Thing3.class
.NET C# Classes
•Thing1.dll
•Thing2.dll
•Thing3.dll
IIS Plugin
•.NET Remoting
•Messaging
•MSMQ Messaging
.NET Adapter
•Remoting
•Messaging
•Data Mgmt
.NETAdapter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
© 2010 Adobe Systems Incorporated. All Rights Reserved.
HTML5/JavaScript Client
 JavaScript calling of remoting and messaging
destinations without using Flash
 Utilizes HTML5 WebSockets
 Full JavaScript implementations of:
 RemoteObject
 Producer
 Consumer
 Channel implementations, etc.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???
•??.???
•??.???
Java Classes
•Thing1.class
•Thing2.class
•Thing3.class
.NET C# Classes
•Thing1.dll
•Thing2.dll
•Thing3.dll
IIS Plugin
•.NET Remoting
•Messaging
•MSMQ Messaging
.NET Adapter
•Remoting
•Messaging
•Data Mgmt
.NETAdapter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Native Objective C Client
o Objective C calling of remoting and messaging
destinations
o MacOSX and iOS client support
o Full Objective C implementations of:
o RemoteObject
o Producer
o Consumer
o Channel implementations – at least one polling and one real-time.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
iOS APN Push Notifications and Multitasking
o Apple push notifications are used by iPhone, iPad
and iPod Touch (iOS 3.x and higher)
o LCDS/Server-generated notifications to iOS applications
o Notifications: Badges, sounds and custom text alerts
oRespectful of Apple’s rules about message size, type, frequency, etc.
o iSO Multitasking support (iOS 4.x and higher):
oConvenience client-side functions are provided to handle various multitasking-related events such as when
iOS shuts down an app. Functions handle clean disconnects, server notification of disconnect, etc.
© 2010 Adobe Systems Incorporated. All Rights Reserved.
LCDS NEXT
LiveCycle Data Services
Devices & Clients <HTML>
JavaScript
/ AJAX
iOS
preview in January 2011
© 2010 Adobe Systems Incorporated. All Rights Reserved.
JEE
integration sample ?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Multiscreen and Modular Flex Application making
o Demo
Mobile Application Desktop Browser Application
© 2010 Adobe Systems Incorporated. All Rights Reserved.
IOC, utilities
oIoC
oSpring
oParsley
oUtilities
o Leverage JEE
o Java OSS (Apache, Codehaus, Spring, JBoss, etc..)
o Spicelib, KapInspect, Thunderbold, Cairngorm3
102
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Project setup and structure : Best Practice sample : Todo-Max
103
JVM - JBoss/JEE application server
[ Web container, Transaction Manager, JMX, AOP, Cache, JNDI, Logging support)
todo_webapp (war)
Spring
[Micro Container, IOC, AOP, Security, LCDS integration support]
todo_java_flex_service (jar)
NIO Server
Flex-Data Management
Flex-Messaging
Flex-Remoting
todo_java_persistence (jar)
JPA (Hibernate)
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Use this Sample app as a skeleton
104
JVM - JBoss/JEE application server
todo_webapp (war)
Spring
todo_java_service (jar)
NIO Server
Flex-Data Management
Flex-Messaging
Flex-Remoting
todo_java_crm (jar)
JCO
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
JVM - JBoss/JEE application server
Spring
todo_java_service (jar)
NIO Server
Flex-Data Management
Flex-Messaging
Flex-Remoting
todo_java_persistence (jar)
JPA (Hibernate)
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
todo_webapp (war)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Multiscreen and Modular Flex Application making
o Todo Application Architecture
todo_flex_core
Parsley
Spicelib
todo_flex_remoting_dto
Common domain objects
Cairngorm 3
Module
Common infrastructure components
Common application layer (controllers, tasks, commands, ...)
todo_flex_shell todo_flex_android
todo_flex_todolist
todo_flex_todolist_lib
Cairngorm 3
Integration
Presentation layer
Presentation layer
Application layer
Domain layer
Infrastructure layer
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Demo
106
Demo
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory ?
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
108
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
SCM
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
© 2010 Adobe Systems Incorporated. All Rights Reserved. 109
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
• Jira / RallyDev / others
• Perforce / SVN / Git / others
• Bridge /Connect them
• Automate the creation of Perforce jobs (svn changelist)
associated with Bug fixes
• Ease your integration, branch management,
• Ease release managament, by keeping your scm tags
and Jira versioning in synch
• Release notes automation
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
© 2010 Adobe Systems Incorporated. All Rights Reserved. 110
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Continuous
Integration
Server
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 111
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Dependencies
Checks
• Ant + Ivy
• Maven
• Graddle
• …
Build
© 2010 Adobe Systems Incorporated. All Rights Reserved. 112
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Dependencies
Checks• Dependency Management
• Scope
• Transitivity
• Profile
• One common artefacts (swc, swf, jar, war, ear) repository
• proxy, hosted, grouped repositories
© 2010 Adobe Systems Incorporated. All Rights Reserved. 113
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Repository
Server
CodingRulesChecks
• PMD for java
• http://pmd.sourceforge.net/
• FlexPMD for AS3/Flex
• http://sourceforge.net/adobe/flexpmd/home/
• FlexPMD: Your Canary in a Coal Mine – MAX 2010
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
114
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Compilation
Packaging
Unittest
• javac, mxmlc
• JUnit/TestNG, FlexUnit4
• swc, swf ,jar ,war ,ear ,zip ,etc
© 2010 Adobe Systems Incorporated. All Rights Reserved. 115
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
• Maven
• Ant + Ivy
• Graddle
• BuildR
• EasyAnt
• Ant
• Make
Repository
Server
Deployment
• Automated deployment on
• Artefacts repository (for developers, for dependent projects)
• CI test server (for developers’s check, automated functional
testing)
• QA test servers
• On demand for Release Candidate smoke test
• UX review & Product review
• Test, stage and production ready deployment
• Externalized configuration (jndi)
• Profiled build (when platform dependent)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
116
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Repository
Server
• javac, mxmlc
• JUnit/TestNG, FlexUnit4
• swc, swf ,jar ,war ,ear ,zip ,etc
AutomatedTests
• Automated Functional Test
• RIATest : http://www.riatest.com
• FlexMonkey
• QTP
• Leveraging the Flex SDK automation framework
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
117
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
• Maven
• Ant + Ivy
• Graddle
• BuildR
• EasyAnt
• Ant
• Make
Repository
Server
• javac, mxmlc
• JUnit/TestNG, FlexUnit4
• swc, swf ,jar ,war ,ear ,zip ,etc
JavaDocs,ASDocs,
QualityReports
• Developer docs :
• Compilation reports
• Javadoc, ASdoc
• Dev/QA docs
• Unit Test reports
• Test Coverage reports
• PMD reports
• Dependencies
• Dependency convergent reports
• etc …
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory
Automation for the People (because Everybody Doing It Manually Hurts)
118
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Repository
Server
CI & QA Test Servers
Quality & Doc
Servers
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
SCM
Changelist
/ Jobs
Tasks /
Bug Tracking
Server
SCM
Repository
Server
• javac, mxmlc
• JUnit/TestNG, FlexUnit4
• swc, swf ,jar ,war ,ear ,zip ,etc
QualityDashboard
• Quality Dashboard
• Sonar : http://www.sonarsource.org/
• Home made
• Others
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tasks /
Bug Tracking
Server
CI & QA Test Servers
Quality & Doc
Servers
119
Dependencies
Checks
Compilation
CodingRulesChecks
Deployment
Packaging
Unittest
JavaDocs,ASDocs,
QualityReports
AutomatedTests
Continuous
Integration
Server
Modification
Checks
Trigger
QualityDashboard
Changelist
/ Jobs
Repository
Server
Local
Builds and
Local App
Servers
Product Owner / User
Champions / UX Designer
QA Engineers
SCM
swc,swf, jar,war
push & pull
deploy
Update &
CommitUpdate
Fetch swc,swf,jar
and war
Checks/Notifications
Flex & Java
Developers
Smoke / Acceptance
Test s
Func. and UX Feedbacks
Checks & Tests
Build
• Aim for a full IDE integration :
• Plugins
•Mylin, hudson, SCM, FlexPMD,
FlexFormatter, FlexUnit,
CodeCoverage, etc…
• Shared properties and configuration
• Scripts
Product Owner / User
Champions / UX Designer
QA Engineers
Flex & Java
Developers
© 2010 Adobe Systems Incorporated. All Rights Reserved. 120
References
© 2010 Adobe Systems Incorporated. All Rights Reserved. 121
Books /Articles
« Effective Java: Programming Language Guide », Joshua Bloch
« OO Design Quality Metrics », Robert Martin
http://www.octo.com/Java-Productivity-Primer.10/Publications
http://lil.univ-littoral.fr/~oumoumsack/qualite/
http://www.objectmentor.com/resources/articles/Principles_and_Pa
tterns.pdf
http://www.infoq.com/presentations/effective-api-design
http://www.infoq.com/news/Ken-Schwaber-Sacrificing-Quality
http://www.quotegarden.com/programming.html
http://www.slideshare.net/francois.le.droff/solutions-linux2008-
construire-sa-vision-qualite
http://www.slideshare.net/francoisledroff/flex-continuous-quality-
builds-flex-ant-maven
http://www.slideshare.net/francoisledroff/tesytquality-best-
practices-toolkit-for-enterprise-flex
Photo /Graphics
https://duke.dev.java.net/images/comfyChair/index.html
http://blog.theflashblog.com/?p=2436
http://www.riagora.com/
http://coenraets.org/blog/
Blogs:
http://blog.theflashblog.com/?p=2436
http://www.riagora.com/
http://coenraets.org/blog/
Tools
Cairngorm: https://sourceforge.net/adobe/cairngorm/home/
FlexUnit: http://flexunit.org/
Parsley/Spicelib: http://www.spicefactory.org
KapInsect: http://lab.kapit.fr/display/kapinspect/Kap+Inspect
Thunderbolt: http://github.com/sectore/ThunderBoltAS3
Flexlib: http://code.google.com/p/flexlib/
FlexPMD: https://sourceforge.net/adobe/flexpmd/home/
Ant: http://ant.apache.org/
Maven: http://maven.apache.org/
Ivy: http://www.jaya.free.fr/ivy/
Sonar: http://www.sonarsource.org/
PMD: http://pmd.sourceforge.net/
Spring: http://www.springsource.org/
JBoss: http://www.jboss.org
Dozer: http://dozer.sourceforge.net/
Adobe Docs
ActionScript Developer Site-
http://www.adobe.com/devnet/actionscript/
Flex Developer Site -
http://www.adobe.com/devnet/flex/documentation.html
LCDS Doc Site -
http://livedocs.adobe.com/livecycle/8.2/programLC/program
mer/lcds/help.html?content=lcconfig_4.html
References
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Questions ?

Mais conteúdo relacionado

Mais procurados

Flash Applications For Mobile
Flash Applications For MobileFlash Applications For Mobile
Flash Applications For MobileSerge Jespers
 
Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michaelMichael Chaize
 
Building Dynamic Web Applications on i5 with PHP
Building Dynamic Web Applications on i5 with PHPBuilding Dynamic Web Applications on i5 with PHP
Building Dynamic Web Applications on i5 with PHPJohn Coggeshall
 
Developing SIP Applications
Developing SIP ApplicationsDeveloping SIP Applications
Developing SIP ApplicationsVoxeo Corp
 
Development mobile app cross device
Development mobile app cross deviceDevelopment mobile app cross device
Development mobile app cross devicePhuong Nguyen
 
Creating Flash Content for Mobile Devices
Creating Flash Content for Mobile DevicesCreating Flash Content for Mobile Devices
Creating Flash Content for Mobile Devicespaultrani
 

Mais procurados (6)

Flash Applications For Mobile
Flash Applications For MobileFlash Applications For Mobile
Flash Applications For Mobile
 
Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michael
 
Building Dynamic Web Applications on i5 with PHP
Building Dynamic Web Applications on i5 with PHPBuilding Dynamic Web Applications on i5 with PHP
Building Dynamic Web Applications on i5 with PHP
 
Developing SIP Applications
Developing SIP ApplicationsDeveloping SIP Applications
Developing SIP Applications
 
Development mobile app cross device
Development mobile app cross deviceDevelopment mobile app cross device
Development mobile app cross device
 
Creating Flash Content for Mobile Devices
Creating Flash Content for Mobile DevicesCreating Flash Content for Mobile Devices
Creating Flash Content for Mobile Devices
 

Destaque

Introducción a la historia de la fotografía completa
Introducción a la historia de la fotografía completaIntroducción a la historia de la fotografía completa
Introducción a la historia de la fotografía completaalbaanaya
 
ponencia II
ponencia IIponencia II
ponencia IIportujpc
 
Composición fotográfica clase 3
Composición fotográfica clase 3Composición fotográfica clase 3
Composición fotográfica clase 3Benotus
 
Grado en Publicidad y Relaciones Públicas
Grado en Publicidad y Relaciones PúblicasGrado en Publicidad y Relaciones Públicas
Grado en Publicidad y Relaciones Públicasceciliavelez17
 
Diseño de la comunicación accesible_programa
Diseño de la comunicación accesible_programaDiseño de la comunicación accesible_programa
Diseño de la comunicación accesible_programaAvanti Avanti Estudio S.L.
 
Curso de Iniciación a la Fotografía Nocturna por Carlos Serrano
Curso de Iniciación a la Fotografía Nocturna por Carlos SerranoCurso de Iniciación a la Fotografía Nocturna por Carlos Serrano
Curso de Iniciación a la Fotografía Nocturna por Carlos SerranoLabformacion
 
Prácticas de fotografia
Prácticas de fotografiaPrácticas de fotografia
Prácticas de fotografiaAna Oceja Uribe
 

Destaque (8)

Introducción a la historia de la fotografía completa
Introducción a la historia de la fotografía completaIntroducción a la historia de la fotografía completa
Introducción a la historia de la fotografía completa
 
Presentacion1 mag
Presentacion1 magPresentacion1 mag
Presentacion1 mag
 
ponencia II
ponencia IIponencia II
ponencia II
 
Composición fotográfica clase 3
Composición fotográfica clase 3Composición fotográfica clase 3
Composición fotográfica clase 3
 
Grado en Publicidad y Relaciones Públicas
Grado en Publicidad y Relaciones PúblicasGrado en Publicidad y Relaciones Públicas
Grado en Publicidad y Relaciones Públicas
 
Diseño de la comunicación accesible_programa
Diseño de la comunicación accesible_programaDiseño de la comunicación accesible_programa
Diseño de la comunicación accesible_programa
 
Curso de Iniciación a la Fotografía Nocturna por Carlos Serrano
Curso de Iniciación a la Fotografía Nocturna por Carlos SerranoCurso de Iniciación a la Fotografía Nocturna por Carlos Serrano
Curso de Iniciación a la Fotografía Nocturna por Carlos Serrano
 
Prácticas de fotografia
Prácticas de fotografiaPrácticas de fotografia
Prácticas de fotografia
 

Semelhante a Soirée Flex/RIA au Nantes jug

Flash/AIRの最新情報及びARMとの協業
Flash/AIRの最新情報及びARMとの協業Flash/AIRの最新情報及びARMとの協業
Flash/AIRの最新情報及びARMとの協業Andy Hall
 
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...François Le Droff
 
Mobile Development With Flash Platform
Mobile Development With Flash PlatformMobile Development With Flash Platform
Mobile Development With Flash PlatformMihai Corlan
 
Over the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidOver the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidMichael Chaize
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applicationsMichael Chaize
 
Adobe jax2010 1_dashboard
Adobe jax2010 1_dashboardAdobe jax2010 1_dashboard
Adobe jax2010 1_dashboardguest9776673
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile developmentMichael Chaize
 
Group 5 Report Effect
Group 5 Report EffectGroup 5 Report Effect
Group 5 Report Effectjorence
 
Group 5 Report Effect
Group 5 Report EffectGroup 5 Report Effect
Group 5 Report Effectjorence
 
Flash Platform for Devices
Flash Platform for DevicesFlash Platform for Devices
Flash Platform for DevicesSerge Jespers
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRJoseph Labrecque
 
Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Rupesh Kumar
 
Getting started with flash mobile development
Getting started with flash mobile developmentGetting started with flash mobile development
Getting started with flash mobile developmentMihai Corlan
 
Creating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesCreating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesChris Griffith
 
Flash platform fitc
Flash platform fitcFlash platform fitc
Flash platform fitcMark Doherty
 
Adobe flash platform java
Adobe flash platform javaAdobe flash platform java
Adobe flash platform javaCh'ti JUG
 

Semelhante a Soirée Flex/RIA au Nantes jug (20)

W-JAX Keynote 2010
W-JAX Keynote 2010W-JAX Keynote 2010
W-JAX Keynote 2010
 
Flash/AIRの最新情報及びARMとの協業
Flash/AIRの最新情報及びARMとの協業Flash/AIRの最新情報及びARMとの協業
Flash/AIRの最新情報及びARMとの協業
 
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...
Flex and LiveCycle Data Services Best Practices from the Trenches (Adobe MAX ...
 
Mobile Development With Flash Platform
Mobile Development With Flash PlatformMobile Development With Flash Platform
Mobile Development With Flash Platform
 
Over the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidOver the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for Android
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applications
 
Adobe jax2010 1_dashboard
Adobe jax2010 1_dashboardAdobe jax2010 1_dashboard
Adobe jax2010 1_dashboard
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile development
 
Group 5 Report Effect
Group 5 Report EffectGroup 5 Report Effect
Group 5 Report Effect
 
Group 5 Report Effect
Group 5 Report EffectGroup 5 Report Effect
Group 5 Report Effect
 
Flash Platform for Devices
Flash Platform for DevicesFlash Platform for Devices
Flash Platform for Devices
 
AIR for Higher Education
AIR for Higher EducationAIR for Higher Education
AIR for Higher Education
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIR
 
Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011
 
Getting started with flash mobile development
Getting started with flash mobile developmentGetting started with flash mobile development
Getting started with flash mobile development
 
Flex3
Flex3Flex3
Flex3
 
Eye Os(Cloud Opearating System)
Eye Os(Cloud Opearating System)Eye Os(Cloud Opearating System)
Eye Os(Cloud Opearating System)
 
Creating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesCreating Compelling Mobile User Experiences
Creating Compelling Mobile User Experiences
 
Flash platform fitc
Flash platform fitcFlash platform fitc
Flash platform fitc
 
Adobe flash platform java
Adobe flash platform javaAdobe flash platform java
Adobe flash platform java
 

Mais de François Le Droff

Implémentez une intégration avec AEM presque sans code
Implémentez une intégration avec AEM presque sans codeImplémentez une intégration avec AEM presque sans code
Implémentez une intégration avec AEM presque sans codeFrançois Le Droff
 
Master chef and puppet show - Devoxx France 2014
Master chef and puppet show - Devoxx France 2014Master chef and puppet show - Devoxx France 2014
Master chef and puppet show - Devoxx France 2014François Le Droff
 
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresMaster Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresFrançois Le Droff
 
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open sourceSoirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open sourceFrançois Le Droff
 
Quality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise FlexQuality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise FlexFrançois Le Droff
 
Flex Services And Spring with Spring-Flex ParisJug
Flex Services And Spring with Spring-Flex ParisJugFlex Services And Spring with Spring-Flex ParisJug
Flex Services And Spring with Spring-Flex ParisJugFrançois Le Droff
 
The Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingThe Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingFrançois Le Droff
 
Flex Continuous Quality Builds Flex & (Ant || Maven)
Flex Continuous Quality Builds Flex & (Ant || Maven)Flex Continuous Quality Builds Flex & (Ant || Maven)
Flex Continuous Quality Builds Flex & (Ant || Maven)François Le Droff
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
 

Mais de François Le Droff (12)

Implémentez une intégration avec AEM presque sans code
Implémentez une intégration avec AEM presque sans codeImplémentez une intégration avec AEM presque sans code
Implémentez une intégration avec AEM presque sans code
 
Master chef and puppet show - Devoxx France 2014
Master chef and puppet show - Devoxx France 2014Master chef and puppet show - Devoxx France 2014
Master chef and puppet show - Devoxx France 2014
 
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresMaster Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
 
Flex & Java @ TourJUG
Flex & Java @ TourJUGFlex & Java @ TourJUG
Flex & Java @ TourJUG
 
Flex & Java @ NormandieJUG
Flex & Java @ NormandieJUGFlex & Java @ NormandieJUG
Flex & Java @ NormandieJUG
 
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open sourceSoirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
 
Quality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise FlexQuality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise Flex
 
Flash Catalyst Jug
Flash Catalyst JugFlash Catalyst Jug
Flash Catalyst Jug
 
Flex Services And Spring with Spring-Flex ParisJug
Flex Services And Spring with Spring-Flex ParisJugFlex Services And Spring with Spring-Flex ParisJug
Flex Services And Spring with Spring-Flex ParisJug
 
The Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingThe Spring of Adobe Flex Remoting
The Spring of Adobe Flex Remoting
 
Flex Continuous Quality Builds Flex & (Ant || Maven)
Flex Continuous Quality Builds Flex & (Ant || Maven)Flex Continuous Quality Builds Flex & (Ant || Maven)
Flex Continuous Quality Builds Flex & (Ant || Maven)
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 

Último

Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 

Último (20)

Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 

Soirée Flex/RIA au Nantes jug

  • 1. © 2010 Adobe Systems Incorporated. All Rights Reserved. Soirée Flex & RIA Nantes JUG
  • 2. © 2010 Adobe Systems Incorporated. All Rights Reserved. About me : François Le Droff o “Just another Java guy” (doing Flex) o 11 years in web 1+n.0 o Open Source Software Geek : o FlexPMD, Cairngorm o Ossgtp, ParisJUG, et TTFX o French JUGs, MAX, et Solution Linux o http://www.droff.com o http://twitter.com/francoisledroff o ledroff adobe.com<at>
  • 3. © 2010 Adobe Systems Incorporated. All Rights Reserved.3
  • 4. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 5. © 2010 Adobe Systems Incorporated. All Rights Reserved. RIA?
  • 6. © 2010 Adobe Systems Incorporated. All Rights Reserved. Sexy and funky applications !
  • 7. © 2010 Adobe Systems Incorporated. All Rights Reserved. ® Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential. What Are Intuitive User Experiences?  Effective, Efficient, Engaging, Easy to learn, Error free  Personalized, responsive experiences across devices and channels  Communication & collaboration in context  Harmonization of backend processes and services
  • 8. © 2010 Adobe Systems Incorporated. All Rights Reserved. 8 Rich User Experiences: Opportunities for internal users Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential.
  • 9. © 2010 Adobe Systems Incorporated. All Rights Reserved. ® Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential. Rich User Experiences: Opportunities for internal users 5 mins 20 secs Increase productivity & improve decision making
  • 10. © 2010 Adobe Systems Incorporated. All Rights Reserved. 10Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential. NATO
  • 11. © 2010 Adobe Systems Incorporated. All Rights Reserved. ® Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential. NATO
  • 12. © 2010 Adobe Systems Incorporated. All Rights Reserved. ® Copyright 2009Adobe Systems Incorporated. All rights reserved. Adobe confidential. NATO From a system-centric view to a user-centric application.
  • 13. © 2010 Adobe Systems Incorporated. All Rights Reserved. 13 Hendrix
  • 14. © 2010 Adobe Systems Incorporated. All Rights Reserved. 14 o Before Hendrix
  • 15. © 2010 Adobe Systems Incorporated. All Rights Reserved. o After 15 Hendrix
  • 16. © 2010 Adobe Systems Incorporated. All Rights Reserved. 16 Hendrix: APIs , UIs, avoid unnecessary complexity and training
  • 17. © 2010 Adobe Systems Incorporated. All Rights Reserved. First-class interfaces
  • 18. © 2010 Adobe Systems Incorporated. All Rights Reserved. Productive users Productive developers Productivity by Design Productivity by design
  • 19. © 2010 Adobe Systems Incorporated. All Rights Reserved. Flash?
  • 20. © 2010 Adobe Systems Incorporated. All Rights Reserved. FLASH PLAYER 10.1
  • 21. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 22. © 2010 Adobe Systems Incorporated. All Rights Reserved. Consumer Electronics Personal Computers Mobile Phones
  • 23. © 2010 Adobe Systems Incorporated. All Rights Reserved. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Partenaires technologiques Open Screen Project Diffuseurs de contenu
  • 24. © 2010 Adobe Systems Incorporated. All Rights Reserved. Flash Player 10.1 Flash Player 10.1 Google TV
  • 25. © 2010 Adobe Systems Incorporated. All Rights Reserved. Increased software rendering performance on mobile over 87% Reduced memory consumption on mobile by over 55% Flash Player 10.1 is designed for mobility  Performance  Graphics hardware acceleration  Audio/video hardware decoding  Memory, battery & CPU optimizations  Optimized SWF Management  Sleep mode  Device integration  Multi-touch and gestures  Accelerometer  Screen orientation  Mobile text input  Porting kit for OSP partners
  • 26. © 2010 Adobe Systems Incorporated. All Rights Reserved. o Brings full Flash Player feature set to devices o New Features: o Multi-touch & gestures o Accelerometer o Screen orientation o Mobile text input o Device capabilities discovery o Globalization support (GSLib) o Mobile settings manager o Global error handling Flash Player 10.1
  • 27. © 2010 Adobe Systems Incorporated. All Rights Reserved. AIR ?
  • 28. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE AIR 2.0
  • 29. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE AIR 2.0 Flash Player 10.1 + WebKit + SQLite + Desktop APIs --------------------- = Adobe AIR
  • 30. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE AIR 2.0 Xplatform runtime Drag & Drop files / Desktop Local system access Multiple windows Transparent applications Native Process, UDP, USB...
  • 31. © 2010 Adobe Systems Incorporated. All Rights Reserved. DETECT AND BROWSE USB STORAGE
  • 32. © 2010 Adobe Systems Incorporated. All Rights Reserved. UDP Network Protocols PEER 2 PEER
  • 33. © 2010 Adobe Systems Incorporated. All Rights Reserved. Documents and Processes OS INTEGRATION
  • 34. © 2010 Adobe Systems Incorporated. All Rights Reserved. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Demos
  • 35. © 2010 Adobe Systems Incorporated. All Rights Reserved. Flex ?
  • 36. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4
  • 37. © 2010 Adobe Systems Incorporated. All Rights Reserved. Basics Flash Builder IDE Flex SDK Flex Class Library MXML ActionScript Compile SOAP HTTP/S AMF/S RTMP/S Web Server Existing Applications & Infrastructure J2EE Application Server LC Data Services XML/HTTP REST SOAP Web Services Browser Flash Player
  • 38. © 2010 Adobe Systems Incorporated. All Rights Reserved. OLD COMPONENT MODEL FLEX FRAMEWORK 3 Graphics Layout Animation Parts States Behavior Logic Data Component / Skin
  • 39. © 2010 Adobe Systems Incorporated. All Rights Reserved. SPARK COMPONENT MODEL FLEX FRAMEWORK 4 ActionScript MXML Graphics Layout Animation Parts States Component Skin CSS properties Behavior Logic Data
  • 40. © 2010 Adobe Systems Incorporated. All Rights Reserved. SPARK COMPONENT THEME FLEX FRAMEWORK 4
  • 41. © 2010 Adobe Systems Incorporated. All Rights Reserved. NEW VIDEO COMPONENT FLEX FRAMEWORK 4
  • 42. © 2010 Adobe Systems Incorporated. All Rights Reserved. TEXT LAYOUT FRAMEWORK SUPPORT FLEX FRAMEWORK 4
  • 43. © 2010 Adobe Systems Incorporated. All Rights Reserved. NEW STATES MODEL FLEX FRAMEWORK 4
  • 44. © 2010 Adobe Systems Incorporated. All Rights Reserved. NEW LAYOUT MODEL FLEX FRAMEWORK 4 http://www.rialvalue.com/coverflow/
  • 45. © 2010 Adobe Systems Incorporated. All Rights Reserved. OLD MX COMPONENTS FLEX FRAMEWORK 4 http://tinyurl.com/notspark
  • 46. © 2010 Adobe Systems Incorporated. All Rights Reserved. HTML5 ?
  • 47. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 48. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 49. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 50. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 51. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 52. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 53. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 54. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 55. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 56. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 57. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 58. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 59. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 60. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 61. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 62. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 63. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 64. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 65. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 66. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 67. © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 68. © 2010 Adobe Systems Incorporated. All Rights Reserved. &
  • 69. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4 HTTP Request & WebServices
  • 70. © 2010 Adobe Systems Incorporated. All Rights Reserved.2008 Adobe Systems Incorporated. All Rights Reserved. Flex/JSP architecture UI LAYER SERVER PRESENTATION /SERVICES/DAO LAYER DATABASE/ STORAGE LAYER listEvents.jsp Java servlet container (tomcat, WAS…) JDBC Web browser JAVA classes/services Webapp (WAR) EventService.java public getEvents() WSDL XML on HTTP(s)
  • 71. © 2010 Adobe Systems Incorporated. All Rights Reserved.  Same with PHP, Ruby, Perl, ASP...  Returns XML, text, tabulated text, JSON...  Use send() to launch the request  Result and Fault events  New data-services wizard in Flash Builder 4 to generate a STUB on the client side Flex and <HTTPRequest>
  • 72. © 2010 Adobe Systems Incorporated. All Rights Reserved.  Web Services Description Language 1.1 (WSDL 1.1) document  The Flex web service API generally supports Simple Object Access Protocol (SOAP) 1.1, XML Schema 1.0, and WSDL 1.1 RPC-encoded, RPC-literal, and document-literal (bare and wrapped style parameters).  Flex supports web service requests and results that are formatted as SOAP messages Flex and <Webservice>
  • 73. © 2010 Adobe Systems Incorporated. All Rights Reserved. AMFPublished in December 2007 XML 5000 rows ?1.1Mo 29Ko
  • 74. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4 Remoting AMF
  • 75. © 2010 Adobe Systems Incorporated. All Rights Reserved. LiveCycle Data Services ES LiveCycle Data Services is a set of Java EE components and APIs used to: Create data-intensive RIAs with less code, less risk, and accelerated time to market due to an innovative client- server programming model Integrate RIAs with existing applications, back-end data, and JEE infrastructure Easily integrate RIAs with LiveCycle document and process services Enable collaboration, offline AIR and real-time data streaming applications to be built in a scalable and reliable manner with robust publish and subscribe messaging Generate PDF documents from RIAs that include graphical assets LiveCycle Data Services ES Data Management RPC Services Messaging Service Adapters Data Synchronization Off-line Applications Data Paging Web Service HTTP Service Remote Object Service Publish & Subscribe Collaboration Real Time Data Push Proxy Service Web-tier Compiler Portal Deployment RIA-PDF Generation LiveCycle ColdFusion Hibernate SQL JMS Java Custom…
  • 76. © 2010 Adobe Systems Incorporated. All Rights Reserved. BlazeDS is a set of Java EE components and APIs, and a subset of LiveCycle Data Services: - Free and open source. - High performance data transfer for more responsive applications using AMF - Real-time server push over standard HTTP - Full pub/sub messaging that extends existing messaging infrastructure LiveCycle Data Services ES Data Management RPC Services Messaging Service Adapters Data Synchronization Off-line Applications Data Paging Web Service HTTP Service Remote Object Service Publish & Subscribe Collaboration Real Time Data Push Proxy Service Web-tier Compiler Portal Deployment RIA-PDF Generation LiveCycle ColdFusion Hibernate SQL JMS Java Custom…
  • 77. © 2010 Adobe Systems Incorporated. All Rights Reserved. LCDS.war  Structure of the WAR file:  +WEB-INF/classes To place your Java classes  +WEB-INF/lib Hosts the JAVA libraries of LCDS  +WEB-INF/flex Hosts the XML configuration files  Remoting-config.xml Destinations to Java classes for remoting  Messaging-config.xml Destinations for messaging  Data-Management-config.xml Destinations to Java assemblers  Proxy-config.xml Destinations to HTTP services  Services-config.xml Channels configurations A file named « LCDS.war » is provided to start your Flex/Java projects.
  • 78. © 2010 Adobe Systems Incorporated. All Rights Reserved. Java and ActionScript value objects Java VO ActionScript VO
  • 79. © 2010 Adobe Systems Incorporated. All Rights Reserved. Java and ActionScript types STRING STRING BOOLEAN BOOLEAN INT, SHORT, BYTE INT DOUBLE, FLOAT, LONG NUMBER CALENDAR, DATE DATE OBJECT OBJECT COLLECTION ARRAYCOLLECTION OBJECT[] ARRAY ORG.W3C.DOCUMENT XML OBJECT NULL NULL
  • 80. © 2010 Adobe Systems Incorporated. All Rights Reserved. Flex/Java classic architecture UI LAYER SERVER PRESENTATION /SERVICES/DAO LAYER DATABASE/ STORAGE LAYER LiveCycle Data Services Java servlet container (tomcat, WAS…) JDBC Web browser JAVA classes/services Webapp (WAR) RPC services Messaging Data Mgt WSDL AMF over HTTPs JAVA <-> AMF EventService.java public getEvents()
  • 81. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4 Spring BlazeDS Integration
  • 82. © 2010 Adobe Systems Incorporated. All Rights Reserved. Spring & Flex Services o Intégrer Spring & Flex, c’est donc : o exposer les interfaces de ces services Flex, o en laissant le conteneur Spring gérer o leurs instanciations, o leurs configurations, o le cycle de vie de leurs implémentations o leurs sécurité, o leurs aspects (transactionels …)
  • 83. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4 Messaging
  • 84. © 2010 Adobe Systems Incorporated. All Rights Reserved. Channels Flex client Servlet-based endpoints AMF Endpoint HTTPEndpoint StreamingAMFEndpoint NIO-based endpoints NIOAMFEndpoint NIOHTTPEndpoint RTMPEndpoint Socket Server (LCDS only) HTTPProxy Message Data Management
  • 85. © 2010 Adobe Systems Incorporated. All Rights Reserved. Publish/Subscribe Messaging Message Service LiveCycle DS / Blaze DS Endpoint Publisher Subscriber RTMP AMF HTTP Client A Client B Client C
  • 86. © 2010 Adobe Systems Incorporated. All Rights Reserved. Data Push - Messaging Message Services LiveCycle DS / Blaze DS Adapter Y Adapter X Messaging System Y Messaging System X Endpoint JMS Provider JMS Adapter Publisher Subscriber RTMP AMF HTTP
  • 87. © 2010 Adobe Systems Incorporated. All Rights Reserved. ADOBE FLEX 4 Data Management Services
  • 88. © 2010 Adobe Systems Incorporated. All Rights Reserved. Data Management Services LiveCycle Data Services Data Service DAO Object Adapter Hibernate Adapter JDBC Adapter Hibernate RDBMS CFC Adapter ColdFusion Endpoint Client A Client B Client C
  • 89. © 2010 Adobe Systems Incorporated. All Rights Reserved. Data Management Benefits 1. Automatic Client to Middle-Tier Synchronization  Change Tracking  Automatic invocation of remote services 1. Highlander Principle: there is only one instance of a given entity in memory at any given time 2. Conflict resolution 3. Offline Synchronization (thanks to Adobe AIR) 4. Lazy loading 5. Paging 6. Cross-client synchronization
  • 90. © 2010 Adobe Systems Incorporated. All Rights Reserved. Today’s LiveCycle Data Services Flex Client Flex Client Flex Client LCDS Java Classes •Thing1.class •Thing2.class •Thing3.class
  • 91. © 2010 Adobe Systems Incorporated. All Rights Reserved. Tomorrow’s LiveCycle Data Services LCDS NET •??.??? •??.??? •??.??? Java Classes •Thing1.class •Thing2.class •Thing3.class .NET C# Classes •Thing1.dll •Thing2.dll •Thing3.dll IIS Plugin •.NET Remoting •Messaging •MSMQ Messaging .NET Adapter •Remoting •Messaging •Data Mgmt .NETAdapter Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
  • 92. © 2010 Adobe Systems Incorporated. All Rights Reserved. Tomorrow’s LiveCycle Data Services LCDS NET •??.??? •??.??? •??.??? Java Classes •Thing1.class •Thing2.class •Thing3.class .NET C# Classes •Thing1.dll •Thing2.dll •Thing3.dll IIS Plugin •.NET Remoting •Messaging •MSMQ Messaging .NET Adapter •Remoting •Messaging •Data Mgmt .NETAdapter Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
  • 93. © 2010 Adobe Systems Incorporated. All Rights Reserved. Native Java Client  Java calling of remoting and messaging destinations  Full Java implementations of:  RemoteObject  Producer  Consumer  Channel implementations, etc.  Includes support for native Android applications
  • 94. © 2010 Adobe Systems Incorporated. All Rights Reserved. Tomorrow’s LiveCycle Data Services LCDS NET •??.??? •??.??? •??.??? Java Classes •Thing1.class •Thing2.class •Thing3.class .NET C# Classes •Thing1.dll •Thing2.dll •Thing3.dll IIS Plugin •.NET Remoting •Messaging •MSMQ Messaging .NET Adapter •Remoting •Messaging •Data Mgmt .NETAdapter Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
  • 95. © 2010 Adobe Systems Incorporated. All Rights Reserved. HTML5/JavaScript Client  JavaScript calling of remoting and messaging destinations without using Flash  Utilizes HTML5 WebSockets  Full JavaScript implementations of:  RemoteObject  Producer  Consumer  Channel implementations, etc.
  • 96. © 2010 Adobe Systems Incorporated. All Rights Reserved. Tomorrow’s LiveCycle Data Services LCDS NET •??.??? •??.??? •??.??? Java Classes •Thing1.class •Thing2.class •Thing3.class .NET C# Classes •Thing1.dll •Thing2.dll •Thing3.dll IIS Plugin •.NET Remoting •Messaging •MSMQ Messaging .NET Adapter •Remoting •Messaging •Data Mgmt .NETAdapter Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
  • 97. © 2010 Adobe Systems Incorporated. All Rights Reserved. Native Objective C Client o Objective C calling of remoting and messaging destinations o MacOSX and iOS client support o Full Objective C implementations of: o RemoteObject o Producer o Consumer o Channel implementations – at least one polling and one real-time.
  • 98. © 2010 Adobe Systems Incorporated. All Rights Reserved. iOS APN Push Notifications and Multitasking o Apple push notifications are used by iPhone, iPad and iPod Touch (iOS 3.x and higher) o LCDS/Server-generated notifications to iOS applications o Notifications: Badges, sounds and custom text alerts oRespectful of Apple’s rules about message size, type, frequency, etc. o iSO Multitasking support (iOS 4.x and higher): oConvenience client-side functions are provided to handle various multitasking-related events such as when iOS shuts down an app. Functions handle clean disconnects, server notification of disconnect, etc.
  • 99. © 2010 Adobe Systems Incorporated. All Rights Reserved. LCDS NEXT LiveCycle Data Services Devices & Clients <HTML> JavaScript / AJAX iOS preview in January 2011
  • 100. © 2010 Adobe Systems Incorporated. All Rights Reserved. JEE integration sample ?
  • 101. © 2010 Adobe Systems Incorporated. All Rights Reserved. Multiscreen and Modular Flex Application making o Demo Mobile Application Desktop Browser Application
  • 102. © 2010 Adobe Systems Incorporated. All Rights Reserved. IOC, utilities oIoC oSpring oParsley oUtilities o Leverage JEE o Java OSS (Apache, Codehaus, Spring, JBoss, etc..) o Spicelib, KapInspect, Thunderbold, Cairngorm3 102
  • 103. © 2010 Adobe Systems Incorporated. All Rights Reserved. Project setup and structure : Best Practice sample : Todo-Max 103 JVM - JBoss/JEE application server [ Web container, Transaction Manager, JMX, AOP, Cache, JNDI, Logging support) todo_webapp (war) Spring [Micro Container, IOC, AOP, Security, LCDS integration support] todo_java_flex_service (jar) NIO Server Flex-Data Management Flex-Messaging Flex-Remoting todo_java_persistence (jar) JPA (Hibernate) Dozer [CRM and CTI entity 2 DTOs mapper] Flash Player Dev/CI/QA/Stage/Prod Parameters : JNDI
  • 104. © 2010 Adobe Systems Incorporated. All Rights Reserved. Use this Sample app as a skeleton 104 JVM - JBoss/JEE application server todo_webapp (war) Spring todo_java_service (jar) NIO Server Flex-Data Management Flex-Messaging Flex-Remoting todo_java_crm (jar) JCO Dozer [CRM and CTI entity 2 DTOs mapper] Flash Player Dev/CI/QA/Stage/Prod Parameters : JNDI JVM - JBoss/JEE application server Spring todo_java_service (jar) NIO Server Flex-Data Management Flex-Messaging Flex-Remoting todo_java_persistence (jar) JPA (Hibernate) Dozer [CRM and CTI entity 2 DTOs mapper] Flash Player Dev/CI/QA/Stage/Prod Parameters : JNDI todo_webapp (war)
  • 105. © 2010 Adobe Systems Incorporated. All Rights Reserved. Multiscreen and Modular Flex Application making o Todo Application Architecture todo_flex_core Parsley Spicelib todo_flex_remoting_dto Common domain objects Cairngorm 3 Module Common infrastructure components Common application layer (controllers, tasks, commands, ...) todo_flex_shell todo_flex_android todo_flex_todolist todo_flex_todolist_lib Cairngorm 3 Integration Presentation layer Presentation layer Application layer Domain layer Infrastructure layer
  • 106. © 2010 Adobe Systems Incorporated. All Rights Reserved. Demo 106 Demo
  • 107. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory ?
  • 108. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory Automation for the People (because Everybody Doing It Manually Hurts) 108 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Changelist / Jobs Tasks / Bug Tracking Server Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers SCM swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build
  • 109. © 2010 Adobe Systems Incorporated. All Rights Reserved. 109 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM • Jira / RallyDev / others • Perforce / SVN / Git / others • Bridge /Connect them • Automate the creation of Perforce jobs (svn changelist) associated with Bug fixes • Ease your integration, branch management, • Ease release managament, by keeping your scm tags and Jira versioning in synch • Release notes automation SCM Changelist / Jobs Tasks / Bug Tracking Server SCM
  • 110. © 2010 Adobe Systems Incorporated. All Rights Reserved. 110 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Continuous Integration Server Software factory Automation for the People (because Everybody Doing It Manually Hurts)
  • 111. © 2010 Adobe Systems Incorporated. All Rights Reserved. 111 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Dependencies Checks • Ant + Ivy • Maven • Graddle • … Build
  • 112. © 2010 Adobe Systems Incorporated. All Rights Reserved. 112 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Dependencies Checks• Dependency Management • Scope • Transitivity • Profile • One common artefacts (swc, swf, jar, war, ear) repository • proxy, hosted, grouped repositories
  • 113. © 2010 Adobe Systems Incorporated. All Rights Reserved. 113 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Repository Server CodingRulesChecks • PMD for java • http://pmd.sourceforge.net/ • FlexPMD for AS3/Flex • http://sourceforge.net/adobe/flexpmd/home/ • FlexPMD: Your Canary in a Coal Mine – MAX 2010
  • 114. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory Automation for the People (because Everybody Doing It Manually Hurts) 114 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Compilation Packaging Unittest • javac, mxmlc • JUnit/TestNG, FlexUnit4 • swc, swf ,jar ,war ,ear ,zip ,etc
  • 115. © 2010 Adobe Systems Incorporated. All Rights Reserved. 115 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM • Maven • Ant + Ivy • Graddle • BuildR • EasyAnt • Ant • Make Repository Server Deployment • Automated deployment on • Artefacts repository (for developers, for dependent projects) • CI test server (for developers’s check, automated functional testing) • QA test servers • On demand for Release Candidate smoke test • UX review & Product review • Test, stage and production ready deployment • Externalized configuration (jndi) • Profiled build (when platform dependent)
  • 116. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory Automation for the People (because Everybody Doing It Manually Hurts) 116 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Repository Server • javac, mxmlc • JUnit/TestNG, FlexUnit4 • swc, swf ,jar ,war ,ear ,zip ,etc AutomatedTests • Automated Functional Test • RIATest : http://www.riatest.com • FlexMonkey • QTP • Leveraging the Flex SDK automation framework
  • 117. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory Automation for the People (because Everybody Doing It Manually Hurts) 117 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM • Maven • Ant + Ivy • Graddle • BuildR • EasyAnt • Ant • Make Repository Server • javac, mxmlc • JUnit/TestNG, FlexUnit4 • swc, swf ,jar ,war ,ear ,zip ,etc JavaDocs,ASDocs, QualityReports • Developer docs : • Compilation reports • Javadoc, ASdoc • Dev/QA docs • Unit Test reports • Test Coverage reports • PMD reports • Dependencies • Dependency convergent reports • etc …
  • 118. © 2010 Adobe Systems Incorporated. All Rights Reserved. Software factory Automation for the People (because Everybody Doing It Manually Hurts) 118 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Repository Server CI & QA Test Servers Quality & Doc Servers Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build SCM Changelist / Jobs Tasks / Bug Tracking Server SCM Repository Server • javac, mxmlc • JUnit/TestNG, FlexUnit4 • swc, swf ,jar ,war ,ear ,zip ,etc QualityDashboard • Quality Dashboard • Sonar : http://www.sonarsource.org/ • Home made • Others
  • 119. © 2010 Adobe Systems Incorporated. All Rights Reserved. Tasks / Bug Tracking Server CI & QA Test Servers Quality & Doc Servers 119 Dependencies Checks Compilation CodingRulesChecks Deployment Packaging Unittest JavaDocs,ASDocs, QualityReports AutomatedTests Continuous Integration Server Modification Checks Trigger QualityDashboard Changelist / Jobs Repository Server Local Builds and Local App Servers Product Owner / User Champions / UX Designer QA Engineers SCM swc,swf, jar,war push & pull deploy Update & CommitUpdate Fetch swc,swf,jar and war Checks/Notifications Flex & Java Developers Smoke / Acceptance Test s Func. and UX Feedbacks Checks & Tests Build • Aim for a full IDE integration : • Plugins •Mylin, hudson, SCM, FlexPMD, FlexFormatter, FlexUnit, CodeCoverage, etc… • Shared properties and configuration • Scripts Product Owner / User Champions / UX Designer QA Engineers Flex & Java Developers
  • 120. © 2010 Adobe Systems Incorporated. All Rights Reserved. 120 References
  • 121. © 2010 Adobe Systems Incorporated. All Rights Reserved. 121 Books /Articles « Effective Java: Programming Language Guide », Joshua Bloch « OO Design Quality Metrics », Robert Martin http://www.octo.com/Java-Productivity-Primer.10/Publications http://lil.univ-littoral.fr/~oumoumsack/qualite/ http://www.objectmentor.com/resources/articles/Principles_and_Pa tterns.pdf http://www.infoq.com/presentations/effective-api-design http://www.infoq.com/news/Ken-Schwaber-Sacrificing-Quality http://www.quotegarden.com/programming.html http://www.slideshare.net/francois.le.droff/solutions-linux2008- construire-sa-vision-qualite http://www.slideshare.net/francoisledroff/flex-continuous-quality- builds-flex-ant-maven http://www.slideshare.net/francoisledroff/tesytquality-best- practices-toolkit-for-enterprise-flex Photo /Graphics https://duke.dev.java.net/images/comfyChair/index.html http://blog.theflashblog.com/?p=2436 http://www.riagora.com/ http://coenraets.org/blog/ Blogs: http://blog.theflashblog.com/?p=2436 http://www.riagora.com/ http://coenraets.org/blog/ Tools Cairngorm: https://sourceforge.net/adobe/cairngorm/home/ FlexUnit: http://flexunit.org/ Parsley/Spicelib: http://www.spicefactory.org KapInsect: http://lab.kapit.fr/display/kapinspect/Kap+Inspect Thunderbolt: http://github.com/sectore/ThunderBoltAS3 Flexlib: http://code.google.com/p/flexlib/ FlexPMD: https://sourceforge.net/adobe/flexpmd/home/ Ant: http://ant.apache.org/ Maven: http://maven.apache.org/ Ivy: http://www.jaya.free.fr/ivy/ Sonar: http://www.sonarsource.org/ PMD: http://pmd.sourceforge.net/ Spring: http://www.springsource.org/ JBoss: http://www.jboss.org Dozer: http://dozer.sourceforge.net/ Adobe Docs ActionScript Developer Site- http://www.adobe.com/devnet/actionscript/ Flex Developer Site - http://www.adobe.com/devnet/flex/documentation.html LCDS Doc Site - http://livedocs.adobe.com/livecycle/8.2/programLC/program mer/lcds/help.html?content=lcconfig_4.html References
  • 122. © 2010 Adobe Systems Incorporated. All Rights Reserved. Questions ?