hurdles the sprint with impediments on the way to automation
DESCRIPTION
Hurdles the sprint with impediments on the way to automationTRANSCRIPT
Vinod [email protected] me @vinodpthmn
Hurdles > The sprint with impediments on the way to automation
Thomas Alva Edison
“I have not failed. I've just found 10,000 ways that won't work.”
First Agilist
images@google
Agile says the same thing!
Fail early, Fail often…
This would be the capital to start with
Automation
Automation Units
Database Automation
Testing Automation
Build Automation
Deployment Automation
Build Automation
Deployment Automation
Database Automation
Testing Automation
AutomationUnits
ContinuousIntegration
ContinuousDelivery
images@google
Background
25 – 30 members
images@google
Environments
DEV QA UAT Prod
Replica
Challenges
Need for change was visible
Automate!!!!
Automate!!!!
Automate!!!!
images@google
No body was ready for the extra mile
images@google
We were dealing with the hardest thing in this Universe
images@google
“ continue to persist in its state until it is compelled to change its state by force impressed.”
Everybody Every body
What Newton said is right…
source@google
images@google
Our Approach
SuccessThe Climax
The Pace
First Move
#1 First Move > It is always hard
images@google
Release Samurai
> Make the pain “evident”
Rotate release engineer roleimages@google
> Start with “Quick wins”
Pick the best one to sell firstimages@google
> Limit the automation WIP
images@google
> Go slow and steady
Start with simple steps and keep on building one by one
images@google
#2 The Pace > to succeed you should sustain
images@google
> Define the vision as a team
PastRetrospective
Notes
Automation Backlog
Automate as many manual, boring jobsimages@google
> Showcase during Retrospective Automation Backlog
Members started picking up line items voluntarilyand worked during the Sprint.
Retrospective
images@google
> No fixed plans
images@google
Don’t be a Modern Doctor, be an Ancient Doctor
> Do trial & error
Focus on “what works" not “what's best”images@google
> Your efforts are “Tip of the Iceberg”
Do it for the team, not for the business!
Your efforts
What business feel
images@google
#3 Climax> we all need positive happy ending
images@google
> Motivate team members
images@google
> Campaign “Go home early on release day…”
images@google
> Cast right tools for right problem
Again focus on “what works" not “what's best”images@google
> Set clear direction to the team.
Check-in GuidelinesConduct Group DiscussionTraining SessionsState Do’s & Don'ts
images@google
> Reach your destiny
Branching Strategy
Build Automation
Build Package
Compile Configuration Changes
Auto Release Emails
DeploymentAutomation
Db DeployAutomation
TestAutomation
Technical Details #1Challenges we faced! What we did? What we gained
No proper source controlbranching strategy, leadingto poor build/releasemanagement.
Introduced new branchingstrategy. Kept it simple .
More control over changes, more control over build/ releasemanagement.
Technical Details #2Challenges we faced! What we did? What we gained
Database deployment waspainful as we were using Redgate SQL as compared to generate delta script for the release.
Defined db script templates andtrusted developer to prepare thedeployment scripts and checkinto source control.
Apprised developers to vetdatabase scripts againstdevelopment database beforecheckin.
Switching to template driven database scripts saved us a lot of time. It no longer needed us to generate scripts by comparing the databases, a cumbersome and time consuming job.
Database scripts were automatically vetted at every environment and werestable by the time it reached theproduction release. This minimized database related release issues.
Technical Details #3Challenges we faced! What we did? What we gained
Compiling configurationchanges from variouschange request notes wascumbersome.
Took environment specificconfiguration files to sourcecontrol and pushed it along withbuild package.
Trusted developer to updateconfiguration file with respectivevalues.
Blending configuration changes from source control to build package eradicated the chance of configuration mismatches and errors.
Technical Details #4Challenges we faced! What we did? What we gained
Preparing build packagewas cumbersome.
Used ANT to build Java codeand parse Cold Fusion.
Used NANT to build .NET code.
Automated build and packaging saved a lot of time.
Increased the release readiness of the team and reduced post release production issues to a great extent.
Technical Details #5Challenges we faced! What we did? What we gained
Careless checkin and integration issues were breaking build during release.
Setup Cruise Control .NET asCI Server to perform nightlybuilds.
Nightly build ensured that there are no build errors and we are good.
ValuesGained
Vet every single
change
Quick round-trips(Testing Automation)
Avoid redundant
manual efforts
Rollout build more
frequently
QualityDeliverables
Release Readiness
Together Everyone Achieves Moreimages@google
There are several resons to go for automation, but we could die for one precious thing in this world!
images@google
You choose, if you believe…
Vinod [email protected] me @vinodpthmnimages@google