agile drupal tips
play

Agile Drupal Tips 12 Ways to Help Keep Your Project Humming Chris - PowerPoint PPT Presentation

Agile Drupal Tips 12 Ways to Help Keep Your Project Humming Chris Urban Manager, Professional Services chris.urban@acquia.com @_urban_ d.o:urbanlegend Overview Assumptions Review some common issues Outline how to leverage tools


  1. Agile Drupal Tips 12 Ways to Help 
 Keep Your Project Humming Chris Urban Manager, Professional Services chris.urban@acquia.com @_urban_ d.o:urbanlegend

  2. Overview → Assumptions → Review some common issues → Outline how to leverage tools → Profit! chris.urban@acquia.com/ @_urban_/

  3. The Problems → Bursts of unrefined requests → Unclear ownership → Multiple stakeholders 
 with colliding inputs → Foggy longer-term goals chris.urban@acquia.com/ @_urban_/

  4. FOUNDATION

  5. A Solid Foundation → Documentation ! Key knowledge shared → Communication ! Processes shared ! Expectations managed chris.urban@acquia.com/ @_urban_/

  6. Documentation → Basic process for workflow ! Who should own the tickets in each state? → RACI or RASCI ! Responsible-Accountable-(Supporting) 
 -Consulted-Informed ! Who is responsible for what function → Objective rules and playbooks → Definitions, Hotfix criteria and course of action ! Define plans to objectively handle events chris.urban@acquia.com/ @_urban_/

  7. Documentation → Basic process for workflow ! Who should own the tickets in each state? → RACI or RASCI – who is responsible for what and when ! Responsible (R) - "The Do-er of the task" ! Accountable (A) - "The Buck Stops here - makes sure the task is done" ! Supporting (S) - "Helps get the task done or contributes materially" ! Consulted (C) - "In the Loop" ! Informed (I) - "Keep in the Picture” chris.urban@acquia.com/ @_urban_/

  8. Documentation → Objective rules and playbooks → Definitions, Hotfix criteria and course of action ! Spike vs Tracer Bullet ! Candidates for mid-sprint removal ! Release checklists ! Bugs & User Stories & Epics chris.urban@acquia.com/ @_urban_/

  9. Learn some JQL 
 → Extremely powerful → Background in SQL or query language construction helpful → Find exactly what you need → Save it as a Filter and Share with others

  10. Use Columns in Jira chris.urban@acquia.com/ @_urban_/

  11. FILTERS

  12. Sprint Filters → Create a filter when you Create a Sprint → Update to share with all on Project in JIRA → Prevent confusion: ! Use Sprint ID “Sprint 26 (1075)” ! Use Project “XYZ Sprint 26” chris.urban@acquia.com/ @_urban_/

  13. chris.urban@acquia.com/ @_urban_/

  14. LABELS

  15. Labels for Sprint End Demo → Have Product Owners label their tickets with “demo” → Confluence page with Insert JIRA Issue/Filter ! project = {project} AND 
 type != Sub-task AND 
 sprint = {Sprint#} AND 
 labels = demo 
 ORDER BY key ASC, priority DESC chris.urban@acquia.com/ @_urban_/

  16. JIRA Components → Associate with Drupal content types “Content: Article” → Organizes tickets to optimize traceability → Organizes Subset QA Testing → Utilize general use cases ! “Content Editing,” “Image Editing” → Add others based on Epics ! “Analytics,” “Advertising,” “Metadata,” 
 “Global Menu,” “Footer”

  17. JIRA Components → Internationalization (i18n) → Editing Content → Admin Settings → Localization (L10n) → Editing Images/Media → Advertising → Metadata → Commerce → Error Pages → Multisite → Content Scheduling → Global Footer → Search → Content: Article → Global Navigation → Security → Content: Calendar → Integration: Analytics → SEO → Content: Event → Integration: Asset Storage → Setup: Server → Content: Forms → Integration: Authentication → Setup: Site → Content: Home Page → → Integration: CDN Site Performance → Content: Media → Testing → Integration: Content Hub → Content: News Release → URL Management → Integration: Generic → Content: Photo Gallery → User Forms → Integration: Salesforce → Content: Video → User Groups → Integration: Social → Documentation → User Profile → Integration: YouTube → Workflow & Roles

  18. TABLES

  19. Filtered WIP tables → Confluence page with JIRA tables → project = {project} AND Sprint in openSprints() and type!= Sub-task and component = “Content: Article” → project = {project} and type!= Sub- task and component = "Analytics" AND updated > -8w chris.urban@acquia.com/ @_urban_/

  20. SUB-TASKS

  21. Sub-Tasks → Keep track of process or workflow-related issues ! External review teams ! Flag priorities among tickets ! Announce need for a check-in mid-sprint ! Reminder to create QA test script chris.urban@acquia.com/ @_urban_/

  22. Agile Ceremonies to add → You are already using: ! Grooming, daily scrum, sprint end review and retro → You Should Add: Sprint Planning: ! Reiterate what’s to be committed in next sprint ! Associate to team, or even developer chris.urban@acquia.com/ @_urban_/

  23. Agile Ceremonies to add → Add: Backlog “Pruning” ! Establish goal to either close or assign for immediate review to keep it fresh → JQL: ! project = {project} AND 
 status != Closed AND 
 Sprint is EMPTY AND 
 type = Story AND updated < -14w chris.urban@acquia.com/ @_urban_/

  24. Grooming Agenda → Multiple product owners x multiple tickets = chaos → Timeboxing shifts priority back to product owner → Allocate 30 min per PO per week to start → Plan for 5 to 6 minutes per tickets to start chris.urban@acquia.com/ @_urban_/

  25. Grooming Worksheets → Worksheet Set-up: grid with PO, tickets, availability → Removes blocker of interpretation → Timebox tickets and product owner(s) → Assumes fixed grooming ceremonies → Plan around prioritized tickets and availabilities → Establish hard deadline chris.urban@acquia.com/ @_urban_/

  26. Grooming Worksheet Product(Owner( Tickets( Availability( Muddy/Waters/ SP1:34/ Any/ SP1:35/ SP1:40/ EAa/James/ SP1:37/ Tues/AM/session/only/ SP1:38/ SP1:39/ SP1:44/ Robert/Johnson/ SP1:42/ Any/ SP1:43/ chris.urban@acquia.com/ @_urban_/

  27. POINTING

  28. Pointing Tickets → Keep it fair → Keep voting time to a minimum → Use resource like pointingpoker.com ! Have Tech Lead enter in tickets title and timebox voting ! PM monitors grooming backchannel ! Pre-determine voting {1,2,3,5,8,13,?} chris.urban@acquia.com/ @_urban_/

  29. CUSTOM FIELDS

  30. chris.urban@acquia.com/ @_urban_/

  31. JIRA Tips & Tricks → Backlog view: Color code by JQL 
 or Custom Field (Teams) → Create “sprints” for backlog organization ! Manage sprint allocations → Multiple boards for di ff erent audiences chris.urban@acquia.com/ @_urban_/

  32. JIRA Tips & Tricks → Swimlanes → Normally by User or Epic → Use JQL queries! ! Labels = “stretch ” chris.urban@acquia.com/ @_urban_/

  33. chris.urban@acquia.com/ @_urban_/

  34. chris.urban@acquia.com/ @_urban_/

  35. REST API hAp://thisaleesblog.blogspot.com/2014/07/beauNful:beach:desktop.html/

  36. Use JIRA REST API → Use Search endpoint: ! {URL}/rest/api/2/search?jql={QUERY} chris.urban@acquia.com/ @_urban_/

  37. Use JIRA REST API → Google Sheets → Script Editor → Pass Queries directly → Update tickets ? chris.urban@acquia.com/ @_urban_/

  38. JIRA

  39. Integrate API into Sheets chris.urban@acquia.com/ @_urban_/

  40. Integrate API into Sheets → Try example script: → Github: chrisurban/ jira-sprint-reporting chris.urban@acquia.com/ @_urban_/

  41. What You Learned → Document Everything! → Use Components → Sprint Planning → Sub-Tasks → Backlog Pruning → Worksheets for grooming → Labels for Demos → Pointing practices → Filters & Sprint naming → Custom fields → JIRA JQL Basics → Leverage JIRA REST API → Other tips & tricks

  42. Questions ? Chris Urban, Manager, Professional Services chris.urban@acquia.com @_urban_ d.o: urbanlegend

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend