SlideShare a Scribd company logo
Effective UI development
using Adobe Flex

Uday M. Shankar | April 2009 | Bangalore, India
Who am I?
                                                               O.
                                                             LL is…
                                                           HE e
•Sr. UI Designer @ NOKIA
                                                                     m
                                                                                  ar
                                                                   na
•UI dev since 1999                                                              k
                                                                My
                                                                           an
                                                                         h
•Flex since 2005
                                                                .S
                                                              yM
•From Trivandrum, Kerala
                                                            da
                                                      U

                                                                                       2
13 April 2009       Effective UI Development using Adobe Flex
Disclaimer

•All views expressed here-in are my
 own and do not reflect that they are
 endorsed by my employer
•This presentation might contain
 stuff that you already know! ;)
•Focusing on Flex 2 and 3… Not 4!
                                                                 3
13 April 2009        Effective UI Development using Adobe Flex
Ground rules

•Stop me at any time for questions or discussion.
•Let’s focus on “what”, not “why” and “how”.




                                                                 4
13 April 2009        Effective UI Development using Adobe Flex
User Experience

•Beware of the
 “CHASM”
•UX could be the
 BRIDGE across the
 chasm                                  Norman’s Adoption Curve

                                                                  5
13 April 2009   Effective UI Development using Adobe Flex
User Interface Development

•It’s all about facilitating the user
 to perform a specific task in a specific                           USER


 context in a fast and efficient manner
 by leveraging the power of
 technology and design.                 TASK                               CONTEXT




                                                                                     6
13 April 2009           Effective UI Development using Adobe Flex
UI Development
                                                                is NOT about
                                                            making screens
                                                                  look better!




                                                                             7
13 April 2009   Effective UI Development using Adobe Flex
(U,E)
                                                                          Lewin’s equation



User behavior
                                        Behavior is a function of the User & the Environment


•There is an intended behavior that we want to create,
•We have no direct control over the user
•But, via interaction design we have means to control
 the environment and to evaluate the resulting effects


                                                                                               8
13 April 2009        Effective UI Development using Adobe Flex
What we want users to see




                                                            9
13 April 2009   Effective UI Development using Adobe Flex
What users actually see




                                                            10
13 April 2009   Effective UI Development using Adobe Flex
UI has evolved

•Full page refresh replaced by small content updates
•Hyperlinks & Submit buttons replaced by a full range of
 interactive components
•Interaction is characterized by direct manipulation,
 lightweight actions & in-page actions.
•People are now used to demanding more…
                                                                 11
13 April 2009        Effective UI Development using Adobe Flex
Why all this is even
more important in
the context of
Adobe Flex?
                                                            12
13 April 2009   Effective UI Development using Adobe Flex
Why Flex?

•rich user experience
•cross-platform, accessibility, NLS
•Adobe AIR integration
•Open source, standards-based framework
•Thick-thin client
•Works with other technologies in backend
                                                                13
13 April 2009       Effective UI Development using Adobe Flex
Don’t get carried away

•Many Flex designers have a tendency to get carried
 away with the cool effects that’s possible using flex.
•Possibility = Usability
•Cool = Usable
•Users do not differentiate between the UI & Backend.
•For Users UI is the application.
                                                                  14
13 April 2009         Effective UI Development using Adobe Flex
Front End keeps changing

•HTML > DHTML > XUL > AJAX > Flex/Silverlight > ???
•Abstract the UI completely from the business layer.
•Use XML to define text on screen.
•Use well defined folder structures to separate the VIEW
 from the MODEL & the CONTROLLER

                                                                 15
13 April 2009        Effective UI Development using Adobe Flex
Follow standards

•Do not break paradigms unnecessarily
•Do not use a lot of colors on screen
•Follow basic UCD & HCI principles while designing
•Do not create Frankenstein components!


                                                                 16
13 April 2009        Effective UI Development using Adobe Flex
Leverage Flex CSS features

• Use the skinning features of
  Flex to effectively apply CSS
  across your application
• Runtime CSS is another Killer
  from Flex.
• Check out scalenine.com

                                                                     17
13 April 2009            Effective UI Development using Adobe Flex
Vs.




                                                            18
13 April 2009   Effective UI Development using Adobe Flex
Ted Patrick says…
   http://www.onflex.org/ted/2007/11/managing-ui-development-expectations.php



•Manage expectations using design.
•Clients often judge progress based on UI design.
•Clients want to see a steady progression of
 development.
•Use a plain CSS skin for Flex and dial the chrome down
 to black and white.
                                                                                19
13 April 2009                       Effective UI Development using Adobe Flex
Get your X & Y right

•The position of components on screen is IMPORTANT.
•The dimensions of components on screen is
 IMPORTANT.
•Drag & Drop is not always uber-cool!
•Control to user is good as long as the system still has
 control.
                                                                  20
13 April 2009         Effective UI Development using Adobe Flex
Accessibility

•Generally RIAs are difficult for people with certain
 disabilities
•Accessibility is catching on.
•Flex’s accessibility features are good & easy to
 implement.

                                                                  21
13 April 2009         Effective UI Development using Adobe Flex
Remember i18n & l10n

•If your application is for global audience, think about
 i18n & l10n.
•Think about it in the beginning.
•Think about it while designing.
•Think about it while skinning.

                                                                  22
13 April 2009         Effective UI Development using Adobe Flex
Use frameworks

•Use frameworks – Cairngorm, PureMVC,
•Try to adopt patterns as much as possible. Do not
 overdo it.
•Check out http://ntt.cc for a good list of Flex design
 patterns & tutorials.

                                                                   23
13 April 2009          Effective UI Development using Adobe Flex
Always validate data

• Tell the user NOW when
  things go wrong.
• Use Flex validators to
  effective validate user input.
• Create your own custom
  validators for custom needs.

                                                                      24
13 April 2009             Effective UI Development using Adobe Flex
Work smart, not hard

•Create components and re-use them across application
•Extend standard components & custom components
 wisely
•Take advantage of what the platform does well. Avoid
 trying to do what the platform doesn’t.
•Use free components available in the community
                                                                25
13 April 2009       Effective UI Development using Adobe Flex
Be modular

• Modules are SWF files which can be
  loaded dynamically
• They cannot run independently
• Applications can share the same
  module
• Lazy Loading - ModuleLoader or
  ModuleManager.
                                                                    26
13 April 2009           Effective UI Development using Adobe Flex
Do not ‘over-engineer’

• Abstraction and perfection is
  good. But, don’t overdo it.
• Pattern implementation are
  only as valuable as the
  problem they solve.



                                                                     27
13 April 2009            Effective UI Development using Adobe Flex
Breath life into your UIs

• Animation for aesthetic reasons is
  good!
• Use subtle transitions to add
  effects to your application
• Provide instant feedback to user


                                                                     28
13 April 2009            Effective UI Development using Adobe Flex
Check it out

•Flex.org / Labs.adobe.com
•blog.flexexamples.com
•ntt.cc
•Tour de Flex – Use it &
 Contribute to it!
                                                              29
13 April 2009     Effective UI Development using Adobe Flex
My ultimate metric for Ux

•If the system was a
 person, how long
 would it take before
 you punch it in the
 nose!
                                                             30
13 April 2009    Effective UI Development using Adobe Flex
Bad UI




                                                            31
13 April 2009   Effective UI Development using Adobe Flex
Good UI




                                                            32
13 April 2009   Effective UI Development using Adobe Flex
Do not
hesitate to
push the
red button
Be ready to go back to the drawing board at any time.
PPTs that I ripped off from ;)

•Molecular Inc.
•ErgoSign
•Dave Meeker – RoundArch
•Garrett Dimon
•And many other… Check out slideshare.net for many of
 these PPTs ;)
                                                                34
13 April 2009       Effective UI Development using Adobe Flex
Enough
                                Slides!
                         Let’s look at
                          something
                                  else!                     35
13 April 2009   Effective UI Development using Adobe Flex
Questions?
                                                            36
13 April 2009   Effective UI Development using Adobe Flex
Thank you
             udayms@gmail.com

             Twitter @udayms

flexed.wordpress.com | udayms.wordpress.com

More Related Content

What's hot

Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010
joaogoncalves
 
Cross platform app development a complete guide
Cross platform app development a complete guideCross platform app development a complete guide
Cross platform app development a complete guide
Biztech Consulting & Solutions
 
Angela Frucci Portfolio
Angela Frucci PortfolioAngela Frucci Portfolio
Angela Frucci Portfolio
Angela Frucci
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
Mukteswar Patnaik
 
Devoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexDevoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with Flex
Michael Chaize
 
Filemobile looks at Employee Generated Content
Filemobile looks at Employee Generated ContentFilemobile looks at Employee Generated Content
Filemobile looks at Employee Generated Content
Steve Hulford
 

What's hot (6)

Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010
 
Cross platform app development a complete guide
Cross platform app development a complete guideCross platform app development a complete guide
Cross platform app development a complete guide
 
Angela Frucci Portfolio
Angela Frucci PortfolioAngela Frucci Portfolio
Angela Frucci Portfolio
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
 
Devoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexDevoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with Flex
 
Filemobile looks at Employee Generated Content
Filemobile looks at Employee Generated ContentFilemobile looks at Employee Generated Content
Filemobile looks at Employee Generated Content
 

Similar to Effective UI Development using Adobe Flex

From Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensFrom Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensJoseph Labrecque
 
Reasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store WorldReasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store World
EffectiveUI
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
marjoramg
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
Tony McGuckin
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - Symbio
Emily Chong
 
Mobile User Experience
Mobile User ExperienceMobile User Experience
Mobile User Experience
Donna Lichaw
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher Education
Joseph Labrecque
 
Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021
Omega_UAE
 
Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.  Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.
Independent University , Bangladesh
 
Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Ajax Experience 2009
 
02 BlackBerry Application Development
02 BlackBerry Application Development02 BlackBerry Application Development
02 BlackBerry Application DevelopmentArief Gunawan
 
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
Moon Technolabs Pvt. Ltd.
 
Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022 Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022
Moon Technolabs Pvt. Ltd.
 
Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?
John Metthew
 
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
Stephan H. Wissel
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
Mark Roden
 
X pages jumpstart jmp101
X pages jumpstart jmp101X pages jumpstart jmp101
X pages jumpstart jmp101pdhannan
 
JAKT Portfolio
JAKT PortfolioJAKT Portfolio
JAKT Portfolio
Anthony Tumbiolo
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applications
dominion
 

Similar to Effective UI Development using Adobe Flex (20)

From Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensFrom Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small Screens
 
Reasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store WorldReasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store World
 
Chapter 13
Chapter 13Chapter 13
Chapter 13
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - Symbio
 
Mobile User Experience
Mobile User ExperienceMobile User Experience
Mobile User Experience
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher Education
 
Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021
 
Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.  Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.
 
Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]
 
02 BlackBerry Application Development
02 BlackBerry Application Development02 BlackBerry Application Development
02 BlackBerry Application Development
 
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
 
Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022 Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022
 
Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?
 
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
 
X pages jumpstart jmp101
X pages jumpstart jmp101X pages jumpstart jmp101
X pages jumpstart jmp101
 
JAKT Portfolio
JAKT PortfolioJAKT Portfolio
JAKT Portfolio
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applications
 

More from Uday Shankar

Crafting delightful experiences
Crafting delightful experiencesCrafting delightful experiences
Crafting delightful experiences
Uday Shankar
 
Design - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightfulDesign - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightful
Uday Shankar
 
Ninja Prototyping with Templating Frameworks
Ninja Prototyping with Templating FrameworksNinja Prototyping with Templating Frameworks
Ninja Prototyping with Templating Frameworks
Uday Shankar
 
The Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI DesignThe Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI Design
Uday Shankar
 
Prototyping
PrototypingPrototyping
Prototyping
Uday Shankar
 
What Drives The World
What Drives The WorldWhat Drives The World
What Drives The World
Uday Shankar
 
Demystifying User Experience
Demystifying User ExperienceDemystifying User Experience
Demystifying User Experience
Uday Shankar
 
Touch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX PerspectiveTouch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX Perspective
Uday Shankar
 
Mobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & TourismMobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & Tourism
Uday Shankar
 
Khuljaa Sim Sim
Khuljaa Sim SimKhuljaa Sim Sim
Khuljaa Sim Sim
Uday Shankar
 
Prototyping SMS/Voice Services
Prototyping SMS/Voice ServicesPrototyping SMS/Voice Services
Prototyping SMS/Voice Services
Uday Shankar
 
UI Engineering - Rebooted
UI Engineering - RebootedUI Engineering - Rebooted
UI Engineering - Rebooted
Uday Shankar
 
Science of prototyping
Science of prototypingScience of prototyping
Science of prototyping
Uday Shankar
 
Usability & Prototyping
Usability & PrototypingUsability & Prototyping
Usability & Prototyping
Uday Shankar
 
Rapid Prototyping
Rapid PrototypingRapid Prototyping
Rapid Prototyping
Uday Shankar
 
User Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great uiUser Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great ui
Uday Shankar
 

More from Uday Shankar (17)

Crafting delightful experiences
Crafting delightful experiencesCrafting delightful experiences
Crafting delightful experiences
 
Design - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightfulDesign - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightful
 
Ninja Prototyping with Templating Frameworks
Ninja Prototyping with Templating FrameworksNinja Prototyping with Templating Frameworks
Ninja Prototyping with Templating Frameworks
 
The Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI DesignThe Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI Design
 
Prototyping
PrototypingPrototyping
Prototyping
 
What Drives The World
What Drives The WorldWhat Drives The World
What Drives The World
 
Demystifying User Experience
Demystifying User ExperienceDemystifying User Experience
Demystifying User Experience
 
Touch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX PerspectiveTouch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX Perspective
 
Mobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & TourismMobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & Tourism
 
Khuljaa Sim Sim
Khuljaa Sim SimKhuljaa Sim Sim
Khuljaa Sim Sim
 
Prototyping SMS/Voice Services
Prototyping SMS/Voice ServicesPrototyping SMS/Voice Services
Prototyping SMS/Voice Services
 
UI Engineering - Rebooted
UI Engineering - RebootedUI Engineering - Rebooted
UI Engineering - Rebooted
 
Science of prototyping
Science of prototypingScience of prototyping
Science of prototyping
 
Usability & Prototyping
Usability & PrototypingUsability & Prototyping
Usability & Prototyping
 
Rapid Prototyping
Rapid PrototypingRapid Prototyping
Rapid Prototyping
 
User Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great uiUser Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great ui
 
Adobe® Flex™
Adobe® Flex™Adobe® Flex™
Adobe® Flex™
 

Recently uploaded

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 

Recently uploaded (20)

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 

Effective UI Development using Adobe Flex

  • 1. Effective UI development using Adobe Flex Uday M. Shankar | April 2009 | Bangalore, India
  • 2. Who am I? O. LL is… HE e •Sr. UI Designer @ NOKIA m ar na •UI dev since 1999 k My an h •Flex since 2005 .S yM •From Trivandrum, Kerala da U 2 13 April 2009 Effective UI Development using Adobe Flex
  • 3. Disclaimer •All views expressed here-in are my own and do not reflect that they are endorsed by my employer •This presentation might contain stuff that you already know! ;) •Focusing on Flex 2 and 3… Not 4! 3 13 April 2009 Effective UI Development using Adobe Flex
  • 4. Ground rules •Stop me at any time for questions or discussion. •Let’s focus on “what”, not “why” and “how”. 4 13 April 2009 Effective UI Development using Adobe Flex
  • 5. User Experience •Beware of the “CHASM” •UX could be the BRIDGE across the chasm Norman’s Adoption Curve 5 13 April 2009 Effective UI Development using Adobe Flex
  • 6. User Interface Development •It’s all about facilitating the user to perform a specific task in a specific USER context in a fast and efficient manner by leveraging the power of technology and design. TASK CONTEXT 6 13 April 2009 Effective UI Development using Adobe Flex
  • 7. UI Development is NOT about making screens look better! 7 13 April 2009 Effective UI Development using Adobe Flex
  • 8. (U,E) Lewin’s equation User behavior Behavior is a function of the User & the Environment •There is an intended behavior that we want to create, •We have no direct control over the user •But, via interaction design we have means to control the environment and to evaluate the resulting effects 8 13 April 2009 Effective UI Development using Adobe Flex
  • 9. What we want users to see 9 13 April 2009 Effective UI Development using Adobe Flex
  • 10. What users actually see 10 13 April 2009 Effective UI Development using Adobe Flex
  • 11. UI has evolved •Full page refresh replaced by small content updates •Hyperlinks & Submit buttons replaced by a full range of interactive components •Interaction is characterized by direct manipulation, lightweight actions & in-page actions. •People are now used to demanding more… 11 13 April 2009 Effective UI Development using Adobe Flex
  • 12. Why all this is even more important in the context of Adobe Flex? 12 13 April 2009 Effective UI Development using Adobe Flex
  • 13. Why Flex? •rich user experience •cross-platform, accessibility, NLS •Adobe AIR integration •Open source, standards-based framework •Thick-thin client •Works with other technologies in backend 13 13 April 2009 Effective UI Development using Adobe Flex
  • 14. Don’t get carried away •Many Flex designers have a tendency to get carried away with the cool effects that’s possible using flex. •Possibility = Usability •Cool = Usable •Users do not differentiate between the UI & Backend. •For Users UI is the application. 14 13 April 2009 Effective UI Development using Adobe Flex
  • 15. Front End keeps changing •HTML > DHTML > XUL > AJAX > Flex/Silverlight > ??? •Abstract the UI completely from the business layer. •Use XML to define text on screen. •Use well defined folder structures to separate the VIEW from the MODEL & the CONTROLLER 15 13 April 2009 Effective UI Development using Adobe Flex
  • 16. Follow standards •Do not break paradigms unnecessarily •Do not use a lot of colors on screen •Follow basic UCD & HCI principles while designing •Do not create Frankenstein components! 16 13 April 2009 Effective UI Development using Adobe Flex
  • 17. Leverage Flex CSS features • Use the skinning features of Flex to effectively apply CSS across your application • Runtime CSS is another Killer from Flex. • Check out scalenine.com 17 13 April 2009 Effective UI Development using Adobe Flex
  • 18. Vs. 18 13 April 2009 Effective UI Development using Adobe Flex
  • 19. Ted Patrick says… http://www.onflex.org/ted/2007/11/managing-ui-development-expectations.php •Manage expectations using design. •Clients often judge progress based on UI design. •Clients want to see a steady progression of development. •Use a plain CSS skin for Flex and dial the chrome down to black and white. 19 13 April 2009 Effective UI Development using Adobe Flex
  • 20. Get your X & Y right •The position of components on screen is IMPORTANT. •The dimensions of components on screen is IMPORTANT. •Drag & Drop is not always uber-cool! •Control to user is good as long as the system still has control. 20 13 April 2009 Effective UI Development using Adobe Flex
  • 21. Accessibility •Generally RIAs are difficult for people with certain disabilities •Accessibility is catching on. •Flex’s accessibility features are good & easy to implement. 21 13 April 2009 Effective UI Development using Adobe Flex
  • 22. Remember i18n & l10n •If your application is for global audience, think about i18n & l10n. •Think about it in the beginning. •Think about it while designing. •Think about it while skinning. 22 13 April 2009 Effective UI Development using Adobe Flex
  • 23. Use frameworks •Use frameworks – Cairngorm, PureMVC, •Try to adopt patterns as much as possible. Do not overdo it. •Check out http://ntt.cc for a good list of Flex design patterns & tutorials. 23 13 April 2009 Effective UI Development using Adobe Flex
  • 24. Always validate data • Tell the user NOW when things go wrong. • Use Flex validators to effective validate user input. • Create your own custom validators for custom needs. 24 13 April 2009 Effective UI Development using Adobe Flex
  • 25. Work smart, not hard •Create components and re-use them across application •Extend standard components & custom components wisely •Take advantage of what the platform does well. Avoid trying to do what the platform doesn’t. •Use free components available in the community 25 13 April 2009 Effective UI Development using Adobe Flex
  • 26. Be modular • Modules are SWF files which can be loaded dynamically • They cannot run independently • Applications can share the same module • Lazy Loading - ModuleLoader or ModuleManager. 26 13 April 2009 Effective UI Development using Adobe Flex
  • 27. Do not ‘over-engineer’ • Abstraction and perfection is good. But, don’t overdo it. • Pattern implementation are only as valuable as the problem they solve. 27 13 April 2009 Effective UI Development using Adobe Flex
  • 28. Breath life into your UIs • Animation for aesthetic reasons is good! • Use subtle transitions to add effects to your application • Provide instant feedback to user 28 13 April 2009 Effective UI Development using Adobe Flex
  • 29. Check it out •Flex.org / Labs.adobe.com •blog.flexexamples.com •ntt.cc •Tour de Flex – Use it & Contribute to it! 29 13 April 2009 Effective UI Development using Adobe Flex
  • 30. My ultimate metric for Ux •If the system was a person, how long would it take before you punch it in the nose! 30 13 April 2009 Effective UI Development using Adobe Flex
  • 31. Bad UI 31 13 April 2009 Effective UI Development using Adobe Flex
  • 32. Good UI 32 13 April 2009 Effective UI Development using Adobe Flex
  • 33. Do not hesitate to push the red button Be ready to go back to the drawing board at any time.
  • 34. PPTs that I ripped off from ;) •Molecular Inc. •ErgoSign •Dave Meeker – RoundArch •Garrett Dimon •And many other… Check out slideshare.net for many of these PPTs ;) 34 13 April 2009 Effective UI Development using Adobe Flex
  • 35. Enough Slides! Let’s look at something else! 35 13 April 2009 Effective UI Development using Adobe Flex
  • 36. Questions? 36 13 April 2009 Effective UI Development using Adobe Flex
  • 37. Thank you udayms@gmail.com Twitter @udayms flexed.wordpress.com | udayms.wordpress.com