SlideShare uma empresa Scribd logo
1 de 51
Lean Software Delivery
Get lean and mean without
being stretched too thing
UrbanCode Inc. ©2013
Lead Consultant & Tech Evangelist
Eric is Lead Consultant at Urbancode
where I help customers get the most
out of their build, deploy and
release processes.
Today he works with customers and
industry leaders to figure out this
DevOps thing.
Eric Minick
eminick@us.ibm.com
@EricMinick
UrbanCode Inc. ©2013
Why Lean?
 Need to do more
- Agile: Faster pace of builds & releases
- More complex architectures
- Distributed, even global teams
 Adding more people unlikely
 Only solution is to increase efficiency
UrbanCode Inc. ©2013
Lean Software
 By analogy, inspiration and even direct mapping from
Lean Manufacturing
 More focused on principles than practices
- 7 Lean Principles
- Complements and underpins Agile and DevOps
 Provides a low-risk approach to increasing efficiency
UrbanCode Inc. ©2013
Lean increases efficiency by removing waste
7 Wastes: of Manufacturing
Inventory
Extra Processing
Overproduction
Transportation
Waiting
Motion
Defects
7 Wastes: of Software
Partially Done Work
Extra Processes
Extra Features
Task Switching
Waiting
Motion
Defects
UrbanCode Inc. ©2013
Wastes: 1 Partially Done Work
 Waste: Work you get no value from
 Risk: Untestable.
- Can’t verify you’re on the right track
Commons.wikimedia.org
UrbanCode Inc. ©2013
Wastes: 2 Extra Process
 Wastes: Paperwork that nobody really reads is
“theater” at best, a complete waste at worst.
 What happens if we skip or delay this process? Is any
value to the customer lost?
Image:
http://upload.wikimedia.org/wikipedia/commons/d/d9/Paperwork_-
_by_Tom_Ventura.jpg
UrbanCode Inc. ©2013
Wastes: 3 Extra Features
 Waste: All planning, development and testing time
was useless. No value was delivered.
 Worse: Extra complexity was introduced
Image: http://commons.wikimedia.org/wiki/File:IPhone_3G.png
UrbanCode Inc. ©2013
Wastes: 4 Task Switching
 Waste: “Reloading” the information for various
concurrent process is expensive when switching
between them.
?
Another useless meeting…
now where was I on this?
UrbanCode Inc. ©2013
Wastes: 5 Waiting
 Waste: When the project is not moving
forward, value is not being delivered.
Waiting tends to generate more task switching as well.
♫
UrbanCode Inc. ©2013
Wastes: 6 Motion
 Each hand-off represents a risk due to incomplete
knowledge.
 Can my developer quickly understand a feature, or
does she need to ask someone; who asks someone;
who asks someone?
UrbanCode Inc. ©2013
Wastes: 7 Defects
 Severity of Defect * Time undetected
UrbanCode Inc. ©2013
In Short
Build the right thing
Deliver it promptly
UrbanCode Inc. ©2013
In Short
Build the right thing
Deliver it promptly
Execute Efficiently
UrbanCode Inc. ©2013
In Short
Build the right thing
Deliver it promptly
Execute Efficiently
Agile focuses
here
DevOps
focuses here
UrbanCode Inc. ©2013
In Short
Build the right thing
Deliver it promptly
Execute Efficiently
Agile
focuses here
DevOps
focuses here
DevOps also
helps with
feedback
UrbanCode Inc. ©2013
Build the right thing: Strategy by situation
 When requirements are well understood
- Document them well
 When big picture is understood but details are shaky
- Tight customer collaboration
- Rapidly deliver to QA and user acceptance for validation
 When big picture of the app is shaky
- Use ‘Lean Startup’ approach of Minimum Viable Product
• Get something in front of customers quickly and measure
UrbanCode Inc. ©2013
Should I support „Log-in with Facebook‟?
UrbanCode Inc. ©2013
Should I support „Log-in with Facebook‟?
UrbanCode Inc. ©2013
Should I support „Log-in with Facebook‟?
Pro: Lower sign-up barrier to entry.
More customers!
Con: My company is B2B.
Maybe Facebook is too personal
1) Acknowledge uncertainty
UrbanCode Inc. ©2013
Should I support „Log-in with Facebook‟?
Pro: Lower sign-up barrier to entry.
More customers!
Con: My company is B2B.
Maybe Facebook is too personal
2) Establish a Thesis
10% of People who would otherwise
‘bounce’ will attempt to sign up w/ Facebook
UrbanCode Inc. ©2013
Pro: Lower sign-up barrier to entry.
More customers!
Con: My company is B2B.
Maybe Facebook is too personal
3) Test it cheaply. Then decide
10% of People who would otherwise
‘bounce’ will attempt to sign up w/ Facebook
Add button that doesn’t work for X% of
visitors. Measure attempted use.
Something went wrong. Try
again.
Should I support „Log-in with Facebook‟?
UrbanCode Inc. ©2013
Experimentation may depend on delivery
Build the right thing
Deliver it promptly
Execute Efficiently
Agile
focuses here
DevOps
focuses here
DevOps also
helps with
feedback
UrbanCode Inc. ©2013
Visualize waste with lean techniques
Spaghetti Diagramming
- shows motion, such as handoffs and the flow of artifacts
between people
Value Stream Mapping
- shows the temporal division between work being done
(value being added) and waiting (waste)
image credits: http://commons.wikimedia.org/wiki/File:Diagram_spaghetti_kilka_produktow.PNG
http://www.michaelnygard.com/blog/2008/02/outrunning_your_headlights.html
UrbanCode Inc. ©2013
Example: Sign-off Process
1. PM emails Dev Manager
2. Dev Manager emails PM
3. PM emails QA Manager
4. QA Manager emails PM
5. PM emails Operations
6. Operations emails PM
UrbanCode Inc. ©2013
Spaghetti diagrams show flow of work
UrbanCode Inc. ©2013
Value stream map shows delays
---
30
30
30
30
30
1
1
1
1
1
1
Waiting Working
150 6
1. PM  Dev
2. PM  Dev
3. PM  QA
4. PM  QA
5. PM  Ops
6. PM  Ops
UrbanCode Inc. ©2013
Value stream map after process change
---
---
30
---
30
30
1
---
1
---
1
1
Waiting Working
90 4
1. PM  Dev
2. ----------
3. Dev  QA
4. ----------
5. QA  Ops
6. Ops  PM
UrbanCode Inc. ©2013
Lean Software Takeaways
 Inspired by Lean Manufacturing
 Strong emphasis on removing “waste”
 The 7 Wastes of Lean Software Development
 Tools for Visualizing Waste
UrbanCode Inc. ©2013
A Lean view of build & deployment
UrbanCode Inc. ©2013
Common Practice: “Dan the Deployer”
1. Pam emails Dan to deploy to the Development
environment
2. Dan the Deployer reads the email
3. Dan moves the build artifacts to the Development
environment
4. Dan runs the deployment scripts
5. Deployment script runs while Dan monitors
progress via the console
6. Dan emails Pam to let her know the deployment is
complete
7. Pam reads the email
UrbanCode Inc. ©2013
Dan‟s Diagram
UrbanCode Inc. ©2013
1. Pam emails
2. Dan reads
3. Moves artifacts
4. Launches script
5. Deploy runs
6. Dan emails
7. Pam reads
---
?
?
?
0
?
1
1
1
1
1
10
1
1
Waiting Working
? 16
Delays from Dan
UrbanCode Inc. ©2013
What if Pam could click a button?
http://commons.wikimedia.org/wiki/File:Big_Green_Button.png
UrbanCode Inc. ©2013
1. Pam triggers
2. ----------
3. Move artifacts
4. ----------
5. Deploy runs
6. System emails
7. Pam reads
---
---
0
---
0
0
1
1
---
1
---
10
0
1
Waiting Working
1 13
Self-service deployment removes delays
UrbanCode Inc. ©2013
Deployment automation story
 Offshore testing team needed to request deploys to
test environments
- Due to timezones, average turn-around was 20 hours
- Giving the offshore team direct access to servers was not
an option
 Secure, automated deployments allow self-service
- Turn around drops to under one hour
 Win: 15% more testing gets done. Defects found
faster, cheaper to fix, and product ships quicker.
UrbanCode Inc. ©2013
Bug fix & verify cycle
1. Pam commits a feature
2. Feature is built by Bob
3. Build with new feature is deployed by Dan
4. Tom the Tester tests new feature and reports a bug
5. Pam fixes the bug
6. Bug fix is built
7. Build with fix is deployed
8. Tom verifies the bug fix
UrbanCode Inc. ©2013
Manual fix & verify spaghetti
UrbanCode Inc. ©2013
Bug fix & verify value stream
720
3600
240
2880
720
3600
240
15
15
120
60
15
15
60
Waiting Working
12000 300
1. Feature build
2. Build deployed
3. Bug reported
4. Pam fixes
5. Fix built
6. Fix deployed
7. Tom verifies
UrbanCode Inc. ©2013
Adding automation
1. Automated builds (CI); that invokes:
2. Automated deployments; that invokes:
3. Automated regression tests
UrbanCode Inc. ©2013
15
15
120
60
15
15
60
1. Feature build
2. Build deployed
3. Bug reported
4. Pam fixes
5. Fix built
6. Fix deployed
7. Tom verifies
720
3600
240
2880
720
3600
240
Waiting Working
12000 300
Impact of continuous delivery
UrbanCode Inc. ©2013
720
3600
240
2880
720
3600
240
15
15
120
60
15
15
60
1. Feature build
2. Build deployed
3. Bug reported
4. Pam fixes
5. Fix built
6. Fix deployed
7. Tom verifies
Waiting Working
12000 300
Impact of automated testing
UrbanCode Inc. ©2013
1. Feature build
2. Build deployed
3. Bug reported
4. Pam fixes
5. Fix built
6. Fix deployed
7. Tom verifies
Waiting Working
12000 300
720
3600
240
2880
720
3600
240
15
15
120
60
15
15
60
Impact of automated reporting
UrbanCode Inc. ©2013
Bug fix & verify with Enterprise CD
UrbanCode Inc. ©2013
Bug fix & verify value stream with ECD
0
0
0
60
0
0
1440
15
15
30
15
15
15
120
Waiting Working
1500 225
1. Feature build
2. Build deployed
3. Bug reported
4. Pam fixes
5. Fix built
6. Fix deployed
7. Tom verifies
UrbanCode Inc. ©2013
CD impact on bug fix & verify cycle
Partially Done Work
Extra Processes: no bug “hot potato”; Tom tests once
Extra Features
Task Switching: Pam quickly notified of defect
Waiting: no waiting for builds or deployments
Motion: fewer handoffs; no bug report adminstrivia
Defects: more time testing, can find additional defects
UrbanCode Inc. ©2013
The impact of automated building & testing
 90% rise in LOC output/programmer
when performing builds at least daily
 36% reduction in defect rate
when integration/regression testing at each code check-in
“Trade-offs between Productivity and Quality in
Selecting Software Development Practices”, IEEE
Software, Sept-Oct 2003
UrbanCode Inc. ©2013
Think at the system level
Image credit: http://52weeksofux.com/post/694598769/the-local-maximum
UrbanCode Inc. ©2013
Urbancode.com/resources
Continuous Delivery Maturity Model
Deployment Automation Basics
Value of Deployment Automation
Blogs.urbancode.com
Twitter.com/UrbanCode
Facebook.com/IBMUrbanCodeProducts
SlideShare.net/Urbancode
Further Resources
UrbanCode Inc. ©2013
Yes, UrbanCode has tools that help
 IBM UrbanCode Deploy
- Application Release Automation
 IBM UrbanCode Release
- Release management and release weekend v
execution
 IBM UrbanCode Build
- Build automation on an enterprise scale
Q&A
eminick@us.ibm.com
Slideshare.net/Urbancode
@EricMinick
Linked-in group:
“Automating Deployment and Release”

Mais conteúdo relacionado

Mais procurados

Agile lean software development principles
Agile  lean software development principlesAgile  lean software development principles
Agile lean software development principlesEyna Hamdzah
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software DevelopmentSaqib Raza
 
Lean Concepts & Agile Software Methodologies
Lean Concepts & Agile Software MethodologiesLean Concepts & Agile Software Methodologies
Lean Concepts & Agile Software MethodologiesBrad Smith
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Developmentsushant.1409
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentThanh Nguyen
 
Succeeding with Agile
Succeeding with AgileSucceeding with Agile
Succeeding with AgileMike Cohn
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software DevelopmentTathagat Varma
 
Lean Software Development Alan Shalloway
Lean Software Development   Alan ShallowayLean Software Development   Alan Shalloway
Lean Software Development Alan ShallowayValtech UK
 
Agile Executive Briefing - Situational Assessment + 50k Ft View
Agile Executive Briefing - Situational Assessment + 50k Ft ViewAgile Executive Briefing - Situational Assessment + 50k Ft View
Agile Executive Briefing - Situational Assessment + 50k Ft ViewMichael Sahota
 
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Jaguaraci Silva
 
Agile Methods: The Good, the Hype and the Ugly
Agile Methods: The Good, the Hype and the UglyAgile Methods: The Good, the Hype and the Ugly
Agile Methods: The Good, the Hype and the UglyTyrone Grandison
 
Intro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentIntro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentAleksejs Truhans
 
importance of resources allocation in formal method of software engineering ...
 importance of resources allocation in formal method of software engineering ... importance of resources allocation in formal method of software engineering ...
importance of resources allocation in formal method of software engineering ...Abdul Naqashbandi
 
Benefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementBenefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementDavid Updike
 
Agility is the tool gilb vilnius 9 dec 2013
Agility is the tool gilb vilnius 9 dec 2013Agility is the tool gilb vilnius 9 dec 2013
Agility is the tool gilb vilnius 9 dec 2013tom gilb
 
Why Do So Many Software Projects Fail?
Why Do So Many Software Projects Fail?Why Do So Many Software Projects Fail?
Why Do So Many Software Projects Fail?Phil Comelio
 
The real reason that projects fail and how to fix it - An introduction to Cri...
The real reason that projects fail and how to fix it - An introduction to Cri...The real reason that projects fail and how to fix it - An introduction to Cri...
The real reason that projects fail and how to fix it - An introduction to Cri...Association for Project Management
 
Why Projects Fail + Four Steps to Succeed
Why Projects Fail + Four Steps to SucceedWhy Projects Fail + Four Steps to Succeed
Why Projects Fail + Four Steps to SucceedKevin Wordon
 

Mais procurados (20)

Agile lean software development principles
Agile  lean software development principlesAgile  lean software development principles
Agile lean software development principles
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Lean Concepts & Agile Software Methodologies
Lean Concepts & Agile Software MethodologiesLean Concepts & Agile Software Methodologies
Lean Concepts & Agile Software Methodologies
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Succeeding with Agile
Succeeding with AgileSucceeding with Agile
Succeeding with Agile
 
Poor Man's Kanban
Poor Man's KanbanPoor Man's Kanban
Poor Man's Kanban
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Lean Software Development Alan Shalloway
Lean Software Development   Alan ShallowayLean Software Development   Alan Shalloway
Lean Software Development Alan Shalloway
 
Agile Executive Briefing - Situational Assessment + 50k Ft View
Agile Executive Briefing - Situational Assessment + 50k Ft ViewAgile Executive Briefing - Situational Assessment + 50k Ft View
Agile Executive Briefing - Situational Assessment + 50k Ft View
 
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
 
Agile Methods: The Good, the Hype and the Ugly
Agile Methods: The Good, the Hype and the UglyAgile Methods: The Good, the Hype and the Ugly
Agile Methods: The Good, the Hype and the Ugly
 
Intro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentIntro to Agile and Lean Software Development
Intro to Agile and Lean Software Development
 
importance of resources allocation in formal method of software engineering ...
 importance of resources allocation in formal method of software engineering ... importance of resources allocation in formal method of software engineering ...
importance of resources allocation in formal method of software engineering ...
 
Benefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementBenefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior Management
 
Agility is the tool gilb vilnius 9 dec 2013
Agility is the tool gilb vilnius 9 dec 2013Agility is the tool gilb vilnius 9 dec 2013
Agility is the tool gilb vilnius 9 dec 2013
 
Why Do So Many Software Projects Fail?
Why Do So Many Software Projects Fail?Why Do So Many Software Projects Fail?
Why Do So Many Software Projects Fail?
 
The real reason that projects fail and how to fix it - An introduction to Cri...
The real reason that projects fail and how to fix it - An introduction to Cri...The real reason that projects fail and how to fix it - An introduction to Cri...
The real reason that projects fail and how to fix it - An introduction to Cri...
 
Why Projects Fail + Four Steps to Succeed
Why Projects Fail + Four Steps to SucceedWhy Projects Fail + Four Steps to Succeed
Why Projects Fail + Four Steps to Succeed
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 

Destaque

Software Delivery Model
Software Delivery ModelSoftware Delivery Model
Software Delivery ModelMatt Cowell
 
Modern Continuous Software Delivery
Modern Continuous Software DeliveryModern Continuous Software Delivery
Modern Continuous Software DeliveryMartin Logan
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...IBM UrbanCode Products
 
3 keys for enabling an agile software delivery
3 keys for enabling an agile software delivery3 keys for enabling an agile software delivery
3 keys for enabling an agile software deliveryOscar Centeno
 
What is docker and how does it improve software delivery?
What is docker and how does it improve software delivery?What is docker and how does it improve software delivery?
What is docker and how does it improve software delivery?continohq
 
Applying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software DeliveryApplying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software DeliverySanjeev Sharma
 
Agile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesAgile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesDavid Tzemach
 
Agile vs Waterfall Project management
Agile vs Waterfall  Project management Agile vs Waterfall  Project management
Agile vs Waterfall Project management Kostiantyn Trefiak
 
How to Visualize Data Like a Pro
How to Visualize Data Like a ProHow to Visualize Data Like a Pro
How to Visualize Data Like a Pro24Slides
 
7 Myths When Answering Tough Questions During Presentations
7 Myths When Answering Tough Questions During Presentations7 Myths When Answering Tough Questions During Presentations
7 Myths When Answering Tough Questions During Presentations24Slides
 
PowerPoint Hacks for Rookies: 4 Must Consider Aspects
PowerPoint Hacks for Rookies: 4 Must Consider AspectsPowerPoint Hacks for Rookies: 4 Must Consider Aspects
PowerPoint Hacks for Rookies: 4 Must Consider Aspects24Slides
 

Destaque (15)

Software Delivery Model
Software Delivery ModelSoftware Delivery Model
Software Delivery Model
 
Modern Continuous Software Delivery
Modern Continuous Software DeliveryModern Continuous Software Delivery
Modern Continuous Software Delivery
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...
 
3 keys for enabling an agile software delivery
3 keys for enabling an agile software delivery3 keys for enabling an agile software delivery
3 keys for enabling an agile software delivery
 
What is docker and how does it improve software delivery?
What is docker and how does it improve software delivery?What is docker and how does it improve software delivery?
What is docker and how does it improve software delivery?
 
Applying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software DeliveryApplying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software Delivery
 
Agile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differencesAgile vs. waterfall - The fundamentals differences
Agile vs. waterfall - The fundamentals differences
 
Agile vs waterfall methodology
Agile vs waterfall methodologyAgile vs waterfall methodology
Agile vs waterfall methodology
 
Software quality
Software qualitySoftware quality
Software quality
 
Agile vs Waterfall Project management
Agile vs Waterfall  Project management Agile vs Waterfall  Project management
Agile vs Waterfall Project management
 
Agile vs Waterfall
Agile vs WaterfallAgile vs Waterfall
Agile vs Waterfall
 
How to Visualize Data Like a Pro
How to Visualize Data Like a ProHow to Visualize Data Like a Pro
How to Visualize Data Like a Pro
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
7 Myths When Answering Tough Questions During Presentations
7 Myths When Answering Tough Questions During Presentations7 Myths When Answering Tough Questions During Presentations
7 Myths When Answering Tough Questions During Presentations
 
PowerPoint Hacks for Rookies: 4 Must Consider Aspects
PowerPoint Hacks for Rookies: 4 Must Consider AspectsPowerPoint Hacks for Rookies: 4 Must Consider Aspects
PowerPoint Hacks for Rookies: 4 Must Consider Aspects
 

Semelhante a Lean Software Delivery

Building Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platformsBuilding Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platformsDr Ganesh Iyer
 
Solution Connect Indonesia - June 2015 - The Hidden Advantage
Solution Connect Indonesia - June 2015 - The Hidden AdvantageSolution Connect Indonesia - June 2015 - The Hidden Advantage
Solution Connect Indonesia - June 2015 - The Hidden AdvantageDenny Muktar
 
iOS CI/CD: Continuous Integration and Continuous Delivery Explained
iOS CI/CD: Continuous Integration and Continuous Delivery ExplainediOS CI/CD: Continuous Integration and Continuous Delivery Explained
iOS CI/CD: Continuous Integration and Continuous Delivery ExplainedSemaphore
 
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...Dana Gardner
 
Fitness Activity Recognition for Smartphone
Fitness Activity Recognition for SmartphoneFitness Activity Recognition for Smartphone
Fitness Activity Recognition for SmartphoneIRJET Journal
 
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...Richard Rabins
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationBoris Dominic
 
Vincent Spena - Agile and Lean Methods for Hardware Product Development
Vincent Spena - Agile and Lean Methods for Hardware Product DevelopmentVincent Spena - Agile and Lean Methods for Hardware Product Development
Vincent Spena - Agile and Lean Methods for Hardware Product DevelopmentVincent Spena
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuousMichele Orselli
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployPeter Gfader
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservicesDynatrace
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reductionChris Sparshott
 
Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)VMware Tanzu
 

Semelhante a Lean Software Delivery (20)

Continuous Delivery Maturity Model
Continuous Delivery Maturity ModelContinuous Delivery Maturity Model
Continuous Delivery Maturity Model
 
The DevOps Imperative
The DevOps ImperativeThe DevOps Imperative
The DevOps Imperative
 
Ci/cd for App development
Ci/cd  for App developmentCi/cd  for App development
Ci/cd for App development
 
Building Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platformsBuilding Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platforms
 
Solution Connect Indonesia - June 2015 - The Hidden Advantage
Solution Connect Indonesia - June 2015 - The Hidden AdvantageSolution Connect Indonesia - June 2015 - The Hidden Advantage
Solution Connect Indonesia - June 2015 - The Hidden Advantage
 
How Automation Reveals Technical Debt
How Automation Reveals Technical DebtHow Automation Reveals Technical Debt
How Automation Reveals Technical Debt
 
iOS CI/CD: Continuous Integration and Continuous Delivery Explained
iOS CI/CD: Continuous Integration and Continuous Delivery ExplainediOS CI/CD: Continuous Integration and Continuous Delivery Explained
iOS CI/CD: Continuous Integration and Continuous Delivery Explained
 
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...
Kony Visualizer Puts Mobile Apps Features Control in Hands of Those Closest t...
 
Fitness Activity Recognition for Smartphone
Fitness Activity Recognition for SmartphoneFitness Activity Recognition for Smartphone
Fitness Activity Recognition for Smartphone
 
12 top app testing tools
12 top app testing tools12 top app testing tools
12 top app testing tools
 
How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...
Alpha Anywhere presentation at the the Always on Summit -- Building Offline M...
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Vincent Spena - Agile and Lean Methods for Hardware Product Development
Vincent Spena - Agile and Lean Methods for Hardware Product DevelopmentVincent Spena - Agile and Lean Methods for Hardware Product Development
Vincent Spena - Agile and Lean Methods for Hardware Product Development
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuous
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeploy
 
6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices6 ways DevOps helped PrepSportswear move from monolith to microservices
6 ways DevOps helped PrepSportswear move from monolith to microservices
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
 
Continuous Delivery in the Enterprise
Continuous Delivery in the EnterpriseContinuous Delivery in the Enterprise
Continuous Delivery in the Enterprise
 
Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)
 

Mais de IBM UrbanCode Products

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9IBM UrbanCode Products
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewIBM UrbanCode Products
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesIBM UrbanCode Products
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversalIBM UrbanCode Products
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...IBM UrbanCode Products
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureIBM UrbanCode Products
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at ScaleIBM UrbanCode Products
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeIBM UrbanCode Products
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeployIBM UrbanCode Products
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsIBM UrbanCode Products
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapIBM UrbanCode Products
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilIBM UrbanCode Products
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesIBM UrbanCode Products
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployIBM UrbanCode Products
 
Creating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilCreating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilIBM UrbanCode Products
 

Mais de IBM UrbanCode Products (20)

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
 
What's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployWhat's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode Deploy
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT Challenges
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at Scale
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCode
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode Deploy
 
Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOps
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the Dots
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
 
Creating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilCreating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't Evil
 

Último

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 

Último (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 

Lean Software Delivery

  • 1. Lean Software Delivery Get lean and mean without being stretched too thing
  • 2. UrbanCode Inc. ©2013 Lead Consultant & Tech Evangelist Eric is Lead Consultant at Urbancode where I help customers get the most out of their build, deploy and release processes. Today he works with customers and industry leaders to figure out this DevOps thing. Eric Minick eminick@us.ibm.com @EricMinick
  • 3. UrbanCode Inc. ©2013 Why Lean?  Need to do more - Agile: Faster pace of builds & releases - More complex architectures - Distributed, even global teams  Adding more people unlikely  Only solution is to increase efficiency
  • 4. UrbanCode Inc. ©2013 Lean Software  By analogy, inspiration and even direct mapping from Lean Manufacturing  More focused on principles than practices - 7 Lean Principles - Complements and underpins Agile and DevOps  Provides a low-risk approach to increasing efficiency
  • 5. UrbanCode Inc. ©2013 Lean increases efficiency by removing waste 7 Wastes: of Manufacturing Inventory Extra Processing Overproduction Transportation Waiting Motion Defects 7 Wastes: of Software Partially Done Work Extra Processes Extra Features Task Switching Waiting Motion Defects
  • 6. UrbanCode Inc. ©2013 Wastes: 1 Partially Done Work  Waste: Work you get no value from  Risk: Untestable. - Can’t verify you’re on the right track Commons.wikimedia.org
  • 7. UrbanCode Inc. ©2013 Wastes: 2 Extra Process  Wastes: Paperwork that nobody really reads is “theater” at best, a complete waste at worst.  What happens if we skip or delay this process? Is any value to the customer lost? Image: http://upload.wikimedia.org/wikipedia/commons/d/d9/Paperwork_- _by_Tom_Ventura.jpg
  • 8. UrbanCode Inc. ©2013 Wastes: 3 Extra Features  Waste: All planning, development and testing time was useless. No value was delivered.  Worse: Extra complexity was introduced Image: http://commons.wikimedia.org/wiki/File:IPhone_3G.png
  • 9. UrbanCode Inc. ©2013 Wastes: 4 Task Switching  Waste: “Reloading” the information for various concurrent process is expensive when switching between them. ? Another useless meeting… now where was I on this?
  • 10. UrbanCode Inc. ©2013 Wastes: 5 Waiting  Waste: When the project is not moving forward, value is not being delivered. Waiting tends to generate more task switching as well. ♫
  • 11. UrbanCode Inc. ©2013 Wastes: 6 Motion  Each hand-off represents a risk due to incomplete knowledge.  Can my developer quickly understand a feature, or does she need to ask someone; who asks someone; who asks someone?
  • 12. UrbanCode Inc. ©2013 Wastes: 7 Defects  Severity of Defect * Time undetected
  • 13. UrbanCode Inc. ©2013 In Short Build the right thing Deliver it promptly
  • 14. UrbanCode Inc. ©2013 In Short Build the right thing Deliver it promptly Execute Efficiently
  • 15. UrbanCode Inc. ©2013 In Short Build the right thing Deliver it promptly Execute Efficiently Agile focuses here DevOps focuses here
  • 16. UrbanCode Inc. ©2013 In Short Build the right thing Deliver it promptly Execute Efficiently Agile focuses here DevOps focuses here DevOps also helps with feedback
  • 17. UrbanCode Inc. ©2013 Build the right thing: Strategy by situation  When requirements are well understood - Document them well  When big picture is understood but details are shaky - Tight customer collaboration - Rapidly deliver to QA and user acceptance for validation  When big picture of the app is shaky - Use ‘Lean Startup’ approach of Minimum Viable Product • Get something in front of customers quickly and measure
  • 18. UrbanCode Inc. ©2013 Should I support „Log-in with Facebook‟?
  • 19. UrbanCode Inc. ©2013 Should I support „Log-in with Facebook‟?
  • 20. UrbanCode Inc. ©2013 Should I support „Log-in with Facebook‟? Pro: Lower sign-up barrier to entry. More customers! Con: My company is B2B. Maybe Facebook is too personal 1) Acknowledge uncertainty
  • 21. UrbanCode Inc. ©2013 Should I support „Log-in with Facebook‟? Pro: Lower sign-up barrier to entry. More customers! Con: My company is B2B. Maybe Facebook is too personal 2) Establish a Thesis 10% of People who would otherwise ‘bounce’ will attempt to sign up w/ Facebook
  • 22. UrbanCode Inc. ©2013 Pro: Lower sign-up barrier to entry. More customers! Con: My company is B2B. Maybe Facebook is too personal 3) Test it cheaply. Then decide 10% of People who would otherwise ‘bounce’ will attempt to sign up w/ Facebook Add button that doesn’t work for X% of visitors. Measure attempted use. Something went wrong. Try again. Should I support „Log-in with Facebook‟?
  • 23. UrbanCode Inc. ©2013 Experimentation may depend on delivery Build the right thing Deliver it promptly Execute Efficiently Agile focuses here DevOps focuses here DevOps also helps with feedback
  • 24. UrbanCode Inc. ©2013 Visualize waste with lean techniques Spaghetti Diagramming - shows motion, such as handoffs and the flow of artifacts between people Value Stream Mapping - shows the temporal division between work being done (value being added) and waiting (waste) image credits: http://commons.wikimedia.org/wiki/File:Diagram_spaghetti_kilka_produktow.PNG http://www.michaelnygard.com/blog/2008/02/outrunning_your_headlights.html
  • 25. UrbanCode Inc. ©2013 Example: Sign-off Process 1. PM emails Dev Manager 2. Dev Manager emails PM 3. PM emails QA Manager 4. QA Manager emails PM 5. PM emails Operations 6. Operations emails PM
  • 26. UrbanCode Inc. ©2013 Spaghetti diagrams show flow of work
  • 27. UrbanCode Inc. ©2013 Value stream map shows delays --- 30 30 30 30 30 1 1 1 1 1 1 Waiting Working 150 6 1. PM  Dev 2. PM  Dev 3. PM  QA 4. PM  QA 5. PM  Ops 6. PM  Ops
  • 28. UrbanCode Inc. ©2013 Value stream map after process change --- --- 30 --- 30 30 1 --- 1 --- 1 1 Waiting Working 90 4 1. PM  Dev 2. ---------- 3. Dev  QA 4. ---------- 5. QA  Ops 6. Ops  PM
  • 29. UrbanCode Inc. ©2013 Lean Software Takeaways  Inspired by Lean Manufacturing  Strong emphasis on removing “waste”  The 7 Wastes of Lean Software Development  Tools for Visualizing Waste
  • 30. UrbanCode Inc. ©2013 A Lean view of build & deployment
  • 31. UrbanCode Inc. ©2013 Common Practice: “Dan the Deployer” 1. Pam emails Dan to deploy to the Development environment 2. Dan the Deployer reads the email 3. Dan moves the build artifacts to the Development environment 4. Dan runs the deployment scripts 5. Deployment script runs while Dan monitors progress via the console 6. Dan emails Pam to let her know the deployment is complete 7. Pam reads the email
  • 33. UrbanCode Inc. ©2013 1. Pam emails 2. Dan reads 3. Moves artifacts 4. Launches script 5. Deploy runs 6. Dan emails 7. Pam reads --- ? ? ? 0 ? 1 1 1 1 1 10 1 1 Waiting Working ? 16 Delays from Dan
  • 34. UrbanCode Inc. ©2013 What if Pam could click a button? http://commons.wikimedia.org/wiki/File:Big_Green_Button.png
  • 35. UrbanCode Inc. ©2013 1. Pam triggers 2. ---------- 3. Move artifacts 4. ---------- 5. Deploy runs 6. System emails 7. Pam reads --- --- 0 --- 0 0 1 1 --- 1 --- 10 0 1 Waiting Working 1 13 Self-service deployment removes delays
  • 36. UrbanCode Inc. ©2013 Deployment automation story  Offshore testing team needed to request deploys to test environments - Due to timezones, average turn-around was 20 hours - Giving the offshore team direct access to servers was not an option  Secure, automated deployments allow self-service - Turn around drops to under one hour  Win: 15% more testing gets done. Defects found faster, cheaper to fix, and product ships quicker.
  • 37. UrbanCode Inc. ©2013 Bug fix & verify cycle 1. Pam commits a feature 2. Feature is built by Bob 3. Build with new feature is deployed by Dan 4. Tom the Tester tests new feature and reports a bug 5. Pam fixes the bug 6. Bug fix is built 7. Build with fix is deployed 8. Tom verifies the bug fix
  • 38. UrbanCode Inc. ©2013 Manual fix & verify spaghetti
  • 39. UrbanCode Inc. ©2013 Bug fix & verify value stream 720 3600 240 2880 720 3600 240 15 15 120 60 15 15 60 Waiting Working 12000 300 1. Feature build 2. Build deployed 3. Bug reported 4. Pam fixes 5. Fix built 6. Fix deployed 7. Tom verifies
  • 40. UrbanCode Inc. ©2013 Adding automation 1. Automated builds (CI); that invokes: 2. Automated deployments; that invokes: 3. Automated regression tests
  • 41. UrbanCode Inc. ©2013 15 15 120 60 15 15 60 1. Feature build 2. Build deployed 3. Bug reported 4. Pam fixes 5. Fix built 6. Fix deployed 7. Tom verifies 720 3600 240 2880 720 3600 240 Waiting Working 12000 300 Impact of continuous delivery
  • 42. UrbanCode Inc. ©2013 720 3600 240 2880 720 3600 240 15 15 120 60 15 15 60 1. Feature build 2. Build deployed 3. Bug reported 4. Pam fixes 5. Fix built 6. Fix deployed 7. Tom verifies Waiting Working 12000 300 Impact of automated testing
  • 43. UrbanCode Inc. ©2013 1. Feature build 2. Build deployed 3. Bug reported 4. Pam fixes 5. Fix built 6. Fix deployed 7. Tom verifies Waiting Working 12000 300 720 3600 240 2880 720 3600 240 15 15 120 60 15 15 60 Impact of automated reporting
  • 44. UrbanCode Inc. ©2013 Bug fix & verify with Enterprise CD
  • 45. UrbanCode Inc. ©2013 Bug fix & verify value stream with ECD 0 0 0 60 0 0 1440 15 15 30 15 15 15 120 Waiting Working 1500 225 1. Feature build 2. Build deployed 3. Bug reported 4. Pam fixes 5. Fix built 6. Fix deployed 7. Tom verifies
  • 46. UrbanCode Inc. ©2013 CD impact on bug fix & verify cycle Partially Done Work Extra Processes: no bug “hot potato”; Tom tests once Extra Features Task Switching: Pam quickly notified of defect Waiting: no waiting for builds or deployments Motion: fewer handoffs; no bug report adminstrivia Defects: more time testing, can find additional defects
  • 47. UrbanCode Inc. ©2013 The impact of automated building & testing  90% rise in LOC output/programmer when performing builds at least daily  36% reduction in defect rate when integration/regression testing at each code check-in “Trade-offs between Productivity and Quality in Selecting Software Development Practices”, IEEE Software, Sept-Oct 2003
  • 48. UrbanCode Inc. ©2013 Think at the system level Image credit: http://52weeksofux.com/post/694598769/the-local-maximum
  • 49. UrbanCode Inc. ©2013 Urbancode.com/resources Continuous Delivery Maturity Model Deployment Automation Basics Value of Deployment Automation Blogs.urbancode.com Twitter.com/UrbanCode Facebook.com/IBMUrbanCodeProducts SlideShare.net/Urbancode Further Resources
  • 50. UrbanCode Inc. ©2013 Yes, UrbanCode has tools that help  IBM UrbanCode Deploy - Application Release Automation  IBM UrbanCode Release - Release management and release weekend v execution  IBM UrbanCode Build - Build automation on an enterprise scale