Download - Fllow con 2014
![Page 1: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/1.jpg)
Transforming Traditional Enterprise Software Development Processes“Appling DevOps and Agile Principles at Scale”
Gary GruverSeptember 3, 2014
![Page 2: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/2.jpg)
- FW no longer a bottleneck for the business
- Development costs reduced from $100M/yr. to $55M/yr.
- ~140% increase in the number of products under development
- Capacity for innovation increased from ~5% to ~40%
![Page 3: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/3.jpg)
Requirements Scheduling DevelopmentIntegration & Qualification
Waterfall Development Model
Resources
ScheduleScope
Waterfall Approach: DoEnough up front planningTo lock in all three corners
![Page 4: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/4.jpg)
Requirements Scheduling DevelopmentIntegration & Qualification
Waterfall Development Model
Resources
ScheduleScope
Waterfall Approach: DoEnough up front planningTo lock in all three corners
Waterfall Reality: Discoveriesduring development and difficultieswith integration/qualification resultsin frequent and costly schedule slips
![Page 5: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/5.jpg)
Agile Development Model
Drops of working Complete code onA fixed interval
Plan
Qual Dev
Plan
Qual Dev
Plan
Qual Dev
Plan
Qual Dev
Drops of working Complete code onA fixed interval
• Fully qualified code drops on a fixed schedule• Frequent small integrations• Short planning and development cycles• Delivering to a well prioritized product backlog
![Page 6: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/6.jpg)
Scrum Agile≠
![Page 7: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/7.jpg)
Water
Scrum
Fall
![Page 8: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/8.jpg)
Transforming Traditional Enterprise Software Development Processes
Enterprise Level Continuous
Improvement
Planning & Prioritized
Backlog
Applying DevOpsPrinciples at
Scale
Business Objectives
![Page 9: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/9.jpg)
Business Objectives (Don’t “Do Agile”)
Define your value proposition
Understand yourcost & cycle-time
drivers
Either automate, eliminate, or engineer out the drivers that aren’t key to the value prop
![Page 10: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/10.jpg)
Mini-milestone Objectives
Cascading Objectives to Track Progress
ConversationsLearnings
Agile Adjustments
Having real-time metrics is essential for the speed of agile & aligning the org. But don’t manage by metrics.
Use the metrics tounderstand where to have conversations about what is not getting done.
Interative Approach to Agile Management
![Page 11: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/11.jpg)
![Page 12: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/12.jpg)
Long Term Predictability for SW SchedulesDo we really need the predictability of our current planning processes?Are our current planning processes really that accurate?50% of all SW is never used or does not meet the business objectives!
100%
Acc
ura
cy
Planning Investment
![Page 13: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/13.jpg)
One of the biggest challenges with Agile Planning at the enterprise level is getting the organization to accept the uncertainty in SW development and appreciate the flexibility and opportunity.
![Page 14: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/14.jpg)
Locking in Capacity over time
100%
Cap
acit
y
Time Horizon
Long-range commitments < ~50% of Capacity
Mid-range commitment < ~80% of Capacity
Delivery
![Page 15: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/15.jpg)
Transforming Traditional Enterprise Software Development Processes
Enterprise Level Continuous
Improvement
Planning & Prioritized
Backlog
Applying DevOpsPrinciples at
Scale
Business Objectives
![Page 16: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/16.jpg)
Business Objectives
Increase the quality and frequency of feedback
Reduce the time and resources between release branch & production
Improve deployment repeatability/env. stability
Testing in an Operational like environment as close to dev. as possible
![Page 17: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/17.jpg)
Release testing considerations
Cost of Failure
Ease of Deployment
Architectural
Test Env =Production
![Page 18: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/18.jpg)
DevOps unique challenges
SimulatorsEmulators
Embedded SW/FW
Upgrade Compatibility
Patches
Packaged SW
Continuous Delivery
Web/SaaS
![Page 19: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/19.jpg)
Ensuring the architecture/build system is ready
Comp A v1 Comp B v1
Comp D v1 Comp E v1 Comp F v1
Comp C v1Comp B v2Comp B v1Comp A v2
Comp D v2 Comp E v2
Comp C v2
Comp F v2
![Page 20: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/20.jpg)
Automated system test architecture
• Component based approach to the automated test architecture
Data Magic
Navigation
Page Objects
![Page 21: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/21.jpg)
Finding the offending codeWhat Code?
When? Are you sure it wasn’t Bob?
![Page 22: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/22.jpg)
Building up a Large SW System
Inte
rfac
e Te
st S
imu
lato
r
Agile Comp 1
Agile Comp 2
Agile Comp 3
Agile Comp 4
Agile Comp 5
Agile Comp 6
Legacy Waterfall
IT 1
Legacy Waterfall
IT 2
Legacy Waterfall
IT 3
Agile Comp 1
![Page 23: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/23.jpg)
Auto-revert/Gated Commits
![Page 24: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/24.jpg)
Continuous Integration and Test System
L1 Sim(10-14x/day)
L2 Sim(12x/day)
L3 Emu(6x/day)
L4 Sim(1x/day)
STAGE 1
STAGE 2
![Page 25: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/25.jpg)
Embedded System Pipeline
Cost of Testing
Drive test escapes upstream
1 2 3 4 5 60%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Sim. Quality bar
Emulator
Sim. Regression
Product
ProductEmulatorSimulator
![Page 26: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/26.jpg)
Building up the Enterprise
Gating at the Application or Artifact
Inte
rfac
e Te
st S
imu
lato
rIn
terf
ace
Test
Sim
ula
tor
Gating at the SCM
Gating at the SCM
![Page 27: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/27.jpg)
Developing on Trunk
![Page 28: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/28.jpg)
CD - Picking the right tool for the job
Orchistrator
Trigger ScriptedEnv
Deployment EDD Auto
Testing
![Page 29: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/29.jpg)
Scripting Environments - VariancesDev/QA PRE-PROD PERFORMANCE PRODUCTION
Common Script Common Script Common ScriptCommon Script
Environment descriptors
![Page 30: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/30.jpg)
Dev/QA PRE-PROD PERFORMANCE PRODUCTION
Common
ScriptCommon ScriptCommon ScriptCommon Script
Environment descriptors
Deploy Workflow Complexity
Dev/QA PRE-PROD PERFORMANCE PRODUCTION
Common
ScriptCommon ScriptCommon ScriptCommon Workflow
Environment descriptors
![Page 31: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/31.jpg)
Evolutionary Database
-Add deprecate-Lazy Instantiation
-Don’t alter or Modify-It is like crossing the beams
![Page 32: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/32.jpg)
Finding the offending component quickly improves production
Configure Servers/Routing Device1:
Deploy Code2:
Run a System Test3: ? ? ? ? ? ? ? ? ? ? ? ?
![Page 33: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/33.jpg)
Finding the offending component quickly improves production
Configure Servers/RoutingDevice and Validate Data1:
Deploy Code & Validate Successful Deployment2:
Run a System Test3: Code Validated
![Page 34: Fllow con 2014](https://reader033.vdocuments.site/reader033/viewer/2022051608/540da1508d7f72767e8b4ad8/html5/thumbnails/34.jpg)
Transforming Traditional Enterprise Software Development Processes“Applying DevOps and Agile Principles at Scale
E-mail: [email protected]: largescaleagile.comTwitter: @GRUVERGary