SlideShare une entreprise Scribd logo
1  sur  52
THINGS TO UNLEARN IN SOFTWARE DEVELOPMENT AlexeyKrivitsky, SCRUMguides.com for Agile Slovakia, 14 Jan 2010
2 AlexeyKrivitsky Agile coach and Scrum trainer  at SCRUMguides krivitsky@scrumguides.comtwitter.com/alexeykri Skype: alexeykrvGSM: +380.50.358.9212 Coordination of Agile Ukraine communitywww.agileukraine.org Agile Eastern Europe conferencewww.agileee.org Agile Base Camp conferencewww.agilebasecamp.org 2
The History of Vasa
The History of Vasa
The History of Vasa
The History of Vasa
The Reasons of the Tragedy A very important client Unrealistic plans Scope creep High technology risks Architectural flaws Acceptance testing failures The lead architect changed Wishful thinking Development priorities are not balanced Deployment-time mistakes Does all that sound familiar?
350 Years Later… Ship construction body of knowledge has improved a lot New domains and industries were born  Project Management became a science Why nearly four centuries later  we are still facing the same issues in our domain?
1
DILEMMA OFIMPORTANCE ANDRIGHTNTESS OF A CUSTOMER Hurry Gordon Selfridge said: «The customer is always right» But what if an important customer is not right?
Ignore employees’ preferences and comfort Unconditional agreement with customersmight lead to quality problems Employees’ motivation fades out Lowered quality of service
We accept unrealistic deadlines We agree on suboptimal solutions We let technical requirements to be dictated We are afraid to pose a denial In the end,the product will have our label Unconditional agreement with customers might lead to project failures
UnlearnTO BE UNDENIABLE Your 'yes' has no power  if you do not know how to say 'no'
LearnTO COLLABORATE Start by saying «No!» to unacceptable conditions And then invite to seek for better solutions That are realistic Professional Lead to Win-win
THE AGILE WAY Maker customers a part of the team Rely on face-to-face collaboration Run iteration planning meetings altogether Run regular demonstrations Build in trust by releasing valuable functionality early Build in quality
2
DILEMMA OFHARD PLANNING AND CONSTANT CHANGES Fixing requirements is like trying to pin a cloud Changes come inevitably
Project Scope Inevitably Changesbecause     1) Researches are made «the devil is in the details»
Project Scope Inevitably Changesbecause We often give our promises when we know too little
Project Scope Inevitably Changesbecause  2) Requirements are misunderstood
Project Scope Inevitably Changesbecause  3) Customers get 	new wishes and better ideas
Unlearn TO FIX PROJECT SCOPE [SCOPE] x [TIME] x BUDGET x QUALITY [SCOPE] x [TIME] x [BUDGET] x [QUALITY] [SCOPE] x [TIME] x [BUDGET] x [QUALITY] It is a	 «lose-lose» scenario
LearnTO MANAGE PROJECT SCOPE 1) Turn failures into learningby dividing projects into sub-projects Detail and nail down requirements only for the current sub-project Plan next sub-project based on experience of the previous ones
LearnTO MANAGE PROJECT SCOPE 2) Most likely you cannot do“all of it”so focus on the most valuable stuff On regular basis deliver the most valuable for business functionality Embrace changes to let business learn and create competitive advantages
THE AGILE WAY Let business set and change priorities for development at any time Let the Product Backlog growand evolve Work in time-boxed iterations Have a detailed plan for the current iteration Have a potentially shippable product increment after each iteration  Measure and use Team Velocity in planning
3
THE PROBLEM OF OVER-ENGENEERING  By trying to avoid changeswe tend to develop universal solutions Big Requirement Up Front (BRUF) Big Design Up Front (BDUF)
Unlearn TO TARGET FOR UNIVERSAL ARCHITECTURE It is impossible to foresee everything
LearnTO LET CHANGES HAPPEN AT MINIMAL COSTS Cheap - Simple Design Safe - Automated Test Suites With no Constrains - Refactoring Let the system architecture grow together with product knowledge
THE AGILE WAY Start development as early as possible Choose the simplest solutions that will work Reduce waste Zero-bug development strategy Root-cause analysis for each bug found
Do You Use Test-Driven Development Refactoring Continuous Integration
Some People Say «I ain’t need no unit-tests, I can write quality code without them» «I have no time for refactoring, that’s why I write correctly in the first place»
4
THE PROBLEM OF PROFESSIONAL CARELESSNESS Happens each time one does not think How the codebase will look like in ½ year What will happen to the codebase once we leave the project About the people who will support the product
UnlearnPROFESSIONALISM = BRAVERY
LearnPROFESSIONALISM = SAFETY
LearnPROFESSIONALISM = SAFETY 1) CARE ABOUT YOURSELF -  TDD -  Refactoring-  Continuous Integration Write code so that once in maintenance you can send yourself a card on a Thanksgiving day
What Developers Do? Read code Write code
What Developers Do? Read code 90% Write code 10%
LearnPROFFESIONALISM = SAFETY 2) CARE ABOUT THE OTHERS - TDD ,[object Object],Write code having in mind that the guy to support it is a serial maniac knowing your home address
THE AGILE WAY Pay attention to high quality standards of development Define Done-Done criteria of features to include: automatic build, unit testing, refactoring, customer acceptance “Let the chief control the kitchen”
5
THE PROBLEM OF A STANDARD PROCESS When do we usually decide on a methodology?
THE PROBLEM OF A STANDARD PROCESS The danger of standard process is that peoplewill miss chances to take important shortcuts T. DeMarco, T. Lister
UnlearnTO RELY ON A STANDARD APPROACHthat would solve all possible problems There is a wide range of proposals on the «market»: CMMI,RUP,XP,SCRUM …
Building in and enabling feedback loopsbetween the process components ,[object Object]
Requirements and implementation
Product releases and marketLearnTO BUILD AN ADAPTIVE META-PROCESS
LearnTO BUILD AN ADAPTIVE META-PROCESS Putting the culture of continuous improvement to the basement of the process
LearnTO BUILD AN ADAPTIVE META-PROCESS Building your own process and keeping adapting it based on learning
LearnTO BUILD A META-PROCESS Best practices Good practices
THE AGILE WAY Make all problems visible by not allowing to break rules, such as:  working in fixed length iterations conducting public demonstrations at the end of each iteration Run retrospective meetings at regular intervals Plan for process experiments

Contenu connexe

En vedette

IIBA Columbus 2015 Keynote by Luke Hohmann
IIBA Columbus 2015 Keynote by Luke HohmannIIBA Columbus 2015 Keynote by Luke Hohmann
IIBA Columbus 2015 Keynote by Luke HohmannLuke Hohmann
 
ToC_training slide_set_Sniffer Aug 2015 v2 num-sm
ToC_training slide_set_Sniffer Aug 2015 v2 num-smToC_training slide_set_Sniffer Aug 2015 v2 num-sm
ToC_training slide_set_Sniffer Aug 2015 v2 num-smDr Seán Doolan, MBA
 
CCPM折り紙ワークショップ(共有版)
CCPM折り紙ワークショップ(共有版)CCPM折り紙ワークショップ(共有版)
CCPM折り紙ワークショップ(共有版)Noriyuki Mizuno
 
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~Noriyuki Mizuno
 
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチNoriyuki Mizuno
 

En vedette (13)

Tarea seminario 7
Tarea seminario 7Tarea seminario 7
Tarea seminario 7
 
July 21 july24
July 21 july24July 21 july24
July 21 july24
 
Subscriber Identity Module
Subscriber Identity ModuleSubscriber Identity Module
Subscriber Identity Module
 
Arbol de Decisiones
 Arbol de Decisiones Arbol de Decisiones
Arbol de Decisiones
 
IIBA Columbus 2015 Keynote by Luke Hohmann
IIBA Columbus 2015 Keynote by Luke HohmannIIBA Columbus 2015 Keynote by Luke Hohmann
IIBA Columbus 2015 Keynote by Luke Hohmann
 
Open Best Cases_Issue 1
Open Best Cases_Issue 1Open Best Cases_Issue 1
Open Best Cases_Issue 1
 
Drammatizzazione 7^puntata aladino
Drammatizzazione 7^puntata aladinoDrammatizzazione 7^puntata aladino
Drammatizzazione 7^puntata aladino
 
ToC_training slide_set_Sniffer Aug 2015 v2 num-sm
ToC_training slide_set_Sniffer Aug 2015 v2 num-smToC_training slide_set_Sniffer Aug 2015 v2 num-sm
ToC_training slide_set_Sniffer Aug 2015 v2 num-sm
 
Documentos (2)
Documentos (2)Documentos (2)
Documentos (2)
 
CCPM折り紙ワークショップ(共有版)
CCPM折り紙ワークショップ(共有版)CCPM折り紙ワークショップ(共有版)
CCPM折り紙ワークショップ(共有版)
 
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~
Agile Japan 2016 札幌サテライト 本当に必要な問題解決に集中しよう!~CCPMを活用した現場改善のケーススタディ~
 
Ejemplos de arboles
Ejemplos de arbolesEjemplos de arboles
Ejemplos de arboles
 
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ
【公開版Vol1】論理的に考えよう!ロジックツリー&ブランチ
 

Similaire à Things To Unlearn In Software Development

Agile Project Management in a Waterfall World: Managing Sprints with Predicti...
Agile Project Management in a Waterfall World: Managing Sprints with Predicti...Agile Project Management in a Waterfall World: Managing Sprints with Predicti...
Agile Project Management in a Waterfall World: Managing Sprints with Predicti...John Carter
 
Phoenix User Group Slides
Phoenix User Group SlidesPhoenix User Group Slides
Phoenix User Group Slidesagilebuddy
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile MethodologySapna Sood
 
Agile & Secure SDLC
Agile & Secure SDLCAgile & Secure SDLC
Agile & Secure SDLCPaul Yang
 
20100310 liwen-waterfall (1)
20100310 liwen-waterfall (1)20100310 liwen-waterfall (1)
20100310 liwen-waterfall (1)Jyothi Vbs
 
Base Logic Inc Solution Offering
Base Logic Inc Solution OfferingBase Logic Inc Solution Offering
Base Logic Inc Solution OfferingMick Knutson
 
Software Life Cylce Model
Software Life Cylce ModelSoftware Life Cylce Model
Software Life Cylce ModelJegadeesh Sam
 
Scrum in Practice
Scrum in PracticeScrum in Practice
Scrum in PracticeESUG
 
Group two presentation
Group two presentationGroup two presentation
Group two presentationTamara Xhakaza
 
Agile And Open Development
Agile And Open DevelopmentAgile And Open Development
Agile And Open DevelopmentRoss Gardler
 
Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018VMware Tanzu
 
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals GLiNTECH
 

Similaire à Things To Unlearn In Software Development (20)

Agile Project Management in a Waterfall World: Managing Sprints with Predicti...
Agile Project Management in a Waterfall World: Managing Sprints with Predicti...Agile Project Management in a Waterfall World: Managing Sprints with Predicti...
Agile Project Management in a Waterfall World: Managing Sprints with Predicti...
 
2
22
2
 
Phoenix User Group Slides
Phoenix User Group SlidesPhoenix User Group Slides
Phoenix User Group Slides
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Forget about Agile
Forget about AgileForget about Agile
Forget about Agile
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile & Secure SDLC
Agile & Secure SDLCAgile & Secure SDLC
Agile & Secure SDLC
 
20100310 liwen-waterfall (1)
20100310 liwen-waterfall (1)20100310 liwen-waterfall (1)
20100310 liwen-waterfall (1)
 
Base Logic Inc Solution Offering
Base Logic Inc Solution OfferingBase Logic Inc Solution Offering
Base Logic Inc Solution Offering
 
Software Life Cylce Model
Software Life Cylce ModelSoftware Life Cylce Model
Software Life Cylce Model
 
Scrum in Practice
Scrum in PracticeScrum in Practice
Scrum in Practice
 
Reducing Cost With Agile
Reducing Cost With AgileReducing Cost With Agile
Reducing Cost With Agile
 
Group two presentation
Group two presentationGroup two presentation
Group two presentation
 
Agile And Open Development
Agile And Open DevelopmentAgile And Open Development
Agile And Open Development
 
Rapid prototyping 2.0
Rapid prototyping 2.0Rapid prototyping 2.0
Rapid prototyping 2.0
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Scrum and Agile SDLC 101
Scrum and Agile SDLC 101Scrum and Agile SDLC 101
Scrum and Agile SDLC 101
 
The Agile Pretender
The Agile PretenderThe Agile Pretender
The Agile Pretender
 
Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018Jesse Pulfer Pivotal Overview June 2018
Jesse Pulfer Pivotal Overview June 2018
 
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
 

Plus de Alexey Krivitsky

Driving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesDriving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesAlexey Krivitsky
 
Org Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamOrg Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamAlexey Krivitsky
 
Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Alexey Krivitsky
 
Improve your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessImprove your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessAlexey Krivitsky
 
#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)Alexey Krivitsky
 
Powerful interventions for agile coaching
Powerful interventions for agile coachingPowerful interventions for agile coaching
Powerful interventions for agile coachingAlexey Krivitsky
 
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)Alexey Krivitsky
 
Studying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityStudying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityAlexey Krivitsky
 
Understanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsUnderstanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsAlexey Krivitsky
 
Complexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityComplexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityAlexey Krivitsky
 
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Alexey Krivitsky
 
Dejirafication: free your process from tools
Dejirafication: free your process from toolsDejirafication: free your process from tools
Dejirafication: free your process from toolsAlexey Krivitsky
 
Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Alexey Krivitsky
 
Dejirafication - clean your process
Dejirafication - clean your processDejirafication - clean your process
Dejirafication - clean your processAlexey Krivitsky
 
Agile and Scrum for ORSCers
Agile and Scrum for ORSCersAgile and Scrum for ORSCers
Agile and Scrum for ORSCersAlexey Krivitsky
 
Agile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAgile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAlexey Krivitsky
 
Kickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetKickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetAlexey Krivitsky
 
How to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsHow to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsAlexey Krivitsky
 

Plus de Alexey Krivitsky (20)

Driving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesDriving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologies
 
Org Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamOrg Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, Amsterdam
 
Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...
 
Improve your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessImprove your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) Process
 
#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)
 
Culture follows structure
Culture follows structureCulture follows structure
Culture follows structure
 
Powerful interventions for agile coaching
Powerful interventions for agile coachingPowerful interventions for agile coaching
Powerful interventions for agile coaching
 
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
 
Studying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityStudying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agility
 
Understanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsUnderstanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System Dynamics
 
Complexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityComplexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agility
 
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
 
Dejirafication: free your process from tools
Dejirafication: free your process from toolsDejirafication: free your process from tools
Dejirafication: free your process from tools
 
Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016
 
Dejirafication - clean your process
Dejirafication - clean your processDejirafication - clean your process
Dejirafication - clean your process
 
Agile and Scrum for ORSCers
Agile and Scrum for ORSCersAgile and Scrum for ORSCers
Agile and Scrum for ORSCers
 
Agile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAgile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @Riga
 
Agile Coaching Canvas
Agile Coaching CanvasAgile Coaching Canvas
Agile Coaching Canvas
 
Kickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetKickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat Sheet
 
How to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsHow to grow learning multi-site agile organizations
How to grow learning multi-site agile organizations
 

Dernier

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Things To Unlearn In Software Development

  • 1. THINGS TO UNLEARN IN SOFTWARE DEVELOPMENT AlexeyKrivitsky, SCRUMguides.com for Agile Slovakia, 14 Jan 2010
  • 2. 2 AlexeyKrivitsky Agile coach and Scrum trainer at SCRUMguides krivitsky@scrumguides.comtwitter.com/alexeykri Skype: alexeykrvGSM: +380.50.358.9212 Coordination of Agile Ukraine communitywww.agileukraine.org Agile Eastern Europe conferencewww.agileee.org Agile Base Camp conferencewww.agilebasecamp.org 2
  • 7. The Reasons of the Tragedy A very important client Unrealistic plans Scope creep High technology risks Architectural flaws Acceptance testing failures The lead architect changed Wishful thinking Development priorities are not balanced Deployment-time mistakes Does all that sound familiar?
  • 8. 350 Years Later… Ship construction body of knowledge has improved a lot New domains and industries were born Project Management became a science Why nearly four centuries later we are still facing the same issues in our domain?
  • 9. 1
  • 10. DILEMMA OFIMPORTANCE ANDRIGHTNTESS OF A CUSTOMER Hurry Gordon Selfridge said: «The customer is always right» But what if an important customer is not right?
  • 11. Ignore employees’ preferences and comfort Unconditional agreement with customersmight lead to quality problems Employees’ motivation fades out Lowered quality of service
  • 12. We accept unrealistic deadlines We agree on suboptimal solutions We let technical requirements to be dictated We are afraid to pose a denial In the end,the product will have our label Unconditional agreement with customers might lead to project failures
  • 13. UnlearnTO BE UNDENIABLE Your 'yes' has no power if you do not know how to say 'no'
  • 14. LearnTO COLLABORATE Start by saying «No!» to unacceptable conditions And then invite to seek for better solutions That are realistic Professional Lead to Win-win
  • 15. THE AGILE WAY Maker customers a part of the team Rely on face-to-face collaboration Run iteration planning meetings altogether Run regular demonstrations Build in trust by releasing valuable functionality early Build in quality
  • 16. 2
  • 17. DILEMMA OFHARD PLANNING AND CONSTANT CHANGES Fixing requirements is like trying to pin a cloud Changes come inevitably
  • 18. Project Scope Inevitably Changesbecause 1) Researches are made «the devil is in the details»
  • 19. Project Scope Inevitably Changesbecause We often give our promises when we know too little
  • 20. Project Scope Inevitably Changesbecause 2) Requirements are misunderstood
  • 21. Project Scope Inevitably Changesbecause 3) Customers get new wishes and better ideas
  • 22. Unlearn TO FIX PROJECT SCOPE [SCOPE] x [TIME] x BUDGET x QUALITY [SCOPE] x [TIME] x [BUDGET] x [QUALITY] [SCOPE] x [TIME] x [BUDGET] x [QUALITY] It is a «lose-lose» scenario
  • 23. LearnTO MANAGE PROJECT SCOPE 1) Turn failures into learningby dividing projects into sub-projects Detail and nail down requirements only for the current sub-project Plan next sub-project based on experience of the previous ones
  • 24. LearnTO MANAGE PROJECT SCOPE 2) Most likely you cannot do“all of it”so focus on the most valuable stuff On regular basis deliver the most valuable for business functionality Embrace changes to let business learn and create competitive advantages
  • 25. THE AGILE WAY Let business set and change priorities for development at any time Let the Product Backlog growand evolve Work in time-boxed iterations Have a detailed plan for the current iteration Have a potentially shippable product increment after each iteration Measure and use Team Velocity in planning
  • 26. 3
  • 27. THE PROBLEM OF OVER-ENGENEERING By trying to avoid changeswe tend to develop universal solutions Big Requirement Up Front (BRUF) Big Design Up Front (BDUF)
  • 28. Unlearn TO TARGET FOR UNIVERSAL ARCHITECTURE It is impossible to foresee everything
  • 29. LearnTO LET CHANGES HAPPEN AT MINIMAL COSTS Cheap - Simple Design Safe - Automated Test Suites With no Constrains - Refactoring Let the system architecture grow together with product knowledge
  • 30. THE AGILE WAY Start development as early as possible Choose the simplest solutions that will work Reduce waste Zero-bug development strategy Root-cause analysis for each bug found
  • 31. Do You Use Test-Driven Development Refactoring Continuous Integration
  • 32. Some People Say «I ain’t need no unit-tests, I can write quality code without them» «I have no time for refactoring, that’s why I write correctly in the first place»
  • 33. 4
  • 34. THE PROBLEM OF PROFESSIONAL CARELESSNESS Happens each time one does not think How the codebase will look like in ½ year What will happen to the codebase once we leave the project About the people who will support the product
  • 37. LearnPROFESSIONALISM = SAFETY 1) CARE ABOUT YOURSELF - TDD - Refactoring- Continuous Integration Write code so that once in maintenance you can send yourself a card on a Thanksgiving day
  • 38. What Developers Do? Read code Write code
  • 39. What Developers Do? Read code 90% Write code 10%
  • 40.
  • 41. THE AGILE WAY Pay attention to high quality standards of development Define Done-Done criteria of features to include: automatic build, unit testing, refactoring, customer acceptance “Let the chief control the kitchen”
  • 42. 5
  • 43. THE PROBLEM OF A STANDARD PROCESS When do we usually decide on a methodology?
  • 44. THE PROBLEM OF A STANDARD PROCESS The danger of standard process is that peoplewill miss chances to take important shortcuts T. DeMarco, T. Lister
  • 45. UnlearnTO RELY ON A STANDARD APPROACHthat would solve all possible problems There is a wide range of proposals on the «market»: CMMI,RUP,XP,SCRUM …
  • 46.
  • 48. Product releases and marketLearnTO BUILD AN ADAPTIVE META-PROCESS
  • 49. LearnTO BUILD AN ADAPTIVE META-PROCESS Putting the culture of continuous improvement to the basement of the process
  • 50. LearnTO BUILD AN ADAPTIVE META-PROCESS Building your own process and keeping adapting it based on learning
  • 51. LearnTO BUILD A META-PROCESS Best practices Good practices
  • 52. THE AGILE WAY Make all problems visible by not allowing to break rules, such as: working in fixed length iterations conducting public demonstrations at the end of each iteration Run retrospective meetings at regular intervals Plan for process experiments
  • 53. To Unlearn ->To Learn To be undeniable -> To collaborate To fix project scope -> To manage project scope To target for universal architecture-> To let changes happen at minimal costs To mismatch professionalism with bravery -> Match professionalism with safety To rely on a standard approach -> To build a meta-process
  • 54. Have a Safe Journey! S C R U M g u i d e s