SPA Conference session: Planning for Non-Functional Requirements in Agile Projects

One-line description:Techniques for prioritising and estimating non-functional requirements in planning-game type session
 
Session format: Workshop (150 mins) [read about the different session types]
 
Abstract:One of the key strengths of agile development processes is that they are driven by business imperatives; they carefully assess the business value of functional requirements, then prioritize and plan their implementation accordingly. A critical element of this is that it is the business customer who ultimately decides priority and hence the scheduling of the requirements.

Getting a business customer to prioritise functional requirements can be a challenge. Getting them to specify and prioritise non-functional requirements is a dark art. Typical customers want a system that is 'fast', 'reliable', 'secure' and 'easy to change'. In this workshop, we will trial alternative techniques for planning and prioritising non-functional requirements. We will specifically explore whether non-functional requirements can be captured in traditional user stories, creating value, or whether they should be expressed in other ways, incurring costs if the project fails to meet them. The session organizers will propose techniques of both types. The session aims to demonstrate the strengths and weaknesses of each.

In the simulation, competing teams are assigned a strategy for analyzing non-functional requirements. These are elicited in several iterations. As the simulation progresses, adherence to the assigned strategy is relaxed and participants are encouraged to supplement them with techniques they have found useful in their own practice. The session leaders will act as customers and be a bit awkward so as to challenge the validity of the approaches.

We are looking for some good strategies for dealing with this problem and we will be happy to achieve this whether the feedback is that our strategies are good or whether a participant brings a good strategy. We hope to produce a paper that summarises the various strategies and in what context(s) they might be considered 'good'.
 
Audience background:Some experience of Agile projects and planning-game type sessions
 
Benefits of participating:Gain insight into rationally planning effort invested into realizing non-functional requirements. Share you experiences of dealing with planning non-functional requirements with other practitioners.

Note: this session requires a minimum of 8 participants to execute successfully.
 
Materials provided:All the usual planning-game stuff: pens, cards, etc.
 
Process:The session leaders will present a case study to use as an example. We will also outline two strategies we have used for incorporating non-functional requirements into Agile planning sessions. The group will be split into two halves (each half may then also be split into more than one team if the group is large) with each being assigned one of the the two strategies.

The simulation works as a planning game with the workshop leaders acting as customers. The simulation will test the strategies and, as the simulation evolves, allow the opportunity for participants to introduce new strategies. The evaluation and discussion will allow the strategies to be compared and their applicability assessed.
 
Detailed timetable:
 
Outputs:The workshop leaders are planning to write a paper describing the various strategies and the outcome of the evaluation and discussion.
 
History:The session has been submitted to XPDay 2006.
 
Presenters
1. Paul Dyson
e2x limited
2. Johan Peeters
Johan Peeters bvba
3.