Mais conteúdo relacionado Semelhante a Agile development: Problems and Process (20) Mais de Denise Kadilak (11) Agile development: Problems and Process1. Agile Development
Problems and Process
March 24, 2010
Denise Kadilak
Information Architect – Blackbaud, Inc.
Agile Development: Problems and
Process
2. Denise Kadilak| Page #2 © 2010 Blackbaud
Agile Development
Context
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, VA
3. Denise Kadilak| Page #3 © 2010 Blackbaud
Agile Development
Overview
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” teams
4. Denise Kadilak| Page #4 © 2010 Blackbaud
Agile Development
Blackbaud’s Agile Method
Sprint teams
Product manager (optional)
Program manager (optional)
Developer(s)
QAA(s)
Designer(s)
Writer
Support representative (optional)
5. Denise Kadilak| Page #5 © 2010 Blackbaud
Agile Development
Blackbaud’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 followed
6. Denise Kadilak| Page #6 © 2010 Blackbaud
Agile Development
Blackbaud’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 owner
7. Denise Kadilak| Page #7 © 2010 Blackbaud
Agile Development
Blackbaud’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 remaining
8. Denise Kadilak| Page #8 © 2010 Blackbaud
Agile Development
Blackbaud’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 necessary
9. Denise Kadilak| Page #9 © 2010 Blackbaud
Agile Development
Blackbaud’s Agile Method
Each Sprint (continued):
Ends with:
• Internal demonstration of completed tasks
• Retrospective meeting
• What went right
• What went wrong
10. Denise Kadilak| Page #10 © 2010 Blackbaud
Agile Development
Documentation 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
content
11. Denise Kadilak| Page #11 © 2010 Blackbaud
Agile Development
Dealing 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 documentation
12. Denise Kadilak| Page #12 © 2010 Blackbaud
Agile Development
Dealing 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 sprint
13. Denise Kadilak| Page #13 © 2010 Blackbaud
Agile Development
Dealing 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 documentation
14. Denise Kadilak| Page #14 © 2010 Blackbaud
Agile Development
Conclusions 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 = headache
15. Denise Kadilak| Page #15 © 2010 Blackbaud
Agile Development
Conclusions on Agile – The Bad
Buy-in still an issue
Loss of document ownership
Several writers working in same file
Who is responsible
16. Denise Kadilak| Page #16 © 2010 Blackbaud
Agile Development
Conclusions 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 fix
17. Denise Kadilak| Page #17 © 2010 Blackbaud
Agile Development
Conclusions 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 help
18. Denise Kadilak| Page #18 © 2010 Blackbaud
Agile Development
Tools
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 TFS
19. Denise Kadilak| Page #19 © 2010 Blackbaud
Agile Development
Resources
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” Team
20. Denise Kadilak| Page #20 © 2010 Blackbaud
Agile Development
Finished!
Q & A
Contact information: denise.kadilak@blackbaud.com