Upload
ernstdehaan
View
731
Download
1
Tags:
Embed Size (px)
Citation preview
How Continuous Deliveryhelps Retailers
Ernst de Haan, E-commerce Architect, Deli XL June 27, 2012
✓ The Netherlands✓ Part of Bidvest✓ B2B only
✓ Daily Fresh✓ Chilled Fresh
✓ Dry Groceries✓ Frozen
✓ Non-Food
✓ 1K suppliers✓ 30K customers
✓ 110K products✓ € 750M/year
✓ 2M consumers?
Executive Summary
Continuous Delivery means:> faster from Business Case to Production> …with less defects in Production
This results in:> quicker ROI for existing Business Cases> new opportunities, previously infeasible> improved customer satisfaction
yes
Continuous Delivery is for you!
no
start here
Is TTM important?
What is Continuous Delivery?
What is Continuous Delivery?
No, it has nothing to dowith physical delivery
What is Continuous Delivery?
What is Continuous Delivery?
Code changeby developer
What is Continuous Delivery?
Code changeby developer
Systemautomaticallybuilds & tests
less than 1 hour
What is Continuous Delivery?
Code changeby developer
Possibility to deploy toan environment
Systemautomaticallybuilds & tests
What is Continuous Delivery?
> Possibility to release changes> …to any environment> …for any authorised person> …quickly> …with no hassle> …with confidence.
How Continuous DeliveryHelps Retailers
Business & IT – happily ever after?
Conventional Agile vs. Cont. Delivery
Implementation @ Deli XL
Where to Start
coffee!
Once upon a time,
there was a powerful
E-commerce manager
actually, he might be in this very room…
coffee!
Once upon a time,
there was a powerful
E-commerce manager
actually, he might be in this very room…
coffee!
coffee!
coffee!
A/B technologyAnalyticsBig DataBusiness IntelligenceCMSDigital Asset Mgmt. Sys.
Product Mgmt. Sys.RecommendationsSocial Media DashboardTag Mgmt. SolutionWeather Forecasts…
coffee!
coffee!
Conversion has dropped on the product detail page, perhaps it’s
related to the redesign
coffee!
Changing this button heremight fix the issue
— a small A/B test should do…
coffee!
I need !
Welcome to the IT department
Welcome to the IT departmentI need a button changed, quick!
Release calendar says you’re first…
Welcome to the IT departmentI need a button changed, quick!
Welcome to the IT departmentI need a button changed, quick!
Release calendar says your first…
…release opportunity is in about 5 weeks
Welcome to the IT departmentI need a button changed, quick!
Release calendar says your first…
…release opportunity is in about 5 weeks
(might become 6 or 7, in practice)
Welcome to the IT departmentI need a button changed, quick!
Release calendar says your first…
…release opportunity is in about 5 weeks
Argh… that’smore like a
10
!
(might become 6 or 7, in practice)
…but it’s just a button?
I’ll explain: It’s part of the whole release…
…which needs functional testing (& building/deploying)
…regression testing (& building/deploying)
…business acceptance testing (& building/deploying)
…operational acceptance testing…
…and finally building/deploying, for Production
…but it’s just a button?
I’ll explain: It’s part of the whole release…
…which needs functional testing (& building/deploying)
…regression testing (& building/deploying)
…business acceptance testing (& building/deploying)
…operational acceptance testing…
…and finally building/deploying, for Production
…but it’s just a button?
…but it’s just a button?
I’ll explain: It’s part of the whole release…
…which needs functional testing (& building/deploying)
…regression testing (& building/deploying)
…business acceptance testing (& building/deploying)
…operational acceptance testing…
…and finally building/deploying, for Production
…but it’s just a button?
…but it’s just a button?…and the E-commerce manager
groaned
and accepted his fate…
I’ll explain: It’s part of the whole release…
…which needs functional testing (& building/deploying)
…regression testing (& building/deploying)
…business acceptance testing (& building/deploying)
…operational acceptance testing…
…and finally building/deploying, for Production
…but it’s just a button?
…but it’s just a button?…and the E-commerce manager
groaned
and accepted his fate…
…but, what if
they had implemented
Continuous Delivery ?
Welcome to the IT department
Welcome to the IT departmentI need a button changed, quick!
Can it wait until the next planned release?
Welcome to the IT departmentI need a button changed, quick!
Can it wait until the next planned release?
Welcome to the IT departmentI need a button changed, quick!
No, I need it by Friday – latest
Can it wait until the next planned release?
Welcome to the IT departmentI need a button changed, quick!
OK, then let’s do an extra release for it, tomorrow
No, I need it by Friday – latest
Can it wait until the next planned release?
Welcome to the IT departmentI need a button changed, quick!
OK, then let’s do an extra release for it, tomorrow
No, I need it by Friday – latest
I checked: Developer says it’s easy…you can start your acceptance test in 2 hours
Can it wait until the next planned release?
Welcome to the IT departmentI need a button changed, quick!
Uh… yes, I… will arrange that someone is available
OK, then let’s do an extra release for it, tomorrow
No, I need it by Friday – latest
I checked: Developer says it’s easy…you can start your acceptance test in 2 hours
How Continuous DeliveryHelps Retailers
Business & IT – happily ever after?
Conventional Agile vs. Cont. Delivery
Implementation @ Deli XL
Where to Start
✓
test
acceptance
production
fixed release schedule
every deployment requires a rebuild & is (partially)
manual
manual merge, build, deployment,
test
environments differ slightly
Codebase
test
acceptance
production
fixed release schedule
every deployment requires a rebuild & is (partially)
manual
manual merge, build, deployment,
test
Conventional Agile
environments differ slightly
Codebase
test
builds, tests & deployments
automated
Codebase
Pipeline
acceptance
production
environments unifiedflexible release
schedule
test
builds, tests & deployments
automated
Codebase
Continuous Delivery
Pipeline
acceptance
production
environments unifiedflexible release
schedule
Etail London 2012: “Be Agile” (TTM!)
> New (marketing) concepts> React quickly to:> Twitter complaints> customer ratings & reviews> Facebook wall posts> weather forecasts> new BI insights> the competition> etc.
Etail London 2012: “Be Agile” (TTM!)
> New (marketing) concepts> React quickly to:> Twitter complaints> customer ratings & reviews> Facebook wall posts> weather forecasts> new BI insights> the competition> etc.
Sure, I’d love to react quickly — but what if I have to go
through IT?
Etail London 2012: “Be Agile” (TTM!)
> New (marketing) concepts> React quickly to:> Twitter complaints> customer ratings & reviews> Facebook wall posts> weather forecasts> new BI insights> the competition> etc. Yes, you can!
with Continuous Delivery:
Sure, I’d love to react quickly — but what if I have to go
through IT?
How Continuous DeliveryHelps Retailers
Business & IT – happily ever after?
Conventional Agile vs. Cont. Delivery
Implementation @ Deli XL
Where to Start
✓✓
Project “Mercurius”
> Replatform AS/400 → ATG, SAP, Manhattan> € 750M (no interruptions, please)> AS/400 = 25 years of complexity> Implementation start early 2011> Staffing: 150+ people
test
development
test
development
test
development
test
Code base
development
test
development
test
Code base
development
test
development
different teams:project vs.support &
maintenance
test
Code base
development
technical staff in Europe & India
test
development
different teams:project vs.support &
maintenance
test
Code base
acceptance
production
development
c.i.
technical staff in Europe & India
test
development
preprod.
different teams:project vs.support &
maintenance
test
Code base
acceptance
production
development
c.i.
technical staff in Europe & India
50 servers200 services test
development
preprod.
different teams:project vs.support &
maintenance
test
Code base
acceptance
production
development
c.i.
technical staff in Europe & India
50 servers200 services test
development
Continuous Delivery System
preprod.
different teams:project vs.support &
maintenance
Simplified Architecture
ATGweb shop
First Spiritcontent management
GigaSpacesintegration magic
SAPAS/400
Identity Management SystemDigital Asset Management
…etc.
Implementation
> Multi-site, multi-brand> Complexity in pricing, assortments> Staffing provided by Mindcurv:> system integration (project)> support & maintenance (operations)
> Continuous Delivery across all environments:> owner per environment> …who can pick a version and deploy it> deployment = 1 button click
Q1
Q2
Q3
Q4
2010CIO meeting @ project startAlthough management enjoys
Continuous Delivery now,
they did not exactly
make it part of the requirements…
How often should we be able to do a release?
One a year should do.
That’s… not a lot. Are you sure?
Perhaps 2… ?
Q1
Q2
Q3
Q4
2010CIO meeting @ project start
Q1
Q2
Q3
Q4
2011…about 8 months later
We could aim for releasing once every 3 weeks?
Nah, once every 6 weeks is more than enough.
Q1
Q2
Q3
Q4
2011…about 8 months later
Q1
Q2
Q3
Q4
2012…another 6 months later
Uh, sure…
Could we do a release, 1 week after the previous?
Q1
Q2
Q3
Q4
2012…another 6 months later
Q1
Q2
Q3
Q4
2012…a couple of days later
I know the first release is due tomorrow…
Q1
Q2
Q3
Q4
2012
…but can we add something small ?
…that would be really nice!
…a couple of days later
No. But we could do an interim release 2 days later?
I know the first release is due tomorrow…
Q1
Q2
Q3
Q4
2012
…but can we add something small ?
…that would be really nice!
Excellent, thanks!
…a couple of days later
No. But we could do an interim release 2 days later?
Production Deployments
Production Deployments
Release 1
March17
Production Deployments
Release 1
March17
March21
Release 2
Production Deployments
Release 1
March17
…
June 26(yesterday)
March21
Release 2Release 16
Production Deployments
Release 1
March17
…
June 26(yesterday)
that is 4.8 releases/month
March21
Release 2Release 16
Most Recent Production Release
Most Recent Production Release
Problem raised by Support
Program Manager(Stijn Hazen)
decides: interim release
Fridayafternoon
Most Recent Production Release
Problem raised by Support
Program Manager(Stijn Hazen)
decides: interim release
Development& testing
Acceptance test: Go!
Fridayafternoon
Monday
note: no weekend work!
Most Recent Production Release
Problem raised by Support
Program Manager(Stijn Hazen)
decides: interim release
06:00 – Deployment
10:20 – Stijn sends“Thx team” mail
Development& testing
Acceptance test: Go!
Fridayafternoon
Monday Yesterday
note: no weekend work!
Most Recent Production Release
Problem raised by Support
Program Manager(Stijn Hazen)
decides: interim release
06:00 – Deployment
10:20 – Stijn sends“Thx team” mail
Development& testing
Acceptance test: Go!
Fridayafternoon
Monday Yesterday
from the Etail London 2012
event!
note: no weekend work!
Most Recent Production Release
Problem raised by Support
Program Manager(Stijn Hazen)
decides: interim release
06:00 – Deployment
10:20 – Stijn sends“Thx team” mail
Development& testing
Acceptance test: Go!
Fridayafternoon
Monday Yesterday
less than 1.5 working days
from the Etail London 2012
event!
note: no weekend work!
Net Effect
> No deployment issues anymore> More power in the hands of Business> Extra releases become an option
> Flexible release schedule> Stress reduction for Business & IT> Increased IT efficiency> Customer satisfaction> Overall Happiness™
How Continuous DeliveryHelps Retailers
Business & IT – happily ever after?
Conventional Agile vs. Cont. Delivery
Implementation @ Deli XL
Where to Start
✓✓✓
Where to Start
> Is there a Business Case?> Start a discovery> Involve specialists (if you can find them)> Involve IT (heavy involvement = mandatory)> Take small steps, build confidence
Considering Continuous Delivery?
Do get in touch!
@ernstdehaan
slideshare.net/ernstdehaan