Your SlideShare is downloading. ×
  • Like
Eclipse conv2 ss
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Eclipse conv2 ss


2/26 Keynote Presentation at EclipseCon 2013

2/26 Keynote Presentation at EclipseCon 2013

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Making Leaders SuccessfulEvery Day
  • 2. Numbers are overrated….© 2012 Forrester Research, Inc. Reproduction Prohibited
  • 3. Modern Applications – Modern ALMJeffrey S. Hammond, Vice President & Principal Analyst@jhammondMarch 26th, 2013
  • 4. The best way to have a good idea…Source: Flickr (
  • 5. Software innovation used to be expensive…“When I built my first company in 1999 it cost $2.5 million in infrastructure just to get started and another $2.5 million in team costs to code, launch, manage, market and sell our software. So it’s not surprising that typical “A rounds” of venture capital were $5 to $10 million.” Mark Suster, GRP Partners …but what if innovation with software now cost 90% less than it used to?
  • 6. You’d get an explosion of new services…
  • 7. Built by a new generation of developers – Kingmakers and Aspirants Source: Entire contents © 2010 Forrester Research, Inc. All rights reserved.
  • 8. Taking advantage of the most advanced data centers on Earth, while destroying traditional barriers to entry8 © 2011 Forrester Research, Inc. Reproduction Prohibited
  • 9. The way we develop is changing… 7 Traits of Modern Applications 1. Omni-channel clients 2. Deployed on elastic infrastructure 3. Aggregate discrete services 4. Use managed APIs 5. Integrate open source software 6. Employ dev-ops techniques 7. Focus on measurable feedbackSource: Flickr
  • 10. Modern applications are complex© 2013 Forrester Research, Inc. Reproduction Prohibited 10
  • 11. We need to prioritize and modernize the architectures we build
  • 12. Application patterns are evolving
  • 13. Building Modern Applications is hard! Are you Agile enough? Do you collect (and incorporate) rapid feedback? Can you design useful, usable, desirable experiences? Does your infrastructure evolve? Can you build high quality, multichannel, 5 star apps?Source: Flickr (
  • 14. Modern Applications shift ALM focus Lifecycle Focus Systems of Time to Feedback Engagement Systems of Time to Certainty Record Systems of Time to Safety Operation
  • 15. Adapting Agile principles› Use personas to drive insight› Create journey maps› Wireframes and prototypes build backlog› Feedback not requirements documents› Kanban boards to manage atomic demand› Analytics built into applications
  • 16. Personas Jeremiah is 52 years old and has a lot of experience as sales representative working for Acme. His typical day is driving and visiting different clients. He knows a lot about Acme products and is glad to share this information with everybody he meet in his visits. As he is always on the road he needs to be very organized with his schedule and sensitive to time when he is at a specific clinic or hospital. He’s focused on accomplishing his sales goals for the month and wants to be home ASAP to enjoy the end of his day with his family. He is online most of the time, often through his 3G phone or his iPad and notebook, but sometimes inside clinics or hospitals the signal is very low or even non-existent. A big part of his job is to visit doctors and see if they need to replace any specific contact lens in their drawers. Acme expect him to be more a brand advocate than just an order taker. They expect him to talk about products, answer questions, offer new products and be very proactive in his visits to always try to sell more product.
  • 17. IdentifyA Multi-channel journey map customer and stages of journey Persona: James Awareness Consideration Research Purchase Engagement Wow Describe each step in the journey, the customer’s 7 needs and 8Enjoyable 3 6 perceptions 2Functional 1 11 Indicate significant 5 steps 4 10 Neutral Missed It 9 Indicate primary (and secondary ) devices forFrustrating each step
  • 18. Modern applications are complex systems Using the Cynefin framework Established Practices Complex Complicated Unknowable KnowableFeedback Probe, sense, respond Sense, analyze, respond Disorder Chaos Simple Turbulent and unconnected Known Act, sense, respond Sense, categorize, respond
  • 19. We don’t how to make Modern Applications Established Practices Complex Systems of Complicated Unknowable Operation KnowableFeedback Systems Disorder of Record Systems of Engagement Chaos Simple Turbulent and unconnected Known
  • 20. Modern applications evolve Amazon deployment stats (May -2012) › Mean time between deployments – 11.6 seconds › Max # deployment/hour – 1079 › Mean # of hosts simultaneously receiving a deployment – 10K › Max # of hosts simultaneously receiving a deployment – 30KSource: O’Reilly (
  • 21. A move toward different ALM processes› Fewer branches in SCM – evolve toward DVCS› Developers test› CI becomes decentralized, more atomic, and critical› You must run and consume beta› Mocks and mocking tools help manage multi layer complexity
  • 22. Running “experiments” › Requirements are testable hypotheses › Multivariate testing with traffic routing › Services are architected for continuous deployment (e.g. feature flags, hot patching) › Releases become more “organic” › Development moves from an engineering process model to a scientific process model© 2013 Forrester Research, Inc. Reproduction Prohibited 22
  • 23. How do you test? In production! › Test like you deploy – the last mile is beyond your control › Issues are hard to replicate in isolation › Big data requires storage › You need to harden your services › Delivered via a new generation of testing tools Not Quite A Simian ArmyPictures:
  • 24. Continuous Delivery Capability Is Key Level Focus Characteristics Results 5 Hypothesis- Requirements include testable metrics Delivery enables Frequent use of A/B testing business driven Services designed for CD delivery innovation DBMS changed decoupled from system changes 4 Release on Teams organized around services Service always in Deployment pipeline rejects bad changes a releasable state demand Work delivered in small batches Capability >= Need Comprehensive test + release automation 3 Regular CI and trunk-based development Regular release Automating provisioning and testing cadence releases w/ “Done” = tested and deployed milestones Capability < Need 2 Time-boxed Clear product ownership Planned releases Change management controls Capability < Need releases <1 mo. cycles Some testing, release automation 1 Heroic Manual testing Ad-hoc releases Integration explosion individuals Manual provisioning
  • 25. You need to rethink your approach1. ALM that’s fit to purpose2. Revitalize architecture3. Horizontal, not vertical4. Support hi-perf teams5. “Done” is DONE6. Federate and collaborate7. Make it fun and rewarding!
  • 26. Thank youJeffrey Hammond+1