these great slides

Download these great slides

Post on 14-May-2015

206 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • 1.November 12, 2008. Call in at 1:55 p.m. EST Teleconference Enterprise RIA Adoption: What a Difference a Good Strategy Makes Jeffrey Hammond Senior Analyst Forrester Research

2. Theme RIA adoption is no longer a question of if, but a matter ofhow 3. RIA technology moved into mainstream use in 2007 For custom-developed applications, which development platforms does your company use? (multiple responses accepted) Base: 796 platform software decision-makers at North American and European enterprises and SMBs 4. RIA technology moved into mainstream use in 2007 Source: Forrester - 1105 Media IDE Survey, May 2007 For what purposes is your organization using your primary IDE?Base: 703 North American application development professionals (multiple responses accepted) 5. RIAs are evolving beyond consumer sites

  • Initial RIA deployments: Consumer Apps and ISVs
  • In 2007 Forrester saw a surge of internally focused RIA deployments Why?
  • Client-server application replacement
  • Development of information workplaces
    • Complex flows support task workers
    • Visualization supports information workers
  • Making core applications location, and device independent

6. There are common 3 RIA adoption archetypes

  • Tactical adoption at the developer/team level
    • Spot enhancement of existing Web sites
    • Widgets and applets
    • Uses primarily FOSS Ajax libraries
  • Standardized adoption of Ajax or Plug-ins
    • Full applications, client server app replacement
    • Shops standardize across teams on Ajax or Plug-ins
    • Mix of Commercial and FOSS Ajax, Flex and eventually Silverlight
  • Mixed model adoption based on fit-to-purpose
    • Extends to mobile apps, desktop, offline use scenarios
    • Shops define when and where to use different RIA technologies
    • Supports interop. scenarios like Ajax w/ Flash and Flex w/ Ajax

How do you determine the best approach? 7. Six dimensions that separate RIA options Criteria Why it matters Reach and intent Matching a solution to a users target platforms minimizes redundancies and wasted effort Richness of widget set A broad palette of controls improves design options when dealing with complex data or transactions Extended ecosystem Development tools, training, consulting and support all minimize ramp-up time and decrease cycle time, extended lifecycle support is key Performance profile Performance mismatches disappoint power users Security and ilities Difficult to retrofit after an application is deployed Ease of customization Integration efforts, evolving UI design conventions, and self-support capability all require access to source code and customization capabilities 8. Reach and intent relative solution strength Not Appropriate Adequate Good fit Overkill Concern Raw Ajax Ajax Libraries Ajax Frameworks Browser plug-ins Desktop frameworks Spot enhancements of existing Web sites Widgets and Applets Full Applications Multiple OSes Multiple Browsers Mobile Devices Occasionally connected apps 9. Reach and intent preflight checklist

  • Where does your application need to go?
  • Who will use it, how often?
  • What does it need todo?
  • How will you apply RIA technology?
    • Incremental spot enhancement of existing sites
    • Transformational completely new application or rewrite of existing legacy application

10. Richness of widget set preflight checklist

  • Is the widget library sufficient for that task at hand?
    • Basic controls
    • Advanced controls
    • Data-aware controls
    • Canvas and drawing
  • Is relative positioning supported?
  • How are styles, templates and skins applied?
  • How easy is it to build new controls or integrate with other Ajax and Plug-in technologies?
  • How will it adapt to the evolution of HTML 5?

11. Richness of widget set - examples

  • With roll your own Ajax you do exactly that.
  • GWT ~ 30 controls, mainly basic layout
  • Dojo(Dijit) ~ 30 controls, mainly basic layout
  • Flash/Silverlight 1.0 primitives instead of controls
  • Flex - ~ 30 controls, including data, charting and layout, can also interoperate w/ Ajax libraries
  • Isomorphic -35 controls, including data aware, analytics and visual design

12. Extended ecosystem preflight checklist

  • Bells and whistles are necessarybut not sufficient!
  • Whats the programming model and learning curve?
    • Declarative vs. Imperative models
  • Are there WSIWYG development tools available?
  • Can you hire, find or train resources quickly?
  • What about ALM and Design tool integrations?
    • Can designers provide CSS, artifacts and/or share projects?
    • Can you version artifacts with standard SCM tools?
    • How will you test applications?

13. Performance profile preflight checklist

  • What is your usage intensity profile?
    • Power users need validation, performance, keyboard shortcuts.
    • Occasional users need effective engagement, UI cueing
    • Infrequent users need low footprint, discoverability
  • Whats the user base and client horsepower?
  • What is the duty cycle on the applications data?
  • Whats the minimum start-updata set?

14. Programming model and performance profile separate RIA frameworks and libraries Power Users Client Server Imperative Declarative Power Users Infrequent andOccasional Users JSF Based(MyFaces, ICEFaces, etc) Struts, Tiles GWT Wicket Dojo jQuery Ext YUI XAP Nexaweb Isomorphic Curl JavaFX Flex Silverlight Infrequent andOccasional Users 15. Security and ilities preflight checklist

  • What is the sensitivity of the data involved?
  • What is the opportunity for exposure?
  • What steps does the RIA technology take to insulate developers from common attacks?
  • What accessibility requirements do you have?
  • What navigability requirements do you have?
  • What searchability requirements do you have?
  • What measurability requirements do you have?

16. How To Reduce The Security Risks In The Three Facets Of An RIAs Attack Surface March 2008Securing Rich Internet Applications 17. ilities are dependent on RIA technology type

  • Plug-ins and Ajax frameworksgenerally do well with accessibility, Ajax libraries not so much.
  • Navigability is supported via hacks in Ajax libraries, Ajax frameworks, and Flex
  • Searchability is a general problem for unless specific designs patterns are implemented
  • Support for analytics is improving, especially for widgets, and Ajax applications

18. Ease of customization preflight checklist

  • What are your integration needs?
    • Calling into .NET, Java on the server
    • Support for SOAP, REST Web services
    • Legacy integration and Packaged Apps
  • What rights does the copyright holder grant you?
  • What is the health of the supporting community (if any)?
  • What standards does the technology support?
  • What options do you have to mix and match different libraries and controls?

19. An example of a RIA win-win

  • Major U.S. Pharmaceutical Company
  • Problem:How to grow a custom app infrastructure to support the drug discovery pipeline.
  • Solution:An interactive reporting application that
    • Allows researchers to create customized reports that drill down on particular aspect of the drug discovery process
    • Makes large amounts of data locally available
    • Ensures cleanliness of data before it enters the system
  • Benefits:
    • Significant reduction in development time
    • Higher level of developer abstraction

20. An example of a RIA win-win

  • Major U.S. Defense Contractor
  • Problem:Proliferation of open source RIA libraries create governance and architecture risk
  • Solution:An shift to a strategic mixed model RIA platform
    • Deployed a mix of CRUD, reporting and transactional apps
    • Executive dashboard integrates Ajax, Flash for maximum effect
    • Core program planning app rolled out to ~4,000 engineers