In most software development projects, there are several contributors that are not programmers. For example, a well-kitted-out team will include:
- Technical writer
- Graphic designer
- UI designer
- One or more QA people
- Expert user (a.k.a. subject matter expert) or customer (ExpertUsersAreDevelopers)
This page is about how these people fit into agile processes such as XP. As far as I know, the integration of non-programmer disciplines into agile processes is not covered very well (if at all) in the existing agile books. Hopefully, we can produce some helpful stories and best practices.
I am a technical writer who used to work at a medium-to-large software company that converted to an agile (Crystal-like) process. I wrote a little bit about it in UserDocsInXp, but I have a few observations that I think apply to other non-programmer disciplines:
- The non-programmer people have to be considered first-class members of the team (even though in many organizations a team of writers, QA, etc. will be shared between multiple development projects).
- The non-programmers should attend planning sessions and daily meetings/scrums.
- The work of the non-programmers should have feature cards, and the work that each team member must do to help the other disciplines should have feature cards (e.g. the programmer and expert user demonstrating how something works to the technical writer). This time should be allotted so it doesn't have to be robbed "off the books".
- We looked for ways to make non-programming tasks as lightweight and changeable as agile programming. For example, we tried to document features in the user docs (and obviously test) immediately when the code went into the build.
See also UserDocsInXp, LocalityOfReferenceDocumentation
CategoryAgileMethodology