Agile development: Problems and Process
Upcoming SlideShare
Loading in...5
×
 

Agile development: Problems and Process

on

  • 2,074 views

 

Statistics

Views

Total Views
2,074
Views on SlideShare
2,071
Embed Views
3

Actions

Likes
0
Downloads
23
Comments
0

1 Embed 3

http://www.linkedin.com 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Agile development: Problems and Process Agile development: Problems and Process Presentation Transcript

  • Agile Development: Problems and ProcessAgile DevelopmentProblems and ProcessMarch 24, 2010Denise KadilakInformation Architect – Blackbaud, Inc.
  • Agile DevelopmentContext Blackbaud is the leading global provider of software and related services designed specifically for nonprofit organizations Headquartered in Charleston, South Carolina, with operations in Cambridge, Massachusetts; San Diego California; Toronto, Ontario; Glasgow, Scotland; London, England; and Sydney, Australia. The company employees about 2,000 Documentation team comprised of 18 writers and one manager • Two writers based in San Diego • Two remote writers: one in Cleveland, OH and one in Richmond, VADenise Kadilak| Page #2 © 2010 Blackbaud
  • Agile DevelopmentOverview Blackbaud implemented an Agile-based development process about 15 months ago Started slow with just a couple sprint teams Gradually over a several-month period each of the company’s product lines was added to the new process and new sprint teams created We now have dozens of sprint teams covering six overlapping product lines that also often include different release dates Not all documentation projects are included in the sprint workflow We still have a few “Scrum but” teamsDenise Kadilak| Page #3 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Sprint teams Product manager (optional) Program manager (optional) Developer(s) QAA(s) Designer(s) Writer Support representative (optional)Denise Kadilak| Page #4 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Product owner role Define features of product, decide release date and content Responsible for ROI Prioritize features Accept or reject work results Scrum master role Ensure team is fully functional and productive Enable cooperation across all roles/remove barriers Shield team from external interferences Ensure process is followedDenise Kadilak| Page #5 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Extreme Programming method Perform most software development activities simultaneously Work in two- to six-week sprints Work planned based on backlog items (work items) identified and prioritized by the product ownerDenise Kadilak| Page #6 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Each Sprint: Begins with a planning session • Determine sprint team capacity • Identify work items to be addressed (from prioritized backlog) • Identify buffer work items Sprint team members build tasks based on stories (backlog item) • Each task item lists • Task to be completed • Owner • Estimated hours necessary to complete the task » Current status » Work hours remainingDenise Kadilak| Page #7 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Each Sprint (continued): Team members regularly update their tasks, tracking the sprint’s progress Team members meet for daily stand-ups, reporting: • What they worked on yesterday • What they plan to work on today • Any impediments Additional meetings added as necessaryDenise Kadilak| Page #8 © 2010 Blackbaud
  • Agile DevelopmentBlackbaud’s Agile Method Each Sprint (continued): Ends with: • Internal demonstration of completed tasks • Retrospective meeting • What went right • What went wrongDenise Kadilak| Page #9 © 2010 Blackbaud
  • Agile DevelopmentDocumentation Challenges No detailed design documentation We had to find new ways to figure out how the product is supposed to work Writers are responsible to two or three different sprint teams Often these teams are not working on the same product or in the same release cycle Remote writers In addition to sprint-specific work, writers maintain/create documentation for application features not yet included in the Agile process Short sprint cycles do not allow much time for internal or external review of contentDenise Kadilak| Page #10 © 2010 Blackbaud
  • Agile DevelopmentDealing With The Challenges Vary based on the sprint team, but in general: Design works one sprint ahead of sprint team We found helpful subject matter experts outside of design • The sprint-team environment resulted in closer relationships with managers, developers, and QA analysts, which in turn resulted in improved feedback on the user assistance and better communication with all divisions in Product Development • All divisions feel more vested in the product overall, and this includes user documentationDenise Kadilak| Page #11 © 2010 Blackbaud
  • Agile DevelopmentDealing With The Challenges Created a flexible definition of done for Documentation to better reflect the realities of a sprint environment Developers working on application up until last minute of sprint New work items added at last minute • Documentation capacity not always considered Writers working on projects not included in Agile need some flexibility Review process must be accommodated Writers working in several sprints that end at the same time need some freedom to prioritize projects • Finish tasks for the sprint closes to a real release • Identify tasks they cannot complete and move tasks to next sprintDenise Kadilak| Page #12 © 2010 Blackbaud
  • Agile DevelopmentDealing With The Challenges Process put in place to address remote employees Online scrum Dashboards allow remotes to track sprint progress Webcams and Live Meeting used for Sprint planning sessions • But these are still painful • Last several hours • Difficult to hear with everyone talking Remote employee must be proactive • Contact scrum master /product owner in advance of planning sessions for backlog item list • Push designer for any requirement documentationDenise Kadilak| Page #13 © 2010 Blackbaud
  • Agile DevelopmentConclusions on Agile – The Bad Hard on writers Increased stress level • Several competing deadlines every few weeks • All sprint team members harried last week of sprint • Some product/program managers think they know more about documentation time estimates than the writers Increased workload • Certain amount of make-busy work • Too many meetings • Maintain scrum dashboard • Manage two or three sprints + non-sprint related work = headacheDenise Kadilak| Page #14 © 2010 Blackbaud
  • Agile DevelopmentConclusions on Agile – The Bad Buy-in still an issue Loss of document ownership Several writers working in same file Who is responsibleDenise Kadilak| Page #15 © 2010 Blackbaud
  • Agile DevelopmentConclusions on Agile – The Good Documentation is 100% integrated in the product development process We participate in every development phase Two members of the documentation team are scrum masters A documentation team member played a key role in the solution effort • As scrum master, he identified early in the process problems faced by all team members • Met with leaders of other teams to formulate and implement a fixDenise Kadilak| Page #16 © 2010 Blackbaud
  • Agile DevelopmentConclusions on Agile – The Good Improved understanding of documentation process Improved customer focus Improved overall product Improved understanding of the user experience = more user empathy when developing and writing Team development = a team vested in the final product • Documentation more vocal about the product design and development • QAA and developers more vocal about the documentation • QA has a formal testing plan for our online helpDenise Kadilak| Page #17 © 2010 Blackbaud
  • Agile DevelopmentTools Microsoft Team Foundation Server Store all content Houses all work items to be addressed EPiSERVER Scrum Dashboards Web-based dashboard for the Scrum process template in TFSDenise Kadilak| Page #18 © 2010 Blackbaud
  • Agile DevelopmentResources http://en.wikipedia.org/wiki/Agile_software_development Manifesto for Agile Software Development Agile Methodology Art of Agile Development by James Shore & Shane Warden (O’Reilly) Writing End-User Documentation in an Agile Development Environment by Anne Gentle Writing Software Documentation in Agile “Scrum” TeamDenise Kadilak| Page #19 © 2010 Blackbaud
  • Agile DevelopmentFinished! Q&A Contact information: denise.kadilak@blackbaud.comDenise Kadilak| Page #20 © 2010 Blackbaud