I was reading Thomas Nilsson’s site (nice site) on Responsive Development (nice term) when I came across a quote in Thomas’ post titled What is “Agile” all about? Really? from agile guru and manifeto signatory Ron Jeffries. Jeffries offers some cautionary words about the word “intuition” and, more specifically, applying it to agile development. (at the Agile Software Development Forums)
However, I’d want to be careful with the term “intuition”. It’s a weak, and perhaps dismissive term when we use it to describe the combined experience of a group of people, brought to bear on some problem, when they are freed from their cubes and are enabled to work together.
What he is saying is the use of the term “intuition” should be limited but not intuition itself as intuition has an important place in software development and always has. Some processes seem determined to eliminate the “messy” and “non-scientific” by increasing the granularity or specificity of project requirements. I believe intuition is more than just a guess and should be given respect in the decision making process. Intuition brings to bear all of a team’s experiences and is applied in a rapid manner. Malolm Gladwell agrees, though he has chosen not to use the word in his wonderful, best-selling book Blink.
You could also say that it’s a book about intuition, except that I don’t like that word. In fact it never appears in “Blink.” Intuition strikes me as a concept we use to describe emotional reactions, gut feelings–thoughts and impressions that don’t seem entirely rational. But I think that what goes on in that first two seconds is perfectly rational. It’s thinking–its just thinking that moves a little faster and operates a little more mysteriously than the kind of deliberate, conscious decision-making that we usually associate with “thinking.”
So to answer the question posed in the title of this post, yes, intuition does play a part of software development, an important part.