SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
Agile Software Development
Goals/Objectives

 Gain an understanding of:
 ◦ Agile Software Development
 ◦ Solve problems experienced by Agile teams today
   and tomorrow

 Be able to … speak confidently and eloquently
 about Agile and provide solutions for the problems
 that exist within Agile teams



                                                      2
Agenda

 Introduction to Agile
 Principles of Agile (Agile Manifesto)
 The People Involved
 Product Manager vs. Product Owner
 Release vs. Sprint vs. Iteration
 Product Backlog vs. Sprint Backlog
 Agile Reports
 Agile Solution Providers
 Problems with Agile and how we can Help
 Resources
Introduction to Agile (video)

Get Agile: Agile vs Waterfall
http://www.youtube.com/watch?v=XokJLWp7icI
Introduction to Agile
Agile software development refers to a group of software development
methodologies that are based on similar principles. Agile methodologies generally
promote:
   A project management process that encourages frequent inspection and
   adaptation;
   a leadership philosophy that encourages team work, self-organization and
   accountability;
   a set of engineering best practices that allow for rapid delivery of high-quality
   software;
   and a business approach that aligns development with customer needs and
   company goals.


MYTH: No documentation
MYTH: Undisciplined
MYTH: Agile is a process
Manifesto for Agile Software Development

 Individuals and interactions over processes and tools

 Working software over comprehensive documentation

 Customer collaboration over contract negotiation

 Responding to change over following a plan
Principles of Agile
Some of the principles behind the Agile Manifesto are:
  Customer satisfaction by rapid, continuous delivery of useful software
  Working software is delivered frequently (weeks rather than months)
  Working software is the principal measure of progress
  Even late changes in requirements are welcomed
  Close, daily cooperation between business people and developers
  Face-to-face conversation is the best form of communication (Co-location)
  Projects are built around motivated individuals, who should be trusted
  Continuous attention to technical excellence and good design
  Simplicity
  Self-organizing teams
  Regular adaptation to changing circumstances
Waterfall
Agile
Introduction to Agile Methodologies
 SCRUM (most popular) is an iterative process of development used with agile
 software development. The roles in Scrum are the ScrumMaster, the Product
 Owner and the Team. During each sprint the team creates an increment of
 potential shippable software. The set of features that go into each sprint come
 from the product backlog. Which backlog items go into the sprint is
 determined during the sprint planning meeting. The team then determines
 how much of this they can commit to complete during the next sprint. During
 the sprint, no one is able to change the sprint backlog.
 Extreme Programming (XP) (third) is a traditional software engineering
 practices (daily interactions, working software, testing, etc.) taken to so-called
 quot;extremequot; levels, leads to a process that is more responsive to customer
 needs (quot;agile“), while creating software of better quality.
 SCRUM/XP (2nd)
Introduction to Agile Methodologies (cont’d)
 Feature-driven Development (rare) an iterative development process. This
 practice is driven from a client-valued functionality (feature) perspective.


 Test-driven Development (rare) is a software development technique that
 uses short development iterations based on pre-written test cases that define
 desired improvements or new functions. Each iteration produces code
 necessary to pass that iteration's tests.


 Lean (rare) is a process designed to eliminate waste, amplify learning, make
 decisions late, fast delivery, empowered teams, product integrity and an fully
 understood system.


 Custom (rare)
Why They Move

 Projects too long to estimate accurately
 Increase short-term predictability
 Transparency
 Flexibility
 Agile builds empowered, motivated and self organizing teams
 Clear expectations are set and communicated
 Customers communicate directly with the team and provide
 timely feedback
 Teams feel a sense of accomplishment and recognition




                                                          12
The People Involved


• Pigs and Chickens
The People Involved (cont’d)

  The Agile Team
  ◦   Architects
  ◦   Developers, Analysts, Designers
  ◦   Quality Assurance, Testers
  ◦   Tech Writers
  Product Owners / Customer Representatives
  Project Managers / ScrumMasters

  Note: Teams are small (~7), preferably co-located, cross
  functional. Scale by adding teams, not more people
The “Other” People Involved

 Product Marketing
 Marketing Communications
 Directors
 Executives

 Note: Can attend dailies but cannot speak. Can participate
 in planning. Interact with team through Project Manager /
 ScrumMaster
Product Manager vs. Product Owner (video)

David Howard
Agile development isn't product management
 http://www.youtube.com/watch?v=sRWJF6o-jIQ
Product Manager vs. Product Owner
   Product Owner owns the message to the Agile team and the Sprint/Iteration
   Backlog


   Product Manager owns the Roadmap / Strategy / Vision / Product Backlog


   Often they are the same person and the problems with this are well
   documented


Note: Only SCRUM calls them Product Owners, other flavours reference
customer representative, visionary, business/domain experts


Resource: Scaling Software Agility (blog) by Dean Leffingwell
http://scalingsoftwareagility.wordpress.com/category/product-ownerproduct-manager/
Product Manager vs. Product Owner (cont’d)
Product Manager                          Product Owner

Market Sensing / Problem Statements      Tracks internal deliveries
Release Objectives                       Iteration Objectives
Strategic Direction                      Day-to-day tactical direction
Market Use Cases/Scenarios               System Use Cases/Scenarios
Understands overall solution             Understands architecture and design
Roadmaps                                 User acceptance tests
Manage Release Portfolios and Backlogs   Manage Iteration and Cross Project
                                         priorities
Provides Vision                          Provides Implementation
Messaging & Positioning                  Unblocks teams throughout iteration
Directs Product Owner                    Takes direction from Product Manager
Delivers the Release                     Delivers the Iteration


Agile Product Owner (.com) http://agileproductowner.com/?p=15
What is a backlog?

  A backlog is the master list of all functionality
  ◦ Features
  ◦ Epics
  ◦ Stories
  ◦ Requirements
  ◦ Bugs


  Item Attributes:
  ◦ Description
  ◦ Cost estimate (points or size)
  ◦ Business Value
  ◦ Priority
Product Backlogs vs. Sprint Backlogs

  A Product Backlog is the master list of all functionality for the product
  ◦ Features
  ◦ Epics
  ◦ Bugs


  The Sprint Backlog is the list of functionality that the team is
  committing that they will complete in the current iteration
  ◦ Storied
  ◦ Requirements
  ◦ Bugs


  Product Management / Owner owns the backlogs
Agile Planning
  Beginning of iteration
  Review vision and roadmap
  Review development status, architecture and previous iterations
  Determine velocity
  Review team availability & capacity
  Review definition of done
  Review product backlog & select items for iteration / sprint
  Identify tasks & estimates
  Identify challenges & risks
  Review capacity required


  COMMIT (planning not over until entire team commits to sprint plan)
Velocity

  Velocity is a method for measuring the rate at which teams
  consistently deliver business value.

  To calculate velocity, simply add up the estimates of the items
  successfully delivered an iteration.
Definition of Done

 Is a checklist of valuable activities required to produce software
 The team defines definition of done for each iteration, feature,
 requirement task, etc.
 Typically
  ◦ Software working?
  ◦ Unit tests written?
  ◦ Code review done?
  ◦ Functional tests written and passed?
  ◦ Non-functional tests written and passed?
  ◦ User documentation done and reviewed?
  ◦ Design documentation updated and reviewed?
  ◦ Release notes updated?
Agile Reports

 Product / Sprint / Iteration Backlog
 Release Burn-up chart (to show % complete)
 Defects – inflow, outflow, # of open defects per week
 Build quality per day/week
 Number of tests / tests passed per day/week
 Velocity over the last x sprint
 Action items, risks
 Burndown Charts (to show remaining effort)
Agile Reports (cont’d)

  Release Burn-up chart (to show % complete)
Agile Reports (cont’d)

  Build quality per day/week
Agile Reports (cont’d)

  Velocity over the last x sprint
Agile Reports (cont’d)

  Burndown Charts (to show remaining effort)
Agile Retrospectives
  Meeting after an increment of work to inspect and adapt their methods and
  teamwork
  ◦ What went well
  ◦ What could be improved

  Team learning
  Catalyst for change
  Generate action
  Sample Agenda
  ◦ Overview
  ◦ Gather data
  ◦ Prioritize
  ◦ Discuss
  ◦ Action Items
Agile Estimating

  Typically stories estimated twice
  1. High level estimate provided by team (for the product backlog)
  2. Iteration estimate provided by team (for the sprint)

  Story Points
  ◦ Used to quantify the difficulty, not to identify time
  ◦ Typically done in powers of 2 (1,2,4,8, 16…) or Fibonacci (1,2,3,5,8…)

  Everyone estimates often: at the beginning of the iteration, daily during
  the iteration to estimate the remaining effort
  The effort remaining (and not the effort already spent) is displayed
  publicly to enable collaborating teams that work together to meet the
  target of the iteration
Agile Solution Providers

  VersionOne, Inc. - V1: Agile Enterprise
  Rally Software Development Corp - Rally Enterprise
  Danube Technologies, Inc. - Scrumworks
  XPlanner (open source)
  ThoughtWorks Inc. – Mingle


These are primarily positions as Agile Project Management Solutions
Resources
BLOGS:
 Agile Advice (http://www.agileadvice.com/)
 Implementing Scrum (http://www.implementingscrum.com/)
 James Shore (http://jamesshore.com/)
 Mike Cohn's Blog Succeeding With Agile http://blog.mountaingoatsoftware.com/
BOOKS:
 *Anything* by Mike Cohn
 The Art of Agile Development by James Shore
 See http://www.mountaingoatsoftware.com/reviews for more
WEBINARS:
 All presentations on InfoQ about Agile
 http://www.infoq.com/bycategory/contentbycategory.action?idx=3&ct=5&alias=agile
 The Product Management View (Past Webinars – search for Agile)

Contenu connexe

Tendances

Agile Methodology PPT
Agile Methodology PPTAgile Methodology PPT
Agile Methodology PPTMohit Kumar
 
Agile Software Development with Scrum – Introduction
Agile Software Development with Scrum – IntroductionAgile Software Development with Scrum – Introduction
Agile Software Development with Scrum – IntroductionBlackvard
 
STX Next - Scrum Development Process Overview
STX Next - Scrum Development Process OverviewSTX Next - Scrum Development Process Overview
STX Next - Scrum Development Process OverviewSTX Next
 
1×10 rola QA w tworzeniu Atlassian JIRA
 1×10 rola QA w tworzeniu Atlassian JIRA 1×10 rola QA w tworzeniu Atlassian JIRA
1×10 rola QA w tworzeniu Atlassian JIRA3camp
 
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 transformation best practices
Agile transformation best practicesAgile transformation best practices
Agile transformation best practicesAllyson Chiarini
 
Agile Software Development With SCRUM
Agile Software Development With SCRUMAgile Software Development With SCRUM
Agile Software Development With SCRUMAlexey Krivitsky
 
Building an Agile framework that fits your organisation
Building an Agile framework that fits your organisationBuilding an Agile framework that fits your organisation
Building an Agile framework that fits your organisationKurt Solarte
 
Software Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodSoftware Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodIntland Software GmbH
 
Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.SlideTeam.net
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartAbdullah Raza
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 

Tendances (20)

Scrum and Agile SDLC 101
Scrum and Agile SDLC 101Scrum and Agile SDLC 101
Scrum and Agile SDLC 101
 
Agile Development
Agile DevelopmentAgile Development
Agile Development
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Agile Methodology PPT
Agile Methodology PPTAgile Methodology PPT
Agile Methodology PPT
 
Agile Software Development with Scrum – Introduction
Agile Software Development with Scrum – IntroductionAgile Software Development with Scrum – Introduction
Agile Software Development with Scrum – Introduction
 
STX Next - Scrum Development Process Overview
STX Next - Scrum Development Process OverviewSTX Next - Scrum Development Process Overview
STX Next - Scrum Development Process Overview
 
1×10 rola QA w tworzeniu Atlassian JIRA
 1×10 rola QA w tworzeniu Atlassian JIRA 1×10 rola QA w tworzeniu Atlassian JIRA
1×10 rola QA w tworzeniu Atlassian JIRA
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 
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 transformation best practices
Agile transformation best practicesAgile transformation best practices
Agile transformation best practices
 
Agile Software Development With SCRUM
Agile Software Development With SCRUMAgile Software Development With SCRUM
Agile Software Development With SCRUM
 
Building an Agile framework that fits your organisation
Building an Agile framework that fits your organisationBuilding an Agile framework that fits your organisation
Building an Agile framework that fits your organisation
 
Software Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodSoftware Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid Method
 
Introduction to Agile Testing
Introduction to Agile TestingIntroduction to Agile Testing
Introduction to Agile Testing
 
Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cart
 
India Agile Week 2015
India Agile Week 2015India Agile Week 2015
India Agile Week 2015
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
 
AGILE METHODOLOGY
AGILE METHODOLOGYAGILE METHODOLOGY
AGILE METHODOLOGY
 

Similaire à Agile Software Development Overview 1231560734008086 2

Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2shankar chinn
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process IntroductionNguyen Hai
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - CustomersSteve Greene
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentationgihanlsw
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overviewguestb4c770
 
Close to agile
Close to agileClose to agile
Close to agilephilywu
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development OverviewMark Kovacevich
 
Scrum Framework in Agile
Scrum Framework in AgileScrum Framework in Agile
Scrum Framework in AgileWipro
 
Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrumElad Sofer
 
Margaret Menzies Intro & Scrum Overview
Margaret Menzies Intro & Scrum OverviewMargaret Menzies Intro & Scrum Overview
Margaret Menzies Intro & Scrum OverviewMargaretMenzies
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectivelyAshutosh Agarwal
 
Scrum - Atlanta Code Camp
Scrum - Atlanta Code CampScrum - Atlanta Code Camp
Scrum - Atlanta Code CampEsteban Garcia
 
Agile software development
Agile software developmentAgile software development
Agile software developmentpradeeppatelpmp
 
Agile Process Management and tools
Agile Process Management and toolsAgile Process Management and tools
Agile Process Management and toolsosama khalid
 
Agile Pmi 102108 Final
Agile Pmi 102108 FinalAgile Pmi 102108 Final
Agile Pmi 102108 Finalbmcglin
 

Similaire à Agile Software Development Overview 1231560734008086 2 (20)

Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2Agile software-development-overview-1231560734008086-2
Agile software-development-overview-1231560734008086-2
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
ADM Overview - Customers
ADM Overview - CustomersADM Overview - Customers
ADM Overview - Customers
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentation
 
What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
Close to agile
Close to agileClose to agile
Close to agile
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
Are You Agile?
Are You Agile? Are You Agile?
Are You Agile?
 
software-dev-life.pptx
software-dev-life.pptxsoftware-dev-life.pptx
software-dev-life.pptx
 
Scrum Framework in Agile
Scrum Framework in AgileScrum Framework in Agile
Scrum Framework in Agile
 
Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrum
 
Agile scrum induction
Agile scrum inductionAgile scrum induction
Agile scrum induction
 
Margaret Menzies Intro & Scrum Overview
Margaret Menzies Intro & Scrum OverviewMargaret Menzies Intro & Scrum Overview
Margaret Menzies Intro & Scrum Overview
 
Sdlc plan
Sdlc planSdlc plan
Sdlc plan
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectively
 
Scrum - Atlanta Code Camp
Scrum - Atlanta Code CampScrum - Atlanta Code Camp
Scrum - Atlanta Code Camp
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Agile Process Management and tools
Agile Process Management and toolsAgile Process Management and tools
Agile Process Management and tools
 
Agile Pmi 102108 Final
Agile Pmi 102108 FinalAgile Pmi 102108 Final
Agile Pmi 102108 Final
 

Plus de Guang Ying Yuan

【职场女性领导力】《向前一步》
【职场女性领导力】《向前一步》【职场女性领导力】《向前一步》
【职场女性领导力】《向前一步》Guang Ying Yuan
 
Android vs i os features
Android vs i os featuresAndroid vs i os features
Android vs i os featuresGuang Ying Yuan
 
Designing and implementing high performance rule based applications
Designing and implementing high performance rule based applicationsDesigning and implementing high performance rule based applications
Designing and implementing high performance rule based applicationsGuang Ying Yuan
 
螃蟹、猫头鹰和蝙蝠
螃蟹、猫头鹰和蝙蝠  螃蟹、猫头鹰和蝙蝠
螃蟹、猫头鹰和蝙蝠 Guang Ying Yuan
 
2010 06 28_2357_savor_the_blue_volume_ii_my
2010 06 28_2357_savor_the_blue_volume_ii_my2010 06 28_2357_savor_the_blue_volume_ii_my
2010 06 28_2357_savor_the_blue_volume_ii_myGuang Ying Yuan
 
Java面试题解惑系列
Java面试题解惑系列Java面试题解惑系列
Java面试题解惑系列Guang Ying Yuan
 
Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Guang Ying Yuan
 
Day1 Sap Basis Overview V1 1
Day1 Sap Basis Overview V1 1Day1 Sap Basis Overview V1 1
Day1 Sap Basis Overview V1 1Guang Ying Yuan
 
It Presales Happy Work Life
It Presales Happy Work LifeIt Presales Happy Work Life
It Presales Happy Work LifeGuang Ying Yuan
 

Plus de Guang Ying Yuan (20)

【职场女性领导力】《向前一步》
【职场女性领导力】《向前一步》【职场女性领导力】《向前一步》
【职场女性领导力】《向前一步》
 
Pulic Speaking
Pulic SpeakingPulic Speaking
Pulic Speaking
 
Jmeter
Jmeter Jmeter
Jmeter
 
Android vs i os features
Android vs i os featuresAndroid vs i os features
Android vs i os features
 
Designing and implementing high performance rule based applications
Designing and implementing high performance rule based applicationsDesigning and implementing high performance rule based applications
Designing and implementing high performance rule based applications
 
螃蟹、猫头鹰和蝙蝠
螃蟹、猫头鹰和蝙蝠  螃蟹、猫头鹰和蝙蝠
螃蟹、猫头鹰和蝙蝠
 
girl
girlgirl
girl
 
Lombardi intro full
Lombardi intro  full Lombardi intro  full
Lombardi intro full
 
2010 06 28_2357_savor_the_blue_volume_ii_my
2010 06 28_2357_savor_the_blue_volume_ii_my2010 06 28_2357_savor_the_blue_volume_ii_my
2010 06 28_2357_savor_the_blue_volume_ii_my
 
德勤工作手册
德勤工作手册德勤工作手册
德勤工作手册
 
IBM certification
IBM certificationIBM certification
IBM certification
 
Java面试题解惑系列
Java面试题解惑系列Java面试题解惑系列
Java面试题解惑系列
 
Abap codebook
Abap codebookAbap codebook
Abap codebook
 
64 Interview Questions
64 Interview Questions64 Interview Questions
64 Interview Questions
 
Filenet API PDF
Filenet API PDFFilenet API PDF
Filenet API PDF
 
Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05Smart+Shanghai+2008 09 05
Smart+Shanghai+2008 09 05
 
Day5 R3 Basis Security
Day5 R3 Basis   SecurityDay5 R3 Basis   Security
Day5 R3 Basis Security
 
Day1 Sap Basis Overview V1 1
Day1 Sap Basis Overview V1 1Day1 Sap Basis Overview V1 1
Day1 Sap Basis Overview V1 1
 
Nw2004s What Is New
Nw2004s What Is NewNw2004s What Is New
Nw2004s What Is New
 
It Presales Happy Work Life
It Presales Happy Work LifeIt Presales Happy Work Life
It Presales Happy Work Life
 

Dernier

"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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
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
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
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
 

Dernier (20)

"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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
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
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
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
 

Agile Software Development Overview 1231560734008086 2

  • 2. Goals/Objectives Gain an understanding of: ◦ Agile Software Development ◦ Solve problems experienced by Agile teams today and tomorrow Be able to … speak confidently and eloquently about Agile and provide solutions for the problems that exist within Agile teams 2
  • 3. Agenda Introduction to Agile Principles of Agile (Agile Manifesto) The People Involved Product Manager vs. Product Owner Release vs. Sprint vs. Iteration Product Backlog vs. Sprint Backlog Agile Reports Agile Solution Providers Problems with Agile and how we can Help Resources
  • 4. Introduction to Agile (video) Get Agile: Agile vs Waterfall http://www.youtube.com/watch?v=XokJLWp7icI
  • 5. Introduction to Agile Agile software development refers to a group of software development methodologies that are based on similar principles. Agile methodologies generally promote: A project management process that encourages frequent inspection and adaptation; a leadership philosophy that encourages team work, self-organization and accountability; a set of engineering best practices that allow for rapid delivery of high-quality software; and a business approach that aligns development with customer needs and company goals. MYTH: No documentation MYTH: Undisciplined MYTH: Agile is a process
  • 6. Manifesto for Agile Software Development Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
  • 7. Principles of Agile Some of the principles behind the Agile Manifesto are: Customer satisfaction by rapid, continuous delivery of useful software Working software is delivered frequently (weeks rather than months) Working software is the principal measure of progress Even late changes in requirements are welcomed Close, daily cooperation between business people and developers Face-to-face conversation is the best form of communication (Co-location) Projects are built around motivated individuals, who should be trusted Continuous attention to technical excellence and good design Simplicity Self-organizing teams Regular adaptation to changing circumstances
  • 10. Introduction to Agile Methodologies SCRUM (most popular) is an iterative process of development used with agile software development. The roles in Scrum are the ScrumMaster, the Product Owner and the Team. During each sprint the team creates an increment of potential shippable software. The set of features that go into each sprint come from the product backlog. Which backlog items go into the sprint is determined during the sprint planning meeting. The team then determines how much of this they can commit to complete during the next sprint. During the sprint, no one is able to change the sprint backlog. Extreme Programming (XP) (third) is a traditional software engineering practices (daily interactions, working software, testing, etc.) taken to so-called quot;extremequot; levels, leads to a process that is more responsive to customer needs (quot;agile“), while creating software of better quality. SCRUM/XP (2nd)
  • 11. Introduction to Agile Methodologies (cont’d) Feature-driven Development (rare) an iterative development process. This practice is driven from a client-valued functionality (feature) perspective. Test-driven Development (rare) is a software development technique that uses short development iterations based on pre-written test cases that define desired improvements or new functions. Each iteration produces code necessary to pass that iteration's tests. Lean (rare) is a process designed to eliminate waste, amplify learning, make decisions late, fast delivery, empowered teams, product integrity and an fully understood system. Custom (rare)
  • 12. Why They Move Projects too long to estimate accurately Increase short-term predictability Transparency Flexibility Agile builds empowered, motivated and self organizing teams Clear expectations are set and communicated Customers communicate directly with the team and provide timely feedback Teams feel a sense of accomplishment and recognition 12
  • 13. The People Involved • Pigs and Chickens
  • 14. The People Involved (cont’d) The Agile Team ◦ Architects ◦ Developers, Analysts, Designers ◦ Quality Assurance, Testers ◦ Tech Writers Product Owners / Customer Representatives Project Managers / ScrumMasters Note: Teams are small (~7), preferably co-located, cross functional. Scale by adding teams, not more people
  • 15. The “Other” People Involved Product Marketing Marketing Communications Directors Executives Note: Can attend dailies but cannot speak. Can participate in planning. Interact with team through Project Manager / ScrumMaster
  • 16. Product Manager vs. Product Owner (video) David Howard Agile development isn't product management http://www.youtube.com/watch?v=sRWJF6o-jIQ
  • 17. Product Manager vs. Product Owner Product Owner owns the message to the Agile team and the Sprint/Iteration Backlog Product Manager owns the Roadmap / Strategy / Vision / Product Backlog Often they are the same person and the problems with this are well documented Note: Only SCRUM calls them Product Owners, other flavours reference customer representative, visionary, business/domain experts Resource: Scaling Software Agility (blog) by Dean Leffingwell http://scalingsoftwareagility.wordpress.com/category/product-ownerproduct-manager/
  • 18. Product Manager vs. Product Owner (cont’d) Product Manager Product Owner Market Sensing / Problem Statements Tracks internal deliveries Release Objectives Iteration Objectives Strategic Direction Day-to-day tactical direction Market Use Cases/Scenarios System Use Cases/Scenarios Understands overall solution Understands architecture and design Roadmaps User acceptance tests Manage Release Portfolios and Backlogs Manage Iteration and Cross Project priorities Provides Vision Provides Implementation Messaging & Positioning Unblocks teams throughout iteration Directs Product Owner Takes direction from Product Manager Delivers the Release Delivers the Iteration Agile Product Owner (.com) http://agileproductowner.com/?p=15
  • 19. What is a backlog? A backlog is the master list of all functionality ◦ Features ◦ Epics ◦ Stories ◦ Requirements ◦ Bugs Item Attributes: ◦ Description ◦ Cost estimate (points or size) ◦ Business Value ◦ Priority
  • 20. Product Backlogs vs. Sprint Backlogs A Product Backlog is the master list of all functionality for the product ◦ Features ◦ Epics ◦ Bugs The Sprint Backlog is the list of functionality that the team is committing that they will complete in the current iteration ◦ Storied ◦ Requirements ◦ Bugs Product Management / Owner owns the backlogs
  • 21. Agile Planning Beginning of iteration Review vision and roadmap Review development status, architecture and previous iterations Determine velocity Review team availability & capacity Review definition of done Review product backlog & select items for iteration / sprint Identify tasks & estimates Identify challenges & risks Review capacity required COMMIT (planning not over until entire team commits to sprint plan)
  • 22. Velocity Velocity is a method for measuring the rate at which teams consistently deliver business value. To calculate velocity, simply add up the estimates of the items successfully delivered an iteration.
  • 23. Definition of Done Is a checklist of valuable activities required to produce software The team defines definition of done for each iteration, feature, requirement task, etc. Typically ◦ Software working? ◦ Unit tests written? ◦ Code review done? ◦ Functional tests written and passed? ◦ Non-functional tests written and passed? ◦ User documentation done and reviewed? ◦ Design documentation updated and reviewed? ◦ Release notes updated?
  • 24. Agile Reports Product / Sprint / Iteration Backlog Release Burn-up chart (to show % complete) Defects – inflow, outflow, # of open defects per week Build quality per day/week Number of tests / tests passed per day/week Velocity over the last x sprint Action items, risks Burndown Charts (to show remaining effort)
  • 25. Agile Reports (cont’d) Release Burn-up chart (to show % complete)
  • 26. Agile Reports (cont’d) Build quality per day/week
  • 27. Agile Reports (cont’d) Velocity over the last x sprint
  • 28. Agile Reports (cont’d) Burndown Charts (to show remaining effort)
  • 29. Agile Retrospectives Meeting after an increment of work to inspect and adapt their methods and teamwork ◦ What went well ◦ What could be improved Team learning Catalyst for change Generate action Sample Agenda ◦ Overview ◦ Gather data ◦ Prioritize ◦ Discuss ◦ Action Items
  • 30. Agile Estimating Typically stories estimated twice 1. High level estimate provided by team (for the product backlog) 2. Iteration estimate provided by team (for the sprint) Story Points ◦ Used to quantify the difficulty, not to identify time ◦ Typically done in powers of 2 (1,2,4,8, 16…) or Fibonacci (1,2,3,5,8…) Everyone estimates often: at the beginning of the iteration, daily during the iteration to estimate the remaining effort The effort remaining (and not the effort already spent) is displayed publicly to enable collaborating teams that work together to meet the target of the iteration
  • 31. Agile Solution Providers VersionOne, Inc. - V1: Agile Enterprise Rally Software Development Corp - Rally Enterprise Danube Technologies, Inc. - Scrumworks XPlanner (open source) ThoughtWorks Inc. – Mingle These are primarily positions as Agile Project Management Solutions
  • 32. Resources BLOGS: Agile Advice (http://www.agileadvice.com/) Implementing Scrum (http://www.implementingscrum.com/) James Shore (http://jamesshore.com/) Mike Cohn's Blog Succeeding With Agile http://blog.mountaingoatsoftware.com/ BOOKS: *Anything* by Mike Cohn The Art of Agile Development by James Shore See http://www.mountaingoatsoftware.com/reviews for more WEBINARS: All presentations on InfoQ about Agile http://www.infoq.com/bycategory/contentbycategory.action?idx=3&ct=5&alias=agile The Product Management View (Past Webinars – search for Agile)