Download - Eclipse conv2 ss
![Page 1: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/1.jpg)
Making Leaders Successful
Every Day
![Page 2: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/2.jpg)
© 2012 Forrester Research, Inc. Reproduction Prohibited
Numbers are overrated….
![Page 3: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/3.jpg)
Modern Applications – Modern ALM
Jeffrey S. Hammond, Vice President & Principal Analyst
@jhammond
March 26th, 2013
![Page 4: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/4.jpg)
The best way to have a good idea…
Source: Flickr (http://profiles.nlm.nih.gov/ps/retrieve/Narrative/MM/p-nid/55/p-visuals/true)
![Page 5: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/5.jpg)
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?
![Page 6: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/6.jpg)
You’d get an explosion of new services…
![Page 7: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/7.jpg)
7 Entire contents © 2010 Forrester Research, Inc. All rights reserved.
Source: http://www.flickr.com/photos/indi/6865060402/sizes/k/
Built by a new generation of developers
– Kingmakers and Aspirants
![Page 8: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/8.jpg)
© 2011 Forrester Research, Inc. Reproduction Prohibited 8
Taking advantage of the most advanced data
centers on Earth, while destroying traditional
barriers to entry
![Page 9: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/9.jpg)
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
feedback
Source: Flickr http://upload.wikimedia.org/wikipedia/commons/6/65/HP_garage_front.JPG)
![Page 10: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/10.jpg)
© 2013 Forrester Research, Inc. Reproduction Prohibited 10
Modern applications are complex
![Page 11: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/11.jpg)
We need to prioritize and modernize
the architectures we build
![Page 12: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/12.jpg)
Application patterns are evolving
![Page 13: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/13.jpg)
Are you Agile enough?
Do you collect (and incorporate)
rapid feedback?
Can you design useful, usable,
desirable experiences?
Does your infrastructure evolve?
Building Modern Applications is hard!
Can you build high quality, multichannel, 5 star apps?
Source: Flickr (http://www.flickr.com/photos/kaz25/2444344463/sizes/o/in/photostream//)
![Page 14: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/14.jpg)
Systems of
Engagement
Modern Applications shift ALM focus
Time to Safety
Time to Certainty
Time to Feedback
Systems of
Operation
Systems of
Record
Lifecycle Focus
![Page 15: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/15.jpg)
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
![Page 16: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/16.jpg)
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.
Personas
![Page 17: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/17.jpg)
Wow
Enjoyable
Functional
Neutral
Missed It
Frustrating
Awareness Consideration Research Purchase Engagement
1
2 3
4
5
6 7 8
9
10
11
Identify
customer and
stages of
journey
Indicate
primary (and
secondary )
devices for
each step
Describe each
step in the
journey, the
customer’s
needs and
perceptions
Indicate
significant
steps
Persona:
James
A Multi-channel journey map
![Page 18: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/18.jpg)
Modern applications are complex systems
Complex Unknowable
Probe, sense, respond
Complicated Knowable
Sense, analyze, respond
Chaos Turbulent and unconnected
Act, sense, respond
Simple Known
Sense, categorize, respond
Disorder
Feedback
Esta
blis
hed P
ractic
es
Using the Cynefin framework
![Page 19: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/19.jpg)
We don’t how to make Modern Applications
Complex Unknowable
Complicated Knowable
Chaos Turbulent and unconnected
Simple Known
Disorder
Feedback
Esta
blis
hed P
ractic
es
Systems of
Engagement
Systems of
Operation
Systems
of Record
![Page 20: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/20.jpg)
Modern applications evolve
› 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 – 30K
Amazon deployment stats (May -2012)
Source: O’Reilly (http://assets.en.oreilly.com/1/event/60/Velocity%20Culture%20Presentation.pdf)
Pictures: http://www.flickr.com/photos/blueridgekitties/4423381216/sizes/l/
![Page 21: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/21.jpg)
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
![Page 22: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/22.jpg)
© 2013 Forrester Research, Inc. Reproduction Prohibited 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
![Page 23: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/23.jpg)
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
Pictures: http://www.flickr.com/photos/dyanna/3202542828/sizes/l/
Not Quite A Simian Army
![Page 24: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/24.jpg)
Continuous Delivery Capability Is Key Level Focus Characteristics Results
5 Hypothesis-
driven
delivery
Requirements include testable metrics
Frequent use of A/B testing
Services designed for CD
DBMS changed decoupled from system
changes
Delivery enables
business
innovation
4 Release on
demand
Teams organized around services
Deployment pipeline rejects bad changes
Work delivered in small batches
Comprehensive test + release automation
Service always in
a releasable state
Capability >= Need
3 Regular
releases w/
milestones
CI and trunk-based development
Automating provisioning and testing
“Done” = tested and deployed
Regular release
cadence
Capability < Need
2 Time-boxed
releases
Clear product ownership
Change management controls
<1 mo. cycles
Some testing, release automation
Planned releases
Capability < Need
1 Heroic
individuals
Manual testing
Integration explosion
Manual provisioning
Ad-hoc releases
http://bit.ly/10hUmK3
![Page 25: Eclipse conv2 ss](https://reader034.vdocuments.net/reader034/viewer/2022051817/5481d3ae5806b50b058b45a5/html5/thumbnails/25.jpg)
You need to rethink your approach
1. ALM that’s fit to purpose
2. Revitalize architecture
3. Horizontal, not vertical
4. Support hi-perf teams
5. “Done” is DONE
6. Federate and collaborate
7. Make it fun and rewarding!