SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
Agile Implementation
   Lessons Learned from
    Practical Application

Presented to NM Women In Technology
            June 28, 2012
 Ana Lopez, Certified Scrum Master
Lisa Milmine, Certified Scrum Master

      Software Application Engineering
        Sandia National Laboratories
Presentation Overview

•   Agile Development

•   The Scrum Framework

•   Lessons Learned and Recommendations (So
    what)
What is Agile?

   Frequently delivering business value while
    adapting to change
   Agile is a philosophy
   Agile is applied through a method (like XP or
    Scrum)




See: Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media,
Inc. , 2008. Print.
How Agile Evolved


     1990s – common methodologies emerged
         Face to face communication
         Frequent delivery of business value
         Self managing teams

         Adaptable coding practices

     In 2001 - Agile Summit




See: What is Agile Software Development: http://www.agilealliance.org/the-alliance/what-is-agile/
Agile Software Development: http://en.wikipedia.org/wiki/Agile_software_development
Agile Manifesto

“We are uncovering better ways of developing software by doing it
  and helping others do it. Through this work we have come to
  value:


•   Individuals and interactions over processes and
    tools
•   Working software over comprehensive
    documentation
•   Customer collaboration over contract negotiation
•   Responding to change over following a plan

That is, while there is value in the items on the right, we value the
  items on the left more.”

See: Manifesto for Agile Software Development: http://agilemanifesto.org/
12 Principles

   Satisfy the customer through early and
    continuous delivery of valuable software.
   Deliver working software frequently, from a
    couple of weeks to a couple of months, with a
    preference to the shorter timescale.
   Welcome changing requirements, even late in
    development.
   Regular adaptation to changing circumstances




See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
12 Principles (Cont.)

   Build projects around motivated individuals.
   Self-organizing teams
   Continuous attention to technical excellence and
    good design
   Working software is the primary measure of
    progress.




See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
12 Principles (Cont.)

   Business people and developers must work
    together daily throughout the project.
   The most efficient and effective method of
    conveying information to and within a
    development team is face-to-face conversation.
   Simplicity- The art of maximizing the amount of
    work not done - is essential
   Agile processes promote sustainable
    development.


See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
Why everyone likes agile

•       Executives and Senior Management
         −   Return on investment
         −   Software longevity
•       Users and Stakeholders
         −   Influence the direction of software development
         −   Teams focus on delivering useful and valuable software
         −   Increased delivery frequency
•       Project Managers
         −   Change direction as business needs change,
         −    Make and meet commitments
         −   Improved stakeholder satisfaction
•       Developers
         −   Increased technical quality
         −   Greater influence over estimates and schedules and team autonomy
•       Testers
         −   Part of the team
         −   Influence quality at all stages of the project

    See: Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media, Inc. ,
    2008. Print.
What is Scrum?

               An agile framework focused on delivering
                business value in short incremental periods
                (sprints)
               Created in the early 1993 at Easel Corporation
               Specifically suited for complex problems
               Defined in The Scrum Guide: The Definitive
                Guide to Scrum: The Rules of the Game
                   - Developed and Sustained by Ken Schwaber and Jeff Sutherland

               Term “scrum” inspired by a Rugby formation for
                players used to restart the play of a game usually
                after an infraction. A team approach.
Origins: http://scrum.jeffsutherland.com
Scrum Philosophy
    • Software development is
           -   Complex
           -   Always Broken

    • A proven method for meeting customer needs is
      to use the ideas of Agile, including empirical
      process control.
    • Empirical Process Control:
           •   Inspection
           •   Adaptation
           •   Transparency




Empirical Process: http://en.wikipedia.org/wiki/Empirical_process_(process_control_model)
The Process

                                  Three Questions




                                                                    Two Questions




                                                          Sprint
                                                          Backlog
                                                          Tasks


                        User Story




Process: http://www.scrumalliance.org/learn_about_scrum
The Product Backlog

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Sprint Planning

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Sprint Planning Tasks

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Sprint

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Daily Standup

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Sprint Objective – Working Software

           Three Questions




                                       Two Questions




                             Sprint
                             Backlog
                             Tasks


     User Story
The Review

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Retrospective

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
The Iterative Process

      Three Questions




                                  Two Questions




                        Sprint
                        Backlog
                        Tasks


User Story
Scrum Roles

• Product Owner (PO)
  Responsible for the success/business value of project
   Empathetically represents customers
   Uses insight to prioritize essential/incidental requirements

• Scrum Master (SM)
  A process facilitator, NOT a project/people manager
  Resolves impediments, helps team focus on value

• Team
  Self managed, self organizing to get the work done
  Owns/takes responsibility for process
  Scrum recommends 7 +/- 2 team members at most
Scrum Artifacts


• Product backlog
   Prioritized list of desired project requirements
   Founded from product Vision
• Sprint backlog/Task backlog
  Set of work from the product backlog that the team agrees to complete
  in a sprint, broken into tasks
  Follow a clearly defined Definition of Done

• Burn-down or Burn-up chart
   At-a-glance look at the work remaining
• Release set
   Minimally marketable release
Ceremonies (aka meetings)


• Sprint planning
     The team and product owner estimate and negotiate a set of work
     to deliver during a sprint
• Daily scrum
     The team meets each day to report progress, next steps, and
     impediments
     Facilitated by SM – team reports to each other
• Sprint reviews
     The team demonstrates to the product owner and stakeholders
     what it has completed during the sprint (working software)
• Sprint retrospectives
     The team looks for ways to improve the process. Facilitated by SM
User Stories

• Describes functionality that is valuable to a
  user/stakeholder
     The “what” not the “how”

• Written from the customers perspective
• Represents customer priorities
• Reminders to have a conversation
• A user story is NOT a contract or agreement
     Everything can go in the backlog
Backlog Grooming

• A regular meeting to manage the backlog of
  stories
   Grooming activities include:
   • Creating /Removing stories in response to newly discovered
     needs
   • Re-assessing the relative priority of stories
   • Assigning estimates to stories which have yet to receive one
   • Correcting estimates in light of newly discovered information
   • Splitting large user stories into multiple sprint sized stories
   • Development of acceptance criteria
Project Status/Information Radiators


• Level of Effort
   Story Points, T-shirt sizes, etc.

• Rate of Production
   Velocity (velocity = story pts completed per sprint)
   Basis for planning/projecting

• Sprint Burn-Down Chart
   Daily display of work remaining in a sprint
   Pitfall: fails to show effect of changing

• Release Burn-Up Chart
   Tracks how much work is done wrt product backlog
   Projections give insight for release planning goals
Team Velocity w.r.t. Sprints
Team Velocity w.r.t. Sprints
Cumulative Story Points
Sprint Burn-Down Chart
Units of Work




                      Day of Sprint
Release Burn-Up Chart
So…

What have we learned in practice?
What wont the textbooks tell you?
People

•   Development Team Members
    −   Elicit team-oriented characteristics
    −   Comfortable with not knowing all details up front
    −   Appropriately sized
    −   Trained on agile method

•   ScrumMaster
    −   Posses or acquire good facilitation skills
    −   Focus on facilitating and not managing the process
    −   Try to develop good coaching skills
    −   Should be independent of development and customer
        responsibilities
People (Cont.)

•   Project Manager
    −   Responsible for managing process areas not called out by Scrum
        (risk management, communications, etc.)

    −   Empower self management of your team

    −   Report frequently to build management confidence


•   Product Owner
    −   Fully committed to project

    −   Product owner trained/certified

    −   Empowered by management to have decision authority

    −   Understands that they have ultimate authority
People (Cont.)

•   Management
    −   Knowledgeable of process at a high level

    −   Supportive of team’s empowerment to manage


•   Customers and Stakeholders
    −   Flexible on scope

    −   Committed and engaged through the duration of the project
Practices

•   Definition of Done
    −   Do it for task, story, and sprint

    −   Revisit Often

    −   Adapt as necessary

•   Backlog Grooming
    −   Conduct regularly throughout project

    −   Project owner representation is required

•   Reporting (progress/status)
    −   Use the Scrum terminology/measurements

    −   Familiarize Management ahead of time
Structure



•   Sprint Tasks
    −   Allow the team to develop a method that adds value to them

    −   Preserve differentiation of stories and tasks

    −   Maintain goal of transparency of work at hand


•   Execution of Development within Process
    −   Remember: Failed acceptance tests or unfinished work equal
        additional backlog or defect work

    −   Plan for adequate testing/acceptance within sprint

    −   Prevent scope creep! Only work on planned work
Structure

•   Planning
    −   Come prepared!

    −   Conduct sufficient discussion of stories with dev team

    −   Obtain verbal commitment to sprint backlog

•   Review
    −   Maintain consistent forum for demonstrating work/obtaining
        feedback

    −   Keep reviews efficient

    −   Plan for review “demo” preparation time

•   Retrospective
    −   Revisit previous retro notes

    −   Ensure all team members have opportunity to contribute
Tips for Getting Started

•   Select an agile method that    •   Establish your sprint schedule &
    suits your team                    logistics
•   Get management’s               •   Establish communication lines
    commitment/trust                   for distance separated teams
•   Ensure PO is empowered and     •   Set up your team
    can respond rapidly                room/workspace
•   Get your team and customers    •   Create a vision for your product
    trained and motivated
                                   •   Spend just enough time on
•   Clearly define roles and           architecture & design to avoid
    responsibility                     disjointed components
•   Obtain acceptance from all     •   Have a kickoff
    team members



                  Have Fun and Explore – Be Agile!
Questions and Discussion




Contact Information:
Lisa Milmine, (505) 284-4103, ldmilmi@sandia.gov
Ana Lopez, (505) 284-1873, avlopez@sandia.gov
Backup Slides
Velocity Statistics


|Velocity Min|                   19.00
|Velocity Max|                   49.00
|Velocity Avg|                   30.18
|Velocity Std Dev|                7.29
|Cum. SP Slope|                  31.55
|SP/Story|                        3.88
|Vel Avg Last 3|                 31.00
Sprint Backlog Task Board
General Story Format



 As a <who: insert role or persona>
 I want <what: insert functionality>
 So that <why: for what business value>

 Acceptance Criteria:
 ◦ verifies the story works as the customer expected
 ◦ Specifies tests
Agile References


Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media, Inc. ,
    2008. Print.

What is Agile Software Development?. 2012. Agile Alliance. 27 June 2012. <
   http://www.agilealliance.org/the-alliance/what-is-agile/>

Agile Software Development. 2012. Wikipedia. 27 June 2012.
     <http://en.wikipedia.org/wiki/Agile_software_development >

Manifesto for Agile Software Development. 2001. Ward Cunningham. 27 June 2012.
    <http://agilemanifesto.org/>
Additional Scrum References

Schwaber and Sutherland, The Scrum Guide (“The official Scrum Body Of Knowledge” – scrum.org,
    “Canonical Scrum” - Dan Mezick)

     http://www.scrum.org/scrumguides/

Schwaber, Agile Project Management with Scrum, 2004, ISBN-13: 978-0735619937 (The “Scrum Bible”)

     Amazon link

Scrum In 5 Minutes

     http://www.infoq.com/news/2006/11/scrum-in-five-minutes

WikiPedia Scrum Page

     http://en.wikipedia.org/wiki/Scrum_(development)

Shalloway and Trott, Lean-Agile Pocket Guide for Scrum Teams

     Amazon Link

Scrum For Team System’s web page FAQ

     http://www.scrumforteamsystem.com/ProcessGuidanceOld/v2/FAQ/FAQ.aspx

Scrum Alliance web page

     http://www.scrumalliance.org/

Mais conteúdo relacionado

Mais procurados

Delay Tolerant Network (DTN)
Delay Tolerant Network (DTN)Delay Tolerant Network (DTN)
Delay Tolerant Network (DTN)Haya Saani
 
An Overview of Distributed Debugging
An Overview of Distributed DebuggingAn Overview of Distributed Debugging
An Overview of Distributed DebuggingAnant Narayanan
 
Final PhD Defense Presentation
Final PhD Defense PresentationFinal PhD Defense Presentation
Final PhD Defense PresentationDr Piyush Charan
 
Virtualization and cloud Computing
Virtualization and cloud ComputingVirtualization and cloud Computing
Virtualization and cloud ComputingRishikese MR
 
System Programming Unit II
System Programming Unit IISystem Programming Unit II
System Programming Unit IIManoj Patil
 
Adhoc and routing protocols
Adhoc and routing protocolsAdhoc and routing protocols
Adhoc and routing protocolsshashi712
 
Client-centric Consistency Models
Client-centric Consistency ModelsClient-centric Consistency Models
Client-centric Consistency ModelsEnsar Basri Kahveci
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systemsSHATHAN
 
Agile software development
Agile software developmentAgile software development
Agile software developmentRajesh Piryani
 
Requirements Traceability - The Tie That Binds
Requirements Traceability - The Tie That BindsRequirements Traceability - The Tie That Binds
Requirements Traceability - The Tie That BindsJ John Jones, CBAP
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process ModelsAhsan Rahim
 
Software prototyping
Software prototyping  Software prototyping
Software prototyping Huda Seyam
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systemskaran2190
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleSlideshare
 
Software Defined Network - SDN
Software Defined Network - SDNSoftware Defined Network - SDN
Software Defined Network - SDNVenkata Naga Ravi
 
Communication primitives
Communication primitivesCommunication primitives
Communication primitivesStudent
 

Mais procurados (20)

Delay Tolerant Network (DTN)
Delay Tolerant Network (DTN)Delay Tolerant Network (DTN)
Delay Tolerant Network (DTN)
 
An Overview of Distributed Debugging
An Overview of Distributed DebuggingAn Overview of Distributed Debugging
An Overview of Distributed Debugging
 
Final PhD Defense Presentation
Final PhD Defense PresentationFinal PhD Defense Presentation
Final PhD Defense Presentation
 
Software reusable repository management
Software reusable repository managementSoftware reusable repository management
Software reusable repository management
 
Virtualization and cloud Computing
Virtualization and cloud ComputingVirtualization and cloud Computing
Virtualization and cloud Computing
 
System Programming Unit II
System Programming Unit IISystem Programming Unit II
System Programming Unit II
 
Adhoc and routing protocols
Adhoc and routing protocolsAdhoc and routing protocols
Adhoc and routing protocols
 
Client-centric Consistency Models
Client-centric Consistency ModelsClient-centric Consistency Models
Client-centric Consistency Models
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systems
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Virtual memory ppt
Virtual memory pptVirtual memory ppt
Virtual memory ppt
 
SDLC Models
SDLC ModelsSDLC Models
SDLC Models
 
Requirements Traceability - The Tie That Binds
Requirements Traceability - The Tie That BindsRequirements Traceability - The Tie That Binds
Requirements Traceability - The Tie That Binds
 
UMTS, Introduction.
UMTS, Introduction.UMTS, Introduction.
UMTS, Introduction.
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Software prototyping
Software prototyping  Software prototyping
Software prototyping
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systems
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Software Defined Network - SDN
Software Defined Network - SDNSoftware Defined Network - SDN
Software Defined Network - SDN
 
Communication primitives
Communication primitivesCommunication primitives
Communication primitives
 

Semelhante a Agile Implementation: Lessons from Practical Scrum Application

Agile Development with Scrum.pptx
Agile Development with Scrum.pptxAgile Development with Scrum.pptx
Agile Development with Scrum.pptxzuma14
 
Agile Scrum Quick Reference Card
Agile Scrum Quick Reference CardAgile Scrum Quick Reference Card
Agile Scrum Quick Reference CardTechcanvass
 
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...varty
 
Lean and agile in a chestnut
Lean and agile in a chestnutLean and agile in a chestnut
Lean and agile in a chestnutGeorge Stamos
 
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...Damien Lee🏆PMI-ACP, SCT,SMC,L6σOB,ITMLP
 
QA Challenges in an Agile World
QA Challenges in an Agile WorldQA Challenges in an Agile World
QA Challenges in an Agile WorldYousef Abazari
 
Scrum Framework in Agile
Scrum Framework in AgileScrum Framework in Agile
Scrum Framework in AgileWipro
 
Redistributable Intro To Scrum
Redistributable Intro To ScrumRedistributable Intro To Scrum
Redistributable Intro To ScrumErwin Verweij
 
Introduction into Scrum
Introduction into ScrumIntroduction into Scrum
Introduction into Scrummsorin
 
Agile Project Management with Scrum
Agile Project Management with ScrumAgile Project Management with Scrum
Agile Project Management with ScrumReema
 
Agile Project Management with Scrum
Agile Project Management with ScrumAgile Project Management with Scrum
Agile Project Management with ScrumReema
 
Manage your project differently
Manage your project differentlyManage your project differently
Manage your project differentlyTechMaster Vietnam
 
scrumppt-14057094134-php
scrumppt-14057094134-phpscrumppt-14057094134-php
scrumppt-14057094134-phpHelenCandy2
 
Project Management With Scrum
Project Management With ScrumProject Management With Scrum
Project Management With ScrumTommy Norman
 
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
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxSamira AlShahrani
 
An Introduction to Scrum
An Introduction to ScrumAn Introduction to Scrum
An Introduction to Scrummbalas2
 
Intro To Scrum
Intro To ScrumIntro To Scrum
Intro To Scrumscottycn
 

Semelhante a Agile Implementation: Lessons from Practical Scrum Application (20)

Agile Development with Scrum.pptx
Agile Development with Scrum.pptxAgile Development with Scrum.pptx
Agile Development with Scrum.pptx
 
Agile Scrum Quick Reference Card
Agile Scrum Quick Reference CardAgile Scrum Quick Reference Card
Agile Scrum Quick Reference Card
 
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...
Presentation: "Agile methodologies for Project Management - SCRUM" by Varty K...
 
Lean and agile in a chestnut
Lean and agile in a chestnutLean and agile in a chestnut
Lean and agile in a chestnut
 
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...
T1dbpcgirhu9afyr9fgf signature-e1e8931182a0dcf02346befbfa9f0fcf644737855bed1e...
 
QA Challenges in an Agile World
QA Challenges in an Agile WorldQA Challenges in an Agile World
QA Challenges in an Agile World
 
Scrum Framework in Agile
Scrum Framework in AgileScrum Framework in Agile
Scrum Framework in Agile
 
Redistributable Intro To Scrum
Redistributable Intro To ScrumRedistributable Intro To Scrum
Redistributable Intro To Scrum
 
Introduction into Scrum
Introduction into ScrumIntroduction into Scrum
Introduction into Scrum
 
To scrumornottoscrum bucharest-2013
To scrumornottoscrum bucharest-2013To scrumornottoscrum bucharest-2013
To scrumornottoscrum bucharest-2013
 
Agile Project Management with Scrum
Agile Project Management with ScrumAgile Project Management with Scrum
Agile Project Management with Scrum
 
Agile Project Management with Scrum
Agile Project Management with ScrumAgile Project Management with Scrum
Agile Project Management with Scrum
 
Manage your project differently
Manage your project differentlyManage your project differently
Manage your project differently
 
scrumppt-14057094134-php
scrumppt-14057094134-phpscrumppt-14057094134-php
scrumppt-14057094134-php
 
Project Management With Scrum
Project Management With ScrumProject Management With Scrum
Project Management With Scrum
 
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
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptx
 
An Introduction to Scrum
An Introduction to ScrumAn Introduction to Scrum
An Introduction to Scrum
 
Intro To Scrum
Intro To ScrumIntro To Scrum
Intro To Scrum
 

Último

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
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
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
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
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
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
 
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
 
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
 
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
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
"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
 
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
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Último (20)

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
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
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
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
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
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
 
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
 
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
 
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
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
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
 
"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
 
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
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

Agile Implementation: Lessons from Practical Scrum Application

  • 1. Agile Implementation Lessons Learned from Practical Application Presented to NM Women In Technology June 28, 2012 Ana Lopez, Certified Scrum Master Lisa Milmine, Certified Scrum Master Software Application Engineering Sandia National Laboratories
  • 2. Presentation Overview • Agile Development • The Scrum Framework • Lessons Learned and Recommendations (So what)
  • 3. What is Agile?  Frequently delivering business value while adapting to change  Agile is a philosophy  Agile is applied through a method (like XP or Scrum) See: Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media, Inc. , 2008. Print.
  • 4. How Agile Evolved  1990s – common methodologies emerged  Face to face communication  Frequent delivery of business value  Self managing teams  Adaptable coding practices  In 2001 - Agile Summit See: What is Agile Software Development: http://www.agilealliance.org/the-alliance/what-is-agile/ Agile Software Development: http://en.wikipedia.org/wiki/Agile_software_development
  • 5. Agile Manifesto “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.” See: Manifesto for Agile Software Development: http://agilemanifesto.org/
  • 6. 12 Principles  Satisfy the customer through early and continuous delivery of valuable software.  Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.  Welcome changing requirements, even late in development.  Regular adaptation to changing circumstances See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
  • 7. 12 Principles (Cont.)  Build projects around motivated individuals.  Self-organizing teams  Continuous attention to technical excellence and good design  Working software is the primary measure of progress. See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
  • 8. 12 Principles (Cont.)  Business people and developers must work together daily throughout the project.  The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.  Simplicity- The art of maximizing the amount of work not done - is essential  Agile processes promote sustainable development. See: Manifesto for Agile Software Development: http://agilemanifesto.org/principles.html
  • 9. Why everyone likes agile • Executives and Senior Management − Return on investment − Software longevity • Users and Stakeholders − Influence the direction of software development − Teams focus on delivering useful and valuable software − Increased delivery frequency • Project Managers − Change direction as business needs change, − Make and meet commitments − Improved stakeholder satisfaction • Developers − Increased technical quality − Greater influence over estimates and schedules and team autonomy • Testers − Part of the team − Influence quality at all stages of the project See: Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media, Inc. , 2008. Print.
  • 10. What is Scrum?  An agile framework focused on delivering business value in short incremental periods (sprints)  Created in the early 1993 at Easel Corporation  Specifically suited for complex problems  Defined in The Scrum Guide: The Definitive Guide to Scrum: The Rules of the Game - Developed and Sustained by Ken Schwaber and Jeff Sutherland  Term “scrum” inspired by a Rugby formation for players used to restart the play of a game usually after an infraction. A team approach. Origins: http://scrum.jeffsutherland.com
  • 11. Scrum Philosophy • Software development is - Complex - Always Broken • A proven method for meeting customer needs is to use the ideas of Agile, including empirical process control. • Empirical Process Control: • Inspection • Adaptation • Transparency Empirical Process: http://en.wikipedia.org/wiki/Empirical_process_(process_control_model)
  • 12. The Process Three Questions Two Questions Sprint Backlog Tasks User Story Process: http://www.scrumalliance.org/learn_about_scrum
  • 13. The Product Backlog Three Questions Two Questions Sprint Backlog Tasks User Story
  • 14. The Sprint Planning Three Questions Two Questions Sprint Backlog Tasks User Story
  • 15. The Sprint Planning Tasks Three Questions Two Questions Sprint Backlog Tasks User Story
  • 16. The Sprint Three Questions Two Questions Sprint Backlog Tasks User Story
  • 17. The Daily Standup Three Questions Two Questions Sprint Backlog Tasks User Story
  • 18. The Sprint Objective – Working Software Three Questions Two Questions Sprint Backlog Tasks User Story
  • 19. The Review Three Questions Two Questions Sprint Backlog Tasks User Story
  • 20. The Retrospective Three Questions Two Questions Sprint Backlog Tasks User Story
  • 21. The Iterative Process Three Questions Two Questions Sprint Backlog Tasks User Story
  • 22. Scrum Roles • Product Owner (PO) Responsible for the success/business value of project Empathetically represents customers Uses insight to prioritize essential/incidental requirements • Scrum Master (SM) A process facilitator, NOT a project/people manager Resolves impediments, helps team focus on value • Team Self managed, self organizing to get the work done Owns/takes responsibility for process Scrum recommends 7 +/- 2 team members at most
  • 23. Scrum Artifacts • Product backlog Prioritized list of desired project requirements Founded from product Vision • Sprint backlog/Task backlog Set of work from the product backlog that the team agrees to complete in a sprint, broken into tasks Follow a clearly defined Definition of Done • Burn-down or Burn-up chart At-a-glance look at the work remaining • Release set Minimally marketable release
  • 24. Ceremonies (aka meetings) • Sprint planning The team and product owner estimate and negotiate a set of work to deliver during a sprint • Daily scrum The team meets each day to report progress, next steps, and impediments Facilitated by SM – team reports to each other • Sprint reviews The team demonstrates to the product owner and stakeholders what it has completed during the sprint (working software) • Sprint retrospectives The team looks for ways to improve the process. Facilitated by SM
  • 25. User Stories • Describes functionality that is valuable to a user/stakeholder The “what” not the “how” • Written from the customers perspective • Represents customer priorities • Reminders to have a conversation • A user story is NOT a contract or agreement Everything can go in the backlog
  • 26. Backlog Grooming • A regular meeting to manage the backlog of stories Grooming activities include: • Creating /Removing stories in response to newly discovered needs • Re-assessing the relative priority of stories • Assigning estimates to stories which have yet to receive one • Correcting estimates in light of newly discovered information • Splitting large user stories into multiple sprint sized stories • Development of acceptance criteria
  • 27. Project Status/Information Radiators • Level of Effort Story Points, T-shirt sizes, etc. • Rate of Production Velocity (velocity = story pts completed per sprint) Basis for planning/projecting • Sprint Burn-Down Chart Daily display of work remaining in a sprint Pitfall: fails to show effect of changing • Release Burn-Up Chart Tracks how much work is done wrt product backlog Projections give insight for release planning goals
  • 31. Sprint Burn-Down Chart Units of Work Day of Sprint
  • 33. So… What have we learned in practice? What wont the textbooks tell you?
  • 34. People • Development Team Members − Elicit team-oriented characteristics − Comfortable with not knowing all details up front − Appropriately sized − Trained on agile method • ScrumMaster − Posses or acquire good facilitation skills − Focus on facilitating and not managing the process − Try to develop good coaching skills − Should be independent of development and customer responsibilities
  • 35. People (Cont.) • Project Manager − Responsible for managing process areas not called out by Scrum (risk management, communications, etc.) − Empower self management of your team − Report frequently to build management confidence • Product Owner − Fully committed to project − Product owner trained/certified − Empowered by management to have decision authority − Understands that they have ultimate authority
  • 36. People (Cont.) • Management − Knowledgeable of process at a high level − Supportive of team’s empowerment to manage • Customers and Stakeholders − Flexible on scope − Committed and engaged through the duration of the project
  • 37. Practices • Definition of Done − Do it for task, story, and sprint − Revisit Often − Adapt as necessary • Backlog Grooming − Conduct regularly throughout project − Project owner representation is required • Reporting (progress/status) − Use the Scrum terminology/measurements − Familiarize Management ahead of time
  • 38. Structure • Sprint Tasks − Allow the team to develop a method that adds value to them − Preserve differentiation of stories and tasks − Maintain goal of transparency of work at hand • Execution of Development within Process − Remember: Failed acceptance tests or unfinished work equal additional backlog or defect work − Plan for adequate testing/acceptance within sprint − Prevent scope creep! Only work on planned work
  • 39. Structure • Planning − Come prepared! − Conduct sufficient discussion of stories with dev team − Obtain verbal commitment to sprint backlog • Review − Maintain consistent forum for demonstrating work/obtaining feedback − Keep reviews efficient − Plan for review “demo” preparation time • Retrospective − Revisit previous retro notes − Ensure all team members have opportunity to contribute
  • 40. Tips for Getting Started • Select an agile method that • Establish your sprint schedule & suits your team logistics • Get management’s • Establish communication lines commitment/trust for distance separated teams • Ensure PO is empowered and • Set up your team can respond rapidly room/workspace • Get your team and customers • Create a vision for your product trained and motivated • Spend just enough time on • Clearly define roles and architecture & design to avoid responsibility disjointed components • Obtain acceptance from all • Have a kickoff team members Have Fun and Explore – Be Agile!
  • 41. Questions and Discussion Contact Information: Lisa Milmine, (505) 284-4103, ldmilmi@sandia.gov Ana Lopez, (505) 284-1873, avlopez@sandia.gov
  • 43. Velocity Statistics |Velocity Min| 19.00 |Velocity Max| 49.00 |Velocity Avg| 30.18 |Velocity Std Dev| 7.29 |Cum. SP Slope| 31.55 |SP/Story| 3.88 |Vel Avg Last 3| 31.00
  • 45. General Story Format  As a <who: insert role or persona>  I want <what: insert functionality>  So that <why: for what business value>  Acceptance Criteria: ◦ verifies the story works as the customer expected ◦ Specifies tests
  • 46. Agile References Shore, James and Shane Warden. The Art of Agile Development, Sabastopol, CA: O’Reilly Media, Inc. , 2008. Print. What is Agile Software Development?. 2012. Agile Alliance. 27 June 2012. < http://www.agilealliance.org/the-alliance/what-is-agile/> Agile Software Development. 2012. Wikipedia. 27 June 2012. <http://en.wikipedia.org/wiki/Agile_software_development > Manifesto for Agile Software Development. 2001. Ward Cunningham. 27 June 2012. <http://agilemanifesto.org/>
  • 47. Additional Scrum References Schwaber and Sutherland, The Scrum Guide (“The official Scrum Body Of Knowledge” – scrum.org, “Canonical Scrum” - Dan Mezick) http://www.scrum.org/scrumguides/ Schwaber, Agile Project Management with Scrum, 2004, ISBN-13: 978-0735619937 (The “Scrum Bible”) Amazon link Scrum In 5 Minutes http://www.infoq.com/news/2006/11/scrum-in-five-minutes WikiPedia Scrum Page http://en.wikipedia.org/wiki/Scrum_(development) Shalloway and Trott, Lean-Agile Pocket Guide for Scrum Teams Amazon Link Scrum For Team System’s web page FAQ http://www.scrumforteamsystem.com/ProcessGuidanceOld/v2/FAQ/FAQ.aspx Scrum Alliance web page http://www.scrumalliance.org/