Friday, February 27, 2009

Requirements not functionality

A footnote to the recent discussion of requirements....

In Competitive Engineering Tom Gilb argues that development groups spend a lot of time focusing on functional requirements but they should actually focus on performance and quality requirements:

“ From the point of view of understanding ‘competitiveness’, ‘levels of achievement’ and ‘associated risk’, the performance requirements are by far the most interesting requirements. Yet, traditionally, too much attention has been given to specification of functional requirements and resource requirements.” Tom Gilb, 2005

Put that in the context of an imaginary payroll software company: understanding what payroll software needs do do is fairly straight forward, most products on the market will do the same thing. But what makes the product competitive is how well it does it.

It relatively easy to list the things your software should do but listing how the software will be more competitive than the opposition, or delivery real business value - rather than a shopping list of features - is more difficult.