Requirements Gathering: The Learning Curve

When you start a new job, even if you are an expert with lots of experience in the domain in which you new employer work, you have to learn.  Sometimes the learning curve is small, sometimes long – in any case there is always a learning curve.  In a healthy environment, there is bi-directional learning process.  You will learn your new job, but you will also teach your experiences to your co-workers and employer.  Everyone has something to give back.  The same aspect can be also considered for an analyst who’s task is to gather requirements from a new client.  The learning experience is also two-way, since users do also learn, or will learn, from the analyst. [1]

In order to explain the introduction of this blog better, let’s discuss a scenario:

Dexter, our fictitious analyst, is assigned to analyse the stock control requirements of Store-n-Sell Limited, our fictitious client.  When Dexter meets Tony, the store manager for Store-n-Sell, Tony explains the process that happens in the store.  Tony may be a ‘good tutor’ and knowing the process well he can help Dexter to understand, or rather to ‘learn’ the requirements.  Dexter on the other hand is also a ‘good tutor’ and during the elicitation process, as an expert in stores management and stock controls, he teaches, actually suggests, Tony improvements that can be done to optimise the process [*], discusses his opinions on how the software can work to help Tony who is absorbing all information from Dexter.

Requirements Elicitation is thus also a two way learning process.  So, knowing how one learns is a plus for the system analyst.  In my previous blog post, I listed that the apprehending the user is a vital aspect of the elicitation process.  Often the analyst must be capable of understanding how the user is feeling about this whole elicitation process and also about the user’s task itself.  Just like the analyst must understand the user’s feelings, the analyst must also understand how the user learn and, maybe more important, how the analyst oneself learns.  Understanding how you learn will put you on the right track to ask for things in the right way.

Know your users and yourself

Me, myself

For the analyst using the Felder-Silverman Learning Style Models (LSM) [2] the idea is that a questionnaire is given to the users and the result will help the analyst to understand how the users prefer to learn.  In this way if users prefer more visual material to learn, the analyst will not present a document full of text.  The Felder-Silverman LSM divides the ‘student’ into 4 different aspect:

Active vs Reflective Learners: Try vs Think

Active learners will learn more quickly if they do something.  So it is not useful to do explanations and demos if they do not do hands-on session.  On the other hand, reflective learners absorb knowledge and then think about it, and memory-train themselves.

Sensing vs Intuitive Learners: Fact vs My Way

Frank Sinatra :) My Way

A sensing learner likes to solve problems and learn facts using well established methods.  So if your user is a sensing learning it is useful to present the solution in the form of a ‘formula’.  On the other hand intuitive learners will need to ‘invent’ their method by discovering all the possibilities and relationships.

Visual vs Verbal: Pictures vs Text

A visual learner learns best by looking at pictures, diagrams, demos, videos, flow charts and anything that is visible – these remains in memory and information is loaded and associated more easily.  A verbal learner will be better off when text is written or spoken rather than images presented to them.  Obviously this, as a matter of fact any other section, this does not mean that a learner will learn most using 100% their way – they need both ways but focused on their preferred method.  Most probably during lectures a visual learner will design images while a verbal learner will write notes in the form of text.

Sequential vs Global: One, two, three vs The Big Picture

Step by step...

A sequential learner will learn one step after another.  This means that the process must be defined in steps, one leading to another and finally concluding – this way the ‘student’ can help create an understanding of the problem in sequential but simpler steps.  A global learner does not care the sequence.  This type of ‘student’ will want to gather lots of information, often without any apparent normal logic or usefulness between it, until at once point the picture becomes clear and the problem is understood.  Usually a global learner will skim through a book in no apparent logical way or sequence, maybe never read it all, and still get it.

The Questionnaire

Question Time

The questionnaire discussed can be found at  When users fill it they are presented with results which should help the analyst acquire a guideline of the diversity of users’ preferences help them present the elicitation interviews and also in presenting any documentation on the findings and proposed solutions according to those needs [3].  It will also help the analyst to understand oneself and ask users questions which will be answered in the way the analyst understands most.


[*] I believe that a good analyst is also a consultant in helping to improve the business – but that’s a discussion for another blog post.


[1] Haruhiko Kaiya, Yuutarou Shimizu, Hirotaka Yasui, Kenji Kaijiri, Mothoshi Seaki: Enhancing Domain Knowledge for Requirements Elicication with Web Mining [2010 Asia Pacific Software Engineering Conference].

[2] B. Soloman and R. Felder: Index of learning Styles Questionnaire [2009].

[3] R. Felder and J. Spurlin: Applications, Reliability and Validity of the Index of Learning Styles. [2005 International Journal of Engineering Education]


Popular posts from this blog

Requirements {Gathering | Elicitation}: Getting Started