SlideShare a Scribd company logo
1 of 36
A sprint in the life of
Drupal Gardens
  Jacob Singh and Chris Brookins
                                   26. aug 9:00
                                   VPS.NET
Who are we?
 Jacob Singh
 – Principal engineer, Acquia
 – @jacobsingh
 – jacob.singh@acquia.com
 Chris Brookins
 – VP Engineering, Acquia
 – @chrisbrookins
 – chris@acquia.com




                                2
Acquia & Engineering
 70 Acquia employees
 22 in engineering                              Other Eng


 4 engineering scrum teams
                                  Gardens Eng
 – Drupal Gardens
 – Acquia Hosting
                                                            Non-Eng
 – Web crawler
 – Acquia.com
 Drupal Gardens team
 – 14 people, 50% distributed
 – 7 Drupalists, 2 front-end dev, 1 QA, 1 PO
 – 2 designers, 1 doc shared (80% on Gardens)

                                                                      3
Drupal Gardens
 Drupal 7 (since alpha1) + contrib modules
 Drupal as a service + contrib + ThemeBuilder + themes
 Over 18,000 Drupal 7 sites created in gardens
 No lock-in: You can export your site’s code & DB any time




                                                             4
Product Owner
 Identi es and validates personas
 Drives story de nition
 – Facilitates stakeholder consensus
 Owns the product backlog of stories & bugs
 Makes sure team’s clarifying questions are answered
 Accepts or rejects stories in sprint
 Demos stories that are done
 Decides if results of Sprint are releasable




                                                       5
Scrum Master
 Ensures all parties follow roles & responsibilities & events
 Protects the team from distractions
 Removes impediments / escalates as needed
 Doesn’t task or ‘manage’ team, instead raises questions
 Doesn’t let the team walk off a cliff
 Ensures conversations happen
 Part time




                                                                6
Team
Self-organizes
Takes into sprint top priority items from backlog
Determines sprint capacity
Tasks out work and gets it done
De nes their own de nition of done and sticks to it




                                                      7
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge               All Team Test                Gardening Day

Week 1                                 Week 2                          Week 3
                SOS                                SOS                           SOS
 1                                 5                             14                        19
         2     3                                9    11     13                      17          20

                                                                      • Demo
     Planning Day                        Last D7                      • Retrospective
                                                                      • Backlog grooming
                   Gardening Day             Pencils down             • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                     8
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge                All Team Test                Gardening Day

Week 1                                  Week 2                          Week 3
                SOS                                 SOS                            SOS
 1                                  5                             14                        19
         2      3                                9    11     13                       17         20

     Planning                                                          • Demo
     Day                                  Last D7                      • Retrospective
                                                                       • Backlog grooming
                    Gardening Day             Pencils down             • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                      9
Planning
 Plans are outdated immediately
 Planning is a royal pain the ass, but concentrated
 Go through ‘The checklist’
 Vote sts to 5




                                                      10
Planning day checklist
 1. Determine team capacity
 2. Identify engineering debt that we need to do
 3. Stories validated ready to start
 4. Research spike unfamiliar technologies
 5. Schedule mid-sprint PO/Design review
 6. Pre-assign items that 1 person would best do
 7. Identify dependancies and prioritize stories
 8. Take sized stories/bugs & task according to De nition of Done




                                                                    11
De nition of done
 Developed according to Drupal coding standards
 Commented
 Peer reviewed
 Write system tests, but frankly not enough
 Doc notes added to story (as food for writer)
 In trunk, working and validated on test cluster
 PO & designer have reviewed; developer applies feedback
 If necessary, stress/load tested
 Ready to be demoed and go live



                                                           12
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge               All Team Test                   Gardening Day

Week 1                                 Week 2                          Week 3
                SOS                                SOS                            SOS
 1                                 5                             14                        19
         2     3                                9    11     13                       17         20

     Planning Day                                                     • Demo
                                         Last D7                      • Retrospective
                                                                      • Backlog grooming
                   Gardening Day             Pencils down             • Release




                              Scrum every day


                                                                                                     13
Scrum
Answer the 3 Qs (strive for verbally)
Inspect the burndown chart (and adapt if needed)
Post scrum discussions
PO/Designers available to answer questions
Why?




                                                   14
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge            All Team Test                   Gardening Day

Week 1                              Week 2                          Week 3
                SOS                             SOS                              SOS
 1                              5                             14                         19
         2     3                             9    11     13                         17        20

                                                                   • Demo
     Planning Day                     Last D7                      • Retrospective
                                                                   • Backlog grooming
                   Gardening Day          Pencils down             • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                   15
Gardening days (community work)




Almost always working on GPL Drupal code.
Connection w/ the community, personal grati cation
Allows existing projects to continue
Drives innovation

                                                     16
Drupal Gardens Sprint timeline
              Sprint Start
             Start D7 daily                     All Team Test               Gardening Day

Week 1                                 Week 2                         Week 3
                SOS                              SOS                             SOS
 1                                 5                            14                        19
         2     3                                9    11    13                       17         20

                                                                     • Demo
     Planning Day                                                    • Retrospective
                                        Last D7 merge
                                                                     • Backlog grooming
                   Gardening Day            Pencils down             • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                    17
How we track Drupal 7 & contrib




                                  18
Kitten killing manifest




                          19
Supporting engineering systems
 Continuous integration
 – jsUnit
 – Selenium system tests
 – BrowserMob load tests
 – Staging clusters (trunk and branch)
     Based on daily production backups.
 Toolchain
 – Jira, Greenhopper, Fisheye, Crucible, Google apps
 How we update 20k sites
 – Scales, concurrent updates, atomic



                                                       20
Jira taskboard
 2nd best thing to colocation




                                21
Crucible code reviews




                        22
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge                All Team Test               Gardening Day

Week 1                                 Week 2                          Week 3
                SOS                                SOS                            SOS
 1                                 5                             14                        19
         2     3                                 9    11    13                       17         20

                                                                      • Demo
     Planning Day                        Last D7                      • Retrospective
                                                                      • Backlog grooming
                   Gardening Day                Pencils down          • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                     23
Drupal Gardens Sprint timeline
             Sprint Start
             Start D7 daily merge               All Team Test                  Gardening Day

Week 1                                 Week 2                          Week 3
                SOS                                SOS                             SOS
 1                                 5                             14                        19
         2     3                                9    11     13                        17        20

                                                                       •Demo
     Planning Day                        Last D7                      • Retrospective
                                                                      • Backlog grooming
                   Gardening Day             Pencils down              • Release



             Continuous research/sketch/prototype/visual design & review loop




                                                                                                     24
Demo day
All company invited
Goals and results (Done/Not done/Adds) quickly reviewed
PO does the demo
Only demo working software that is ‘ready to release’




                                                          25
26
Retrospective
 The Team, Scrum Master, PO
 Stop, Breath. Re ect.
 Most important meeting

 Affirm the good
 Acknowledge the bad
 Propose any solutions
 Discuss
 Commit to improve



                              27
From forum post (bug) to release notes
 User posts
 Goes into backlog and post updated w/backlog tracking #
 Triaged (eng/support/po) as valid, achievable, and a priority
 Sized
 Ranked by PO among other defects
 Taken into sprint
 Fixed and tested for end of sprint
 Publish in release notes




                                                             28
Challenges




             29
Challenges
 Hard to see big picture, hard to break down Epics
 – story map




                                                     29
Challenges
 Hard to see big picture, hard to break down Epics
 – story map
 Lack of PO time ranking bug backlog
 – Add customer service to ranking




                                                     29
Challenges
 Hard to see big picture, hard to break down Epics
 – story map
 Lack of PO time ranking bug backlog
 – Add customer service to ranking
 Balancing perfection vs. release
 – Team sketching smaller stories
 – Stop at prototypes/wireframe




                                                     29
Challenges
 Hard to see big picture, hard to break down Epics
 – story map
 Lack of PO time ranking bug backlog
 – Add customer service to ranking
 Balancing perfection vs. release
 – Team sketching smaller stories
 – Stop at prototypes/wireframe
 Start / Stop costs / Min WIP / Visibility++
 – Investigating Kanban




                                                     29
Challenges
 Hard to see big picture, hard to break down Epics
 – story map
 Lack of PO time ranking bug backlog
 – Add customer service to ranking
 Balancing perfection vs. release
 – Team sketching smaller stories
 – Stop at prototypes/wireframe
 Start / Stop costs / Min WIP / Visibility++
 – Investigating Kanban
 Unit testing Drupal
 – cucumber/selenium integration

                                                     29
KISS me
 What is the point of all these processes?
 – Delivering the highest business value as fast as possible
 But agile is based on values, not processes. The processes
 re-enforce the qualities we want.
 – openness
 – growth (learning)
 – commitment
 – respect
 – restraint (focus)




                                                               30
http://cph2010.drupal.org/node/8628

More Related Content

Similar to A Sprint in the life of Drupalgardens

What we've learnt from running Design Sprints
What we've learnt from running Design SprintsWhat we've learnt from running Design Sprints
What we've learnt from running Design SprintsLesya Danylyuk
 
Drupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupDrupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupJons Slemmer
 
Execute for Every Screen
Execute for Every ScreenExecute for Every Screen
Execute for Every ScreenSteven Hoober
 
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talkTYPO3 CertiFUNcation
 
Dont limit yorself beyond kanban - activity
Dont limit yorself   beyond kanban - activityDont limit yorself   beyond kanban - activity
Dont limit yorself beyond kanban - activityPaulo Caroli
 
Becoming A Technical Project Manager
Becoming A Technical Project ManagerBecoming A Technical Project Manager
Becoming A Technical Project ManagerScott Massey
 
2013-11-07 standups, stories, planning & estimates
2013-11-07 standups, stories, planning & estimates2013-11-07 standups, stories, planning & estimates
2013-11-07 standups, stories, planning & estimatesmezis
 
Liftoff! Launching your product with JIRA and Confluence
Liftoff! Launching your product with JIRA and ConfluenceLiftoff! Launching your product with JIRA and Confluence
Liftoff! Launching your product with JIRA and ConfluenceAtlassian
 
How many gears are in your KIA car?
How many gears are in your KIA car?How many gears are in your KIA car?
How many gears are in your KIA car?c9busera
 
Remote Project Manager's Arsenal
Remote Project Manager's ArsenalRemote Project Manager's Arsenal
Remote Project Manager's ArsenalPatti Chan
 
Introduction to Agile for Digital Stakeholders
Introduction to Agile for Digital StakeholdersIntroduction to Agile for Digital Stakeholders
Introduction to Agile for Digital StakeholdersMai Quay
 

Similar to A Sprint in the life of Drupalgardens (15)

What we've learnt from running Design Sprints
What we've learnt from running Design SprintsWhat we've learnt from running Design Sprints
What we've learnt from running Design Sprints
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
Drupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupDrupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy Group
 
Execute for Every Screen
Execute for Every ScreenExecute for Every Screen
Execute for Every Screen
 
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk
2019-CertiFUNcation-Hacking-Agile-not-a-tech-talk
 
Dont limit yorself beyond kanban - activity
Dont limit yorself   beyond kanban - activityDont limit yorself   beyond kanban - activity
Dont limit yorself beyond kanban - activity
 
Becoming A Technical Project Manager
Becoming A Technical Project ManagerBecoming A Technical Project Manager
Becoming A Technical Project Manager
 
2013-11-07 standups, stories, planning & estimates
2013-11-07 standups, stories, planning & estimates2013-11-07 standups, stories, planning & estimates
2013-11-07 standups, stories, planning & estimates
 
Liftoff! Launching your product with JIRA and Confluence
Liftoff! Launching your product with JIRA and ConfluenceLiftoff! Launching your product with JIRA and Confluence
Liftoff! Launching your product with JIRA and Confluence
 
Scrum by roofimon
Scrum by roofimonScrum by roofimon
Scrum by roofimon
 
How many gears are in your KIA car?
How many gears are in your KIA car?How many gears are in your KIA car?
How many gears are in your KIA car?
 
From Scrum To Kanban
From Scrum To KanbanFrom Scrum To Kanban
From Scrum To Kanban
 
Eosp fall 2010
Eosp fall 2010Eosp fall 2010
Eosp fall 2010
 
Remote Project Manager's Arsenal
Remote Project Manager's ArsenalRemote Project Manager's Arsenal
Remote Project Manager's Arsenal
 
Introduction to Agile for Digital Stakeholders
Introduction to Agile for Digital StakeholdersIntroduction to Agile for Digital Stakeholders
Introduction to Agile for Digital Stakeholders
 

Recently uploaded

New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
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
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
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
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
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
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 

Recently uploaded (20)

New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
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
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
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
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
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
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 

A Sprint in the life of Drupalgardens

  • 1. A sprint in the life of Drupal Gardens Jacob Singh and Chris Brookins 26. aug 9:00 VPS.NET
  • 2. Who are we? Jacob Singh – Principal engineer, Acquia – @jacobsingh – jacob.singh@acquia.com Chris Brookins – VP Engineering, Acquia – @chrisbrookins – chris@acquia.com 2
  • 3. Acquia & Engineering 70 Acquia employees 22 in engineering Other Eng 4 engineering scrum teams Gardens Eng – Drupal Gardens – Acquia Hosting Non-Eng – Web crawler – Acquia.com Drupal Gardens team – 14 people, 50% distributed – 7 Drupalists, 2 front-end dev, 1 QA, 1 PO – 2 designers, 1 doc shared (80% on Gardens) 3
  • 4. Drupal Gardens Drupal 7 (since alpha1) + contrib modules Drupal as a service + contrib + ThemeBuilder + themes Over 18,000 Drupal 7 sites created in gardens No lock-in: You can export your site’s code & DB any time 4
  • 5. Product Owner Identi es and validates personas Drives story de nition – Facilitates stakeholder consensus Owns the product backlog of stories & bugs Makes sure team’s clarifying questions are answered Accepts or rejects stories in sprint Demos stories that are done Decides if results of Sprint are releasable 5
  • 6. Scrum Master Ensures all parties follow roles & responsibilities & events Protects the team from distractions Removes impediments / escalates as needed Doesn’t task or ‘manage’ team, instead raises questions Doesn’t let the team walk off a cliff Ensures conversations happen Part time 6
  • 7. Team Self-organizes Takes into sprint top priority items from backlog Determines sprint capacity Tasks out work and gets it done De nes their own de nition of done and sticks to it 7
  • 8. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 • Demo Planning Day Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 8
  • 9. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 Planning • Demo Day Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 9
  • 10. Planning Plans are outdated immediately Planning is a royal pain the ass, but concentrated Go through ‘The checklist’ Vote sts to 5 10
  • 11. Planning day checklist 1. Determine team capacity 2. Identify engineering debt that we need to do 3. Stories validated ready to start 4. Research spike unfamiliar technologies 5. Schedule mid-sprint PO/Design review 6. Pre-assign items that 1 person would best do 7. Identify dependancies and prioritize stories 8. Take sized stories/bugs & task according to De nition of Done 11
  • 12. De nition of done Developed according to Drupal coding standards Commented Peer reviewed Write system tests, but frankly not enough Doc notes added to story (as food for writer) In trunk, working and validated on test cluster PO & designer have reviewed; developer applies feedback If necessary, stress/load tested Ready to be demoed and go live 12
  • 13. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 Planning Day • Demo Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Scrum every day 13
  • 14. Scrum Answer the 3 Qs (strive for verbally) Inspect the burndown chart (and adapt if needed) Post scrum discussions PO/Designers available to answer questions Why? 14
  • 15. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 • Demo Planning Day Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 15
  • 16. Gardening days (community work) Almost always working on GPL Drupal code. Connection w/ the community, personal grati cation Allows existing projects to continue Drives innovation 16
  • 17. Drupal Gardens Sprint timeline Sprint Start Start D7 daily All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 • Demo Planning Day • Retrospective Last D7 merge • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 17
  • 18. How we track Drupal 7 & contrib 18
  • 20. Supporting engineering systems Continuous integration – jsUnit – Selenium system tests – BrowserMob load tests – Staging clusters (trunk and branch) Based on daily production backups. Toolchain – Jira, Greenhopper, Fisheye, Crucible, Google apps How we update 20k sites – Scales, concurrent updates, atomic 20
  • 21. Jira taskboard 2nd best thing to colocation 21
  • 23. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 • Demo Planning Day Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 23
  • 24. Drupal Gardens Sprint timeline Sprint Start Start D7 daily merge All Team Test Gardening Day Week 1 Week 2 Week 3 SOS SOS SOS 1 5 14 19 2 3 9 11 13 17 20 •Demo Planning Day Last D7 • Retrospective • Backlog grooming Gardening Day Pencils down • Release Continuous research/sketch/prototype/visual design & review loop 24
  • 25. Demo day All company invited Goals and results (Done/Not done/Adds) quickly reviewed PO does the demo Only demo working software that is ‘ready to release’ 25
  • 26. 26
  • 27. Retrospective The Team, Scrum Master, PO Stop, Breath. Re ect. Most important meeting Affirm the good Acknowledge the bad Propose any solutions Discuss Commit to improve 27
  • 28. From forum post (bug) to release notes User posts Goes into backlog and post updated w/backlog tracking # Triaged (eng/support/po) as valid, achievable, and a priority Sized Ranked by PO among other defects Taken into sprint Fixed and tested for end of sprint Publish in release notes 28
  • 30. Challenges Hard to see big picture, hard to break down Epics – story map 29
  • 31. Challenges Hard to see big picture, hard to break down Epics – story map Lack of PO time ranking bug backlog – Add customer service to ranking 29
  • 32. Challenges Hard to see big picture, hard to break down Epics – story map Lack of PO time ranking bug backlog – Add customer service to ranking Balancing perfection vs. release – Team sketching smaller stories – Stop at prototypes/wireframe 29
  • 33. Challenges Hard to see big picture, hard to break down Epics – story map Lack of PO time ranking bug backlog – Add customer service to ranking Balancing perfection vs. release – Team sketching smaller stories – Stop at prototypes/wireframe Start / Stop costs / Min WIP / Visibility++ – Investigating Kanban 29
  • 34. Challenges Hard to see big picture, hard to break down Epics – story map Lack of PO time ranking bug backlog – Add customer service to ranking Balancing perfection vs. release – Team sketching smaller stories – Stop at prototypes/wireframe Start / Stop costs / Min WIP / Visibility++ – Investigating Kanban Unit testing Drupal – cucumber/selenium integration 29
  • 35. KISS me What is the point of all these processes? – Delivering the highest business value as fast as possible But agile is based on values, not processes. The processes re-enforce the qualities we want. – openness – growth (learning) – commitment – respect – restraint (focus) 30

Editor's Notes