Implementing Zero-Debt Continuous Inspection in an Agile Manner
Implementing agile in non agile world
-
Upload
kshitij-agrawal -
Category
Leadership & Management
-
view
122 -
download
1
Transcript of Implementing agile in non agile world
Discuss Agile Conference DELHI 2015
Photo by will_cyclist - Creative Commons Attribution-NonCommercial License https://www.flickr.com/photos/88379351@N00 Created with Haiku Deck
Project Context
Multiple Brands24 x 7
Multiple ChannelsCustomers
Multiple Geographies
Retail
Corporate
Private / Wealth
Java Front End MF Legacy Backend Other Systems
Tightly coupled system. Slow Development
Multiple Stakeholders
Distributed Team
Type of work
HighWork Stack
Constituents
Strategic Enhancement
Support Initiated
Prod IssuesRegulatory
Campaigns & Offers
New Product Launches or
Customizations
All this was being delivered in the form of multiple waterfall projects with serious issues about quality and timelines.
Agile Challenges – Matrix Organization
Business Technology Misalignment Support Functions Misalignment Lack of synergy between departments
Pic from: http://www.illustrationsource.com/
Agile Challenges – Hierarchical Organization
Hierarchical Org Growth = Climbing the ladderPic from: http://johngerber.world.edu/2012/08/10/hierarchy/
Pic from: http://www.forbes.com/sites/alanhall/2013/04/11/get-noticed-four-easy-steps-to-climbing-the-corporate-ladder/
In hierarchical organizations bringing change is difficult. Also, team members see growth as getting bigger job title rather than adding more value.
Agile Challenges - Command & Control Culture
Improvement = More controls
Pic from: http://www.slideshare.net/apanitsch/the-management-rowing-race
Failures indicates complexity and complexity is best tacked by adaptive approach but often reverse is done and more controls are added to prevent failures.
Agile Challenges - Heavy Processes
High GovernanceMultiple Approval Board
Rigid ProcessesFocus on compliance
Pic from: http://globe-views.com/dreams/lawyer.html
Agile Challenges- Rigid Processes
More than amount of processes, the issue is with one Size fits all approachPic from: http://hudsonvalleynewsnetwork.com/2014/12/17/one-size-not-fit/
Agile Challenges – Lack of Technical AgilityIs business agility feasible without technical agility?
Legacy SystemsSlow development
Tight couplingComplex dependencies
Pic from: https://www.flickr.com/photos/jeroeneijkhof/4533163799
First attempt towards agile
There is serious problem of scope creep and you are suggesting we do development without covering all requirements.
We think there is need of more controls to handle this chaos and what made you think that we should remove processes
Solving the right problem …
Finding out the most important problems and their causes is the key.
Pic from: http://dilbert.com/strip/2013-02-15
Solving the right problem
• Too Many Stakeholders
• Demand Supply mismatch
Causes
• Interdependencies Leading to Deadlock
• Wastage in building consensus
• Flow Jams
• Quality Issues
Effects• Poor Time to
Market
• Production Disruptions
Outcome
Solving the business problem
Stakeholders
Development Team
Dedicated product Owner Team.
Product OwnerBusiness Analysts
Lead / Release Manager Building Consensus Breaking down requirements Prioritization (focus on MVP) Managing dependencies Guide development User acceptance testing Facilitate
Guide team and PO Remove blockers
Solving the business problem
Combining work requests and doing quarterly releases
This proposal was accepted as it gives management more control & more visibility along with improved time to market and less production disruption.
Month 1 2 3 4 5 6 7 8 9 10 11 12
Release 1
Release 2
Release 3
Smaller work requests, focus on ‘must haves’ and match demand to supply
Challenges post new model
Month 1 2 3 4 5 6 7 8 9 10 11 12
Release 1
Release 2
Release 3
Scope creep, Adhoc work requests still causing issues
Changes costly and discouraged
Six months is still long period to see outcome
Slow development, Quality issues, release overheads
This was just iterative waterfall but sometimes a working waterfall is better place to start agile journey. Also, one major win was to have a single product owner.
Transition Backlog
Collaboration
Feedback Loops
Technical Agility
Key elements of agile transition backlog : -
Technical Agility
Technical Backlog
Testing Improvements & Automation Backlog
Reusable Tools
Improving Infrastructure
Continuous Integration
Technical Agility
Business Agility
Leads To
Supports
Pair Programming & Test Driven Development
Strategic verses tactical
Business Functionality
Technical Enhancements
Technical Backlog
Infrastructure
Testing Automation
Enhancements
Mandatory
Prod Fixes
Team CollaborationDaily Stand-up with task board
Brainstorming
Collaboration Tools
Pair Programming
Stand-up Photo by Acarlos1000 - Creative Commons Attribution License https://www.flickr.com/photos/73694110@N00 Created with Haiku Deck
Pic from: https://www.airpair.com/Pic From: www.friendshipcircle.org
Team Distribution
Distributed across locations based on specialityThrow over the wall attitude
Co
llab
ora
tio
n
Too
ls
To reduce cross location dependencies, rebalanced team to have independent team with specialities at each location.
Feedback LoopsCustomer Showcases
Retrospectives
Photo by justin - Creative Commons Attribution License https://www.flickr.com/photos/35034345586@N01 Created with Haiku Deck
Pic From: https://hakanforss.wordpress.com
Collaboration with authorities
Customizations of processes
User Stories
FeaturesWork
Requests
WR 1
Feature 11
User Story 11-01
User Story 11-02
Feature 12User Story
12-01
Isn’t this same as what you call as traceability Matrix?
Customization of processes for agile - To fulfill the same purpose but in a different way.
Current ModelWeeks 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
Release 1
Release 2
Release 3Scoping, Release plannning, Story Writing, Estimation, high level architecture discussion
Development and Testing
Deployment to test environment and skim test
Hardening - UAT, NFT, End to End testing
Implementation Preparations, Audit, Approvals
Production Deployment
Three releases running in parallel but only one development/execution phase at a time.
Execution phase means design, coding, testing by self organized team in any sequence but based on priorities set by product owner. Frequent delivery of working software and frequent customer showcases.
Backlog grooming also happens during development cycle.
Due to test environment constraints, governance requirements and other constraints, need to have a hardening phase.
Current Model - KanbanIterative Frameworks
No work in progress limit within iteration
WIP
Lim
it =
2
Work in progress limit but no iteration boundary
KANBAN
During execution phase, Kanban is followed instead of Scrum. The reasons are: Due to legacy code issues, some stories take more than 2 weeks to develop. Don’t
want to break these as these would loose relevance and become tasks. Due to hardening defects, prod fixes, high priority work requests, backlog is more
fluid than ideal for iterative development.
Current Model
Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8
Retrospectives (4w)
Planning Cadence (2w)
Showcase cadence (2w)
Backlog grooming discussions multiple times a week (on demand)
High level planning & estimation
Size Estimate
Small 1
Medium 2
Large 3
Extra Large 5
Velocity = 10
High Level Planning & funding approval happens when there are no user stories. How to confirm doability at that level?
A custom model is to divide the work requests into size categories.
The normal velocity driven planning model has been extended for high level planning. Velocity is known based on historic data and refined constantly.
Also factor in risks and external dependencies.
Backlog Management & Estimation
Divide the work requests into features and prioritize.
Use Fibonacci series for estimation.
Focus on ‘Must Have’ features
Maintain 20-40% ‘Good to have’ features as planning buffer.
Reference: http://www.expertprogrammanagement.com/
Next Steps
Further automation to reduce hardening period.
Resolving test environment constraints to have better ‘DONE DONE’ definition.
Continue with technical enhancements to speed up development.
Summary
Focus on business problems first
Don’t sell agile, just show the value
Avoid jargons, use the language which people understand
Engage performing organization
Collaborate and build relationships with PMOs & support functions
Focus on technical agility
Focus on being agile rather than doing agile
Remember AGILE is a journey rather than destination