SlideShare ist ein Scribd-Unternehmen logo
1 von 72
Agile Development Dennis Degryse- DEBOCOM bvba.
16/03/2011 Agile Development 2
Contents Object-Oriented Analysis and Design Planning Waterfall Development Process Scrum Extreme Programming Conclusion 16/03/2011 Agile Development 3
Object-oriented analysis and design Agile Development
Object-oriented Analysis and Design Conceptual models OO Systems OO Analysis What should it do? OO Design How should it do it? Reflects structures in the actual business process 16/03/2011 Agile Development 5
Object-oriented Analysis and Design Requirements analysis Functional Requirements Quality requirements Domain analysis Activity diagrams Sequence diagrams 16/03/2011 Agile Development 6
Requirements Analysis 16/03/2011 Agile Development 7
Requirements Analysis Functional Requirements Defines functions in a software system What should the system be able to DO? Hierarchy Use-cases Input Processing Output 16/03/2011 Agile Development 8
Requirements Analysis Stakeholder interviews 16/03/2011 Agile Development 9
Requirements Analysis Use-case diagram 16/03/2011 Agile Development 10
Requirements Analysis Quality Requirements What is the system supposed to BE? Execution Qualities Security, usability Evolution Qualities Testability, maintainability, scalability, extensibility 16/03/2011 Agile Development 11
Domain Analysis Model-driven Object-oriented models Entity-relationship diagrams Basis for software architectures 16/03/2011 Agile Development 12
Domain Analysis Object-oriented model Entity-relationship diagram 16/03/2011 Agile Development 13
Activity Diagram Workflow of components in a system Explains a process in more detail using models Uses stepwise activities and actions Petri net-like semantics 16/03/2011 Agile Development 14
Activity Diagram Activity Diagram 16/03/2011 Agile Development 15
Sequence Diagram Interaction between processes Specification of runtime scenarios Diagram Object life lines Messages (A)synchronous calls Return messages 16/03/2011 Agile Development 16
Sequence Diagram Sequence Diagram 16/03/2011 Agile Development 17
Planning Agile Development
Planning Problems Estimating time costs Unplanned interrupts Different team member qualities Changing requirements 16/03/2011 Agile Development 19
Estimating Time Costs Clearly define all requirements Define a fixed scope Planning Poker Estimating time cost per use case Minimizes anchoring More accurate estimates 16/03/2011 Agile Development 20
Planning Poker Traditional Planning Planning Poker 4 4 4 2 1 2 4 4 4 3 2 3 5 5 5 4 5 5 5 4 16/03/2011 Agile Development 21
Unplanned interrupts Prevention System back-up, source control, … Deep analysis Planning margin Reserve time for unplanned interrupts Max. 80% 16/03/2011 Agile Development 22
Different Team Member Qualities Right task for the right team member Stimulate team members to… … work closely together … increase communication Share knowledge 16/03/2011 Agile Development 23
Changing Requirements Additional functionalities Within the scope of the project? Changes in existing functionalities Prevention Stakeholder interviews, analysis, contracts, … Generic code and architecture 16/03/2011 Agile Development 24
Waterfall development process Agile Development
Waterfall Development Process 16/03/2011 Agile Development 26
Waterfall Development Process Traditional Problems Adaptability Visibility Business value Hard to plan 16/03/2011 Agile Development 27
Waterfall Development Process Visibilty Adaptability 16/03/2011 Agile Development 28
Waterfall Development Process Business value Risk 16/03/2011 Agile Development 29
Waterfall Development Process Results Estimated time is nearly 50% of actual time cost Project cost is much higher than estimated Functionality is not what the customer asked for 16/03/2011 Agile Development 30
Scrum Agile Development
Scrum Artifacts Roles Process Preparation Sprints Deliverable 16/03/2011 Agile Development 32
Artefacts Product scope Product backlog Product burndown Delta report Impediments list Sprint scope Sprint backlog Sprint burndown 16/03/2011 Agile Development 33
Roles Product owner Business perspective Voice of the costumer Manages Product Backlog Scrum master Coach and fixer Evaluating 16/03/2011 Agile Development 34
Roles Product owner Business perspective Voice of the costumer Manages Product Backlog Scrum master Coach and fixer Evaluating Team members 16/03/2011 Agile Development 35
Process Preparation Deliverable Sprints 16/03/2011 Agile Development 36
Preparation Initial product backlog Output from analysis Stories (functionality) Priorities Initial release plan Business case Team assembly Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 37
Sprints A sprint is… … a focused effort for a 2 (up to 4)-week period toward fixed goals … a 6-step cycle Sprint Planning Meeting Daily Cycle Product Increment Sprint Review Sprint Retrospective Update Product Backlog Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 38
Sprint Planning Meeting Select functionalities to implement Snapshot of stories from Product Backlog Re-evaluate Time estimates Priorities Scope Output Sprint Backlog Sprint Goal Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 39
Daily Cycle Daily Scrum Brief meeting (max. 15 min) Eliminate speed impediments Daily Work Pair Programming Continuous Testing Continuous Integration Refactoring Measuring Project Velocity Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 40
Daily Cycle Burndown Chart Visual representation offinished and remainingstories Sprint-level Product-level Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 41
Product Increment Demonstration To users and stakeholders Working software Evaluation Progress status Feedback Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 42
Sprint Review Assessment of project progress On WHAT the team is building Required adaptations Next course to take Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 43
Sprint Retrospective Meeting about project progress On HOW the team is building Increase productivity Keep work enjoyable Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 44
Update Product Backlog Meeting about project progress Add new requirements Update priorities Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 45
Deliverable Offering the product owner visibility Demonstration Fully functional Product Offering adaptability Feedbackper sprint Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 46
Extreme programming Agile Development
Extreme Programming Pair Programming KISS Continuous Testing Continuous Integration Continuous Refactoring 16/03/2011 Agile Development 48
Pair Programming Rules 1 Keyboard 2 Programmers Typing and tactically thinking Strategically thinking Advantages Same productivity Higher quality 16/03/2011 Agile Development 49
KISS Keep it stupid/simple Only implement what’s required now Refactor in the future 16/03/2011 Agile Development 50
Continuous Testing Advantages Deterministically measuring progress Preventing defects Test First Writing tests before actual code Unit-level and acceptance-level 16/03/2011 Agile Development 51
Continuous Integration Rules Quickly release code Hold onto changes for max. 1 day Everyone works on the latest version Advantages Avoiding and detecting compatibility issues early Avoiding diverging and fragmented development 16/03/2011 Agile Development 52
Continuous Refactoring Problems Readability of code Maintainability of code Navigating code Design correctness 16/03/2011 Agile Development 53
Continuous Refactoring Readability of code The smell of code Duplicate code smell Long method smell Code comments smell 16/03/2011 Agile Development 54
Continuous Refactoring Duplicate code smell Textual level Conceptual level Long method smell Code comments smell Apologies for code that’s hard to read Code should be self-explanatory Comments should describe why, not what. 16/03/2011 Agile Development 55
Continuous Refactoring Maintainability of code The smell of code Feature envy code smell Object-oriented myopia code smell Inappropriate intimacy code smell Lazy class code smell Contrived complexity code smell 16/03/2011 Agile Development 56
Continuous Refactoring Feature envy code smell Highly coupled classes Delineation of logic Object-oriented myopia code smell Fallacy of reuse Inappropriate intimacy code smell Encapsulation 16/03/2011 Agile Development 57
Continuous Refactoring Lazy class code smell Classes that have little or nothing to do Contrived complexity code smell Urge to use design patterns Extra complexity for the sake of complexity 16/03/2011 Agile Development 58
Continuous Refactoring Navigating code Conventions Consistency Naming Scoping IDE Diagrams 16/03/2011 Agile Development 59
Continuous Refactoring Design correctness Liskov substitution principle Sibling refactoring Refactor to one class Composition over inheritance Events over virtual methods Delegation over inheritance 16/03/2011 Agile Development 60
Continuous Refactoring Solutions Remove redundancy Rejuvenate obsolete designs Express everything once and only once Advantages Avoiding messy code and complexity Code is easier to understand and maintain Less time required to produce an improved system 16/03/2011 Agile Development 61
Improving Extreme Programming Disadvantages of XP Pair programming in small teams Refactoring over generic design Improvements Increase communication and integration speed Logging of documentation sources Deep analysis before coding is still a best practice 16/03/2011 Agile Development 62
TOOLS Agile Development
Tools Analysis UML Software IDE Plugin’s Round-trip engineering tools Scrum and Extreme Programming Ticketing software Code repositories with version control Time registration software 16/03/2011 Agile Development 64
Analysis UML Software Visual Paradigm Microsoft Visio Umbrello MS Visual Studio 2010 16/03/2011 Agile Development 65
Scrum and Extreme Programming Web-based front-ends Assembla Trac Jira Repositories SVN GIT Mercurial CVS 16/03/2011 Agile Development 66
Conclusion Agile Development
Conclusion Iterative process Continuous evolution Planning Developing Refactoring Testing Integration 16/03/2011 Agile Development 68
Conclusion Visibilty Adaptability 16/03/2011 Agile Development 69
Conclusion Business value Risk 16/03/2011 Agile Development 70
Q&A Agile Development
Q&A 16/03/2011 Agile Development 72

Weitere ähnliche Inhalte

Was ist angesagt?

Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile MethodologyNiel Deckx
 
Apt agile methodology
Apt agile methodologyApt agile methodology
Apt agile methodologyIndra
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Marraju Bollapragada V
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process IntroductionNguyen Hai
 
Agile introduction for dummies
Agile introduction for dummiesAgile introduction for dummies
Agile introduction for dummiesVinay Dixit
 
CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentationdeyoepw
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentationgihanlsw
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overviewsunilkumar_
 
Scrum Primer
Scrum PrimerScrum Primer
Scrum Primerdavelucey
 
Agile methodology v 4.5 s
Agile methodology   v 4.5 sAgile methodology   v 4.5 s
Agile methodology v 4.5 sJames Sutter
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development processjhericks
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar ReportMohit Kumar
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewworksalmanahmed368
 
Agile Scrum Methodology - Introduction
Agile Scrum Methodology - IntroductionAgile Scrum Methodology - Introduction
Agile Scrum Methodology - IntroductionGeetha Madhuri
 
Sprint backlog specified by example
Sprint backlog specified by exampleSprint backlog specified by example
Sprint backlog specified by exampleAgora Group
 

Was ist angesagt? (20)

Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile Methodology
 
Apt agile methodology
Apt agile methodologyApt agile methodology
Apt agile methodology
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Agile introduction for dummies
Agile introduction for dummiesAgile introduction for dummies
Agile introduction for dummies
 
CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentation
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentation
 
Agile Methodology - Agile Project Management Training
Agile Methodology - Agile Project Management TrainingAgile Methodology - Agile Project Management Training
Agile Methodology - Agile Project Management Training
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Scrum Primer
Scrum PrimerScrum Primer
Scrum Primer
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 
What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Agile methodology v 4.5 s
Agile methodology   v 4.5 sAgile methodology   v 4.5 s
Agile methodology v 4.5 s
 
Overview of agile
Overview of agileOverview of agile
Overview of agile
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development process
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar Report
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewwork
 
Agile Scrum Methodology - Introduction
Agile Scrum Methodology - IntroductionAgile Scrum Methodology - Introduction
Agile Scrum Methodology - Introduction
 
Sprint backlog specified by example
Sprint backlog specified by exampleSprint backlog specified by example
Sprint backlog specified by example
 

Andere mochten auch

Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14mattsmcnulty
 
Downtown & Infill Tax Increment Districts: Strategies for Success
Downtown & Infill Tax Increment Districts: Strategies for SuccessDowntown & Infill Tax Increment Districts: Strategies for Success
Downtown & Infill Tax Increment Districts: Strategies for SuccessVierbicher
 
Appraisal and Performance Management in Schools - A practical approach
Appraisal and Performance Management in Schools - A practical approachAppraisal and Performance Management in Schools - A practical approach
Appraisal and Performance Management in Schools - A practical approachMark S. Steed
 
The Economics of Green Building
The Economics of Green BuildingThe Economics of Green Building
The Economics of Green Buildingnilskok
 
The Etsy Shard Architecture: Starts With S and Ends With Hard
The Etsy Shard Architecture: Starts With S and Ends With HardThe Etsy Shard Architecture: Starts With S and Ends With Hard
The Etsy Shard Architecture: Starts With S and Ends With Hardjgoulah
 
Increment letter format
Increment letter formatIncrement letter format
Increment letter formatDeepti Joshi
 
Downtown & Infill Tax Increment Districts
Downtown & Infill Tax Increment DistrictsDowntown & Infill Tax Increment Districts
Downtown & Infill Tax Increment DistrictsVierbicher
 
Increment Strategy ppt 2012-13 : Play this in slide show mode
Increment Strategy ppt 2012-13 : Play this in slide show modeIncrement Strategy ppt 2012-13 : Play this in slide show mode
Increment Strategy ppt 2012-13 : Play this in slide show modeVipul Saxena
 
Lecture 8 increment_and_decrement_operators
Lecture 8 increment_and_decrement_operatorsLecture 8 increment_and_decrement_operators
Lecture 8 increment_and_decrement_operatorseShikshak
 
Iocl compensation
Iocl compensationIocl compensation
Iocl compensationmukti91
 
Normal forest – growing stock and increment
Normal forest – growing stock and incrementNormal forest – growing stock and increment
Normal forest – growing stock and incrementiqbalforestry
 
An overview of techniques for detecting software variability concepts in sour...
An overview of techniques for detecting software variability concepts in sour...An overview of techniques for detecting software variability concepts in sour...
An overview of techniques for detecting software variability concepts in sour...Angela Lozano
 
C Prog. - Operators and Expressions
C Prog. - Operators and ExpressionsC Prog. - Operators and Expressions
C Prog. - Operators and Expressionsvinay arora
 

Andere mochten auch (20)

Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14Polymer & the web components revolution 6:25:14
Polymer & the web components revolution 6:25:14
 
Conflict Resolution In Kai
Conflict Resolution In KaiConflict Resolution In Kai
Conflict Resolution In Kai
 
Downtown & Infill Tax Increment Districts: Strategies for Success
Downtown & Infill Tax Increment Districts: Strategies for SuccessDowntown & Infill Tax Increment Districts: Strategies for Success
Downtown & Infill Tax Increment Districts: Strategies for Success
 
Appraisal and Performance Management in Schools - A practical approach
Appraisal and Performance Management in Schools - A practical approachAppraisal and Performance Management in Schools - A practical approach
Appraisal and Performance Management in Schools - A practical approach
 
The Economics of Green Building
The Economics of Green BuildingThe Economics of Green Building
The Economics of Green Building
 
The Etsy Shard Architecture: Starts With S and Ends With Hard
The Etsy Shard Architecture: Starts With S and Ends With HardThe Etsy Shard Architecture: Starts With S and Ends With Hard
The Etsy Shard Architecture: Starts With S and Ends With Hard
 
Increment letter format
Increment letter formatIncrement letter format
Increment letter format
 
Downtown & Infill Tax Increment Districts
Downtown & Infill Tax Increment DistrictsDowntown & Infill Tax Increment Districts
Downtown & Infill Tax Increment Districts
 
Increment Strategy ppt 2012-13 : Play this in slide show mode
Increment Strategy ppt 2012-13 : Play this in slide show modeIncrement Strategy ppt 2012-13 : Play this in slide show mode
Increment Strategy ppt 2012-13 : Play this in slide show mode
 
Lecture 8 increment_and_decrement_operators
Lecture 8 increment_and_decrement_operatorsLecture 8 increment_and_decrement_operators
Lecture 8 increment_and_decrement_operators
 
String
StringString
String
 
Iocl compensation
Iocl compensationIocl compensation
Iocl compensation
 
Incremental
IncrementalIncremental
Incremental
 
Intro To Scrum.V3
Intro To Scrum.V3Intro To Scrum.V3
Intro To Scrum.V3
 
Normal forest – growing stock and increment
Normal forest – growing stock and incrementNormal forest – growing stock and increment
Normal forest – growing stock and increment
 
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux
 
An overview of techniques for detecting software variability concepts in sour...
An overview of techniques for detecting software variability concepts in sour...An overview of techniques for detecting software variability concepts in sour...
An overview of techniques for detecting software variability concepts in sour...
 
C Prog. - Operators and Expressions
C Prog. - Operators and ExpressionsC Prog. - Operators and Expressions
C Prog. - Operators and Expressions
 
Kerala Service Rules-Part 1
Kerala Service Rules-Part 1Kerala Service Rules-Part 1
Kerala Service Rules-Part 1
 
Web Engineering
Web EngineeringWeb Engineering
Web Engineering
 

Ähnlich wie Agile Development

An introduction to scrum 2.0
An introduction to scrum 2.0An introduction to scrum 2.0
An introduction to scrum 2.0ITSON
 
Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2shankar chinn
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
portfolio of products and processes
portfolio of products and processesportfolio of products and processes
portfolio of products and processesMark Stempski, Ph.D.
 
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
 
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...ghodgkinson
 
LeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPLeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPRobert Briese
 
Tn 100504 T Cermak Rev V2
Tn 100504 T Cermak Rev V2Tn 100504 T Cermak Rev V2
Tn 100504 T Cermak Rev V2TimCermak
 
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj Patil
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj PatilAgile Network India | Measure What Matters with OKRs and EBM | Rituraj Patil
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj PatilAgileNetwork
 
Agile planning with Rational Team Concert
Agile planning with Rational Team ConcertAgile planning with Rational Team Concert
Agile planning with Rational Team ConcertReedy Feggins Jr
 
Faster New Product Introduction Using Oracle Project Portfolio Management
Faster New Product Introduction Using Oracle Project Portfolio ManagementFaster New Product Introduction Using Oracle Project Portfolio Management
Faster New Product Introduction Using Oracle Project Portfolio ManagementMohan Dutt
 
Agile: Not Just for Sofware
Agile: Not Just for SofwareAgile: Not Just for Sofware
Agile: Not Just for SofwareJohn Carter
 
Analytics SEO The Future Webinar 30th November 2011
Analytics SEO The Future Webinar 30th November 2011Analytics SEO The Future Webinar 30th November 2011
Analytics SEO The Future Webinar 30th November 2011Steve Lock
 
Unified process,agile process,process assesment ppt
Unified process,agile process,process assesment pptUnified process,agile process,process assesment ppt
Unified process,agile process,process assesment pptShweta Ghate
 
Agile Software Development Overview 1231560734008086 2
Agile Software Development Overview 1231560734008086 2Agile Software Development Overview 1231560734008086 2
Agile Software Development Overview 1231560734008086 2Guang Ying Yuan
 

Ähnlich wie Agile Development (20)

An introduction to scrum 2.0
An introduction to scrum 2.0An introduction to scrum 2.0
An introduction to scrum 2.0
 
Online class intro to agile & scrum - final
Online class   intro to agile & scrum - finalOnline class   intro to agile & scrum - final
Online class intro to agile & scrum - final
 
Agile methods
Agile methodsAgile methods
Agile methods
 
Agilent Technologies Demo
Agilent Technologies DemoAgilent Technologies Demo
Agilent Technologies Demo
 
Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
portfolio of products and processes
portfolio of products and processesportfolio of products and processes
portfolio of products and processes
 
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
 
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
Case Study: Experiences Using IBM Rational Method Composer to Deliver a BPM I...
 
LeSS Like Adoption @ SAP
LeSS Like Adoption @ SAPLeSS Like Adoption @ SAP
LeSS Like Adoption @ SAP
 
Tn 100504 T Cermak Rev V2
Tn 100504 T Cermak Rev V2Tn 100504 T Cermak Rev V2
Tn 100504 T Cermak Rev V2
 
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj Patil
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj PatilAgile Network India | Measure What Matters with OKRs and EBM | Rituraj Patil
Agile Network India | Measure What Matters with OKRs and EBM | Rituraj Patil
 
Agile planning with Rational Team Concert
Agile planning with Rational Team ConcertAgile planning with Rational Team Concert
Agile planning with Rational Team Concert
 
Faster New Product Introduction Using Oracle Project Portfolio Management
Faster New Product Introduction Using Oracle Project Portfolio ManagementFaster New Product Introduction Using Oracle Project Portfolio Management
Faster New Product Introduction Using Oracle Project Portfolio Management
 
Agile: Not Just for Sofware
Agile: Not Just for SofwareAgile: Not Just for Sofware
Agile: Not Just for Sofware
 
Analytics SEO The Future Webinar 30th November 2011
Analytics SEO The Future Webinar 30th November 2011Analytics SEO The Future Webinar 30th November 2011
Analytics SEO The Future Webinar 30th November 2011
 
Unified process,agile process,process assesment ppt
Unified process,agile process,process assesment pptUnified process,agile process,process assesment ppt
Unified process,agile process,process assesment ppt
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Agile Mëtteg - June 2011
Agile Mëtteg - June 2011Agile Mëtteg - June 2011
Agile Mëtteg - June 2011
 
Agile Software Development Overview 1231560734008086 2
Agile Software Development Overview 1231560734008086 2Agile Software Development Overview 1231560734008086 2
Agile Software Development Overview 1231560734008086 2
 

Kürzlich hochgeladen

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
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 Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
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
 
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
 
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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Kürzlich hochgeladen (20)

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
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 Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
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
 
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
 
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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Agile Development

  • 1. Agile Development Dennis Degryse- DEBOCOM bvba.
  • 3. Contents Object-Oriented Analysis and Design Planning Waterfall Development Process Scrum Extreme Programming Conclusion 16/03/2011 Agile Development 3
  • 4. Object-oriented analysis and design Agile Development
  • 5. Object-oriented Analysis and Design Conceptual models OO Systems OO Analysis What should it do? OO Design How should it do it? Reflects structures in the actual business process 16/03/2011 Agile Development 5
  • 6. Object-oriented Analysis and Design Requirements analysis Functional Requirements Quality requirements Domain analysis Activity diagrams Sequence diagrams 16/03/2011 Agile Development 6
  • 7. Requirements Analysis 16/03/2011 Agile Development 7
  • 8. Requirements Analysis Functional Requirements Defines functions in a software system What should the system be able to DO? Hierarchy Use-cases Input Processing Output 16/03/2011 Agile Development 8
  • 9. Requirements Analysis Stakeholder interviews 16/03/2011 Agile Development 9
  • 10. Requirements Analysis Use-case diagram 16/03/2011 Agile Development 10
  • 11. Requirements Analysis Quality Requirements What is the system supposed to BE? Execution Qualities Security, usability Evolution Qualities Testability, maintainability, scalability, extensibility 16/03/2011 Agile Development 11
  • 12. Domain Analysis Model-driven Object-oriented models Entity-relationship diagrams Basis for software architectures 16/03/2011 Agile Development 12
  • 13. Domain Analysis Object-oriented model Entity-relationship diagram 16/03/2011 Agile Development 13
  • 14. Activity Diagram Workflow of components in a system Explains a process in more detail using models Uses stepwise activities and actions Petri net-like semantics 16/03/2011 Agile Development 14
  • 15. Activity Diagram Activity Diagram 16/03/2011 Agile Development 15
  • 16. Sequence Diagram Interaction between processes Specification of runtime scenarios Diagram Object life lines Messages (A)synchronous calls Return messages 16/03/2011 Agile Development 16
  • 17. Sequence Diagram Sequence Diagram 16/03/2011 Agile Development 17
  • 19. Planning Problems Estimating time costs Unplanned interrupts Different team member qualities Changing requirements 16/03/2011 Agile Development 19
  • 20. Estimating Time Costs Clearly define all requirements Define a fixed scope Planning Poker Estimating time cost per use case Minimizes anchoring More accurate estimates 16/03/2011 Agile Development 20
  • 21. Planning Poker Traditional Planning Planning Poker 4 4 4 2 1 2 4 4 4 3 2 3 5 5 5 4 5 5 5 4 16/03/2011 Agile Development 21
  • 22. Unplanned interrupts Prevention System back-up, source control, … Deep analysis Planning margin Reserve time for unplanned interrupts Max. 80% 16/03/2011 Agile Development 22
  • 23. Different Team Member Qualities Right task for the right team member Stimulate team members to… … work closely together … increase communication Share knowledge 16/03/2011 Agile Development 23
  • 24. Changing Requirements Additional functionalities Within the scope of the project? Changes in existing functionalities Prevention Stakeholder interviews, analysis, contracts, … Generic code and architecture 16/03/2011 Agile Development 24
  • 25. Waterfall development process Agile Development
  • 26. Waterfall Development Process 16/03/2011 Agile Development 26
  • 27. Waterfall Development Process Traditional Problems Adaptability Visibility Business value Hard to plan 16/03/2011 Agile Development 27
  • 28. Waterfall Development Process Visibilty Adaptability 16/03/2011 Agile Development 28
  • 29. Waterfall Development Process Business value Risk 16/03/2011 Agile Development 29
  • 30. Waterfall Development Process Results Estimated time is nearly 50% of actual time cost Project cost is much higher than estimated Functionality is not what the customer asked for 16/03/2011 Agile Development 30
  • 32. Scrum Artifacts Roles Process Preparation Sprints Deliverable 16/03/2011 Agile Development 32
  • 33. Artefacts Product scope Product backlog Product burndown Delta report Impediments list Sprint scope Sprint backlog Sprint burndown 16/03/2011 Agile Development 33
  • 34. Roles Product owner Business perspective Voice of the costumer Manages Product Backlog Scrum master Coach and fixer Evaluating 16/03/2011 Agile Development 34
  • 35. Roles Product owner Business perspective Voice of the costumer Manages Product Backlog Scrum master Coach and fixer Evaluating Team members 16/03/2011 Agile Development 35
  • 36. Process Preparation Deliverable Sprints 16/03/2011 Agile Development 36
  • 37. Preparation Initial product backlog Output from analysis Stories (functionality) Priorities Initial release plan Business case Team assembly Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 37
  • 38. Sprints A sprint is… … a focused effort for a 2 (up to 4)-week period toward fixed goals … a 6-step cycle Sprint Planning Meeting Daily Cycle Product Increment Sprint Review Sprint Retrospective Update Product Backlog Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 38
  • 39. Sprint Planning Meeting Select functionalities to implement Snapshot of stories from Product Backlog Re-evaluate Time estimates Priorities Scope Output Sprint Backlog Sprint Goal Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 39
  • 40. Daily Cycle Daily Scrum Brief meeting (max. 15 min) Eliminate speed impediments Daily Work Pair Programming Continuous Testing Continuous Integration Refactoring Measuring Project Velocity Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 40
  • 41. Daily Cycle Burndown Chart Visual representation offinished and remainingstories Sprint-level Product-level Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 41
  • 42. Product Increment Demonstration To users and stakeholders Working software Evaluation Progress status Feedback Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 42
  • 43. Sprint Review Assessment of project progress On WHAT the team is building Required adaptations Next course to take Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 43
  • 44. Sprint Retrospective Meeting about project progress On HOW the team is building Increase productivity Keep work enjoyable Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 44
  • 45. Update Product Backlog Meeting about project progress Add new requirements Update priorities Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog SprintReview Sprint Retro-spective 16/03/2011 Agile Development 45
  • 46. Deliverable Offering the product owner visibility Demonstration Fully functional Product Offering adaptability Feedbackper sprint Daily Cycle Sprint Planning Meeting Preparation Deliverable Sprints Product Increment Update Product Backlog Sprint Review Sprint Retro-spective 16/03/2011 Agile Development 46
  • 48. Extreme Programming Pair Programming KISS Continuous Testing Continuous Integration Continuous Refactoring 16/03/2011 Agile Development 48
  • 49. Pair Programming Rules 1 Keyboard 2 Programmers Typing and tactically thinking Strategically thinking Advantages Same productivity Higher quality 16/03/2011 Agile Development 49
  • 50. KISS Keep it stupid/simple Only implement what’s required now Refactor in the future 16/03/2011 Agile Development 50
  • 51. Continuous Testing Advantages Deterministically measuring progress Preventing defects Test First Writing tests before actual code Unit-level and acceptance-level 16/03/2011 Agile Development 51
  • 52. Continuous Integration Rules Quickly release code Hold onto changes for max. 1 day Everyone works on the latest version Advantages Avoiding and detecting compatibility issues early Avoiding diverging and fragmented development 16/03/2011 Agile Development 52
  • 53. Continuous Refactoring Problems Readability of code Maintainability of code Navigating code Design correctness 16/03/2011 Agile Development 53
  • 54. Continuous Refactoring Readability of code The smell of code Duplicate code smell Long method smell Code comments smell 16/03/2011 Agile Development 54
  • 55. Continuous Refactoring Duplicate code smell Textual level Conceptual level Long method smell Code comments smell Apologies for code that’s hard to read Code should be self-explanatory Comments should describe why, not what. 16/03/2011 Agile Development 55
  • 56. Continuous Refactoring Maintainability of code The smell of code Feature envy code smell Object-oriented myopia code smell Inappropriate intimacy code smell Lazy class code smell Contrived complexity code smell 16/03/2011 Agile Development 56
  • 57. Continuous Refactoring Feature envy code smell Highly coupled classes Delineation of logic Object-oriented myopia code smell Fallacy of reuse Inappropriate intimacy code smell Encapsulation 16/03/2011 Agile Development 57
  • 58. Continuous Refactoring Lazy class code smell Classes that have little or nothing to do Contrived complexity code smell Urge to use design patterns Extra complexity for the sake of complexity 16/03/2011 Agile Development 58
  • 59. Continuous Refactoring Navigating code Conventions Consistency Naming Scoping IDE Diagrams 16/03/2011 Agile Development 59
  • 60. Continuous Refactoring Design correctness Liskov substitution principle Sibling refactoring Refactor to one class Composition over inheritance Events over virtual methods Delegation over inheritance 16/03/2011 Agile Development 60
  • 61. Continuous Refactoring Solutions Remove redundancy Rejuvenate obsolete designs Express everything once and only once Advantages Avoiding messy code and complexity Code is easier to understand and maintain Less time required to produce an improved system 16/03/2011 Agile Development 61
  • 62. Improving Extreme Programming Disadvantages of XP Pair programming in small teams Refactoring over generic design Improvements Increase communication and integration speed Logging of documentation sources Deep analysis before coding is still a best practice 16/03/2011 Agile Development 62
  • 64. Tools Analysis UML Software IDE Plugin’s Round-trip engineering tools Scrum and Extreme Programming Ticketing software Code repositories with version control Time registration software 16/03/2011 Agile Development 64
  • 65. Analysis UML Software Visual Paradigm Microsoft Visio Umbrello MS Visual Studio 2010 16/03/2011 Agile Development 65
  • 66. Scrum and Extreme Programming Web-based front-ends Assembla Trac Jira Repositories SVN GIT Mercurial CVS 16/03/2011 Agile Development 66
  • 68. Conclusion Iterative process Continuous evolution Planning Developing Refactoring Testing Integration 16/03/2011 Agile Development 68
  • 69. Conclusion Visibilty Adaptability 16/03/2011 Agile Development 69
  • 70. Conclusion Business value Risk 16/03/2011 Agile Development 70
  • 72. Q&A 16/03/2011 Agile Development 72