Forums for the Business Analyst

 
  Modern Analyst Forums  Business and Sy...  Requirements  English inadequate for specifying search requirements?
Previous Previous
 
Next Next
New Post 7/5/2013 8:52 AM
Unresolved
User is offline Andy
1 posts
No Ranking


English inadequate for specifying search requirements? 
Way too often I find myself tempted to use pseudo code (or actual code) to specify requirements when English semantics are just too poorly defined to make for requirements that are both precise and concise. I would like to solicit some ideas for one such scenario which I run into routinely. I frequently have to describe search rules where a record is considered a search result if either field "A" or field "B" or both match the given search values. If both fields have values in the search criteria, we say that both must match. However, that is usually not quite true because this simple wording does not account for the special treatment of when "A" or "B" is not specified either in the criteria or in the database record. What we really want is results where a) Both "A" and "B" have values in both criteria and database record and both "A" and "B" criteria match the corresponding field values in the database record, OR b) Either "A" or "B" (but not both) have a value in the criteria and it matches the corresponding "A" or "B" in the database record. The other field may have a value or not. c) Both 'A" and "B" have values in the criteria but only one of the fields matches in the database record. The other field does not have a value. Do you have any ideas how to express this whole mess in a precise and concise rule? A different but similar (and more specific) example which might be familiar to some of you: We match on person names a lot. We split the name into last, first, middle and suffix. The last and first name are guaranteed to have a value both in the criteria and in the database. Middle and suffix are optional. When specifying how to match on names we have to write a complex dissertation: A person record is a match if all of the following conditions are met a) the last name matches, b) the first name matches c) the middle name is given in the criteria and has a value in the person record and matches, d) the suffix is given in the criteria and has a value in the person record and matches. Actually that's not half bad. I might use that next time. Well, you can see why, inevitably, developers and testers will stop by with a "Say what?!" on their lips. I'm looking forward to reading your brilliant ideas! Thanks! Andy
 
New Post 8/7/2013 1:20 PM
User is offline Kay Fudala
2 posts
No Ranking


Re: English inadequate for specifying search requirements? 

Andy,

Frankly, my eyes started glazing over after I read the first few sentences. I can understand how the developer may be stumped. When it is difficult to describe the requirement in its entirety you can certainly use pseduo code. However, here is a suggestion to help you break down the requirement; it has worked well for me time and again.

Take a real world example of your search situation. Really this A and B example is confusing, stick with your first name, last name example. Start putting together the process steps of how the application would implement the search algorithm like so:

System shall compare the value input by the user in field 1 with the value input in field 2 and if they match....

The above could be your high level use case which could be broken down further into what happens if field 1 exhibits xyz criteria...

What are the end results of your search? Keep going with the above exercise until all pathways to achieve those results are defined. I find that visual representation of the scenario greatly helps in resolving the requirements. Once you define a use case, run it by your developer to check whether he/she understands it.

Good luck!

Kay 

 
New Post 8/7/2013 7:33 PM
User is offline Kimbo
454 posts
5th Level Poster


Re: English inadequate for specifying search requirements? 

Hi Andy,

I worked on a data analytics project last year dealing with this stuff.

Try a user story or use case with business rules attached. User story is something like:

As a researcher (or whatever your actor is) I want to search on XXXX (whatever A and B are in business terms) so that I can XXX (business reason for searching on them)

Then in the acceptance criteria put in the scenarios you talk about. Remember to put positives and negatives. One negative will be to handle the case of not searching on that field when nothing is entered.

Using something structured like a user story or use case will take away the ambiguity you see in writing sentences.

Kimbo

 
Previous Previous
 
Next Next
  Modern Analyst Forums  Business and Sy...  Requirements  English inadequate for specifying search requirements?

Community Blog - Latest Posts

A business analysis checklist helps you stay organized while you work through projects. It includes questions that will help you identify problems in your current processes, and suggest improvements for future projects. Understand the Problem Before you start writing code, you need to understand what problem you're solving. This means u...
I’ve heard “The End is Near!” for Business Analysts for almost 20 years.  Waterfall project management, with its need for formal requirements, is dead…a dinosaur…so 1990’s.  To be honest, that’s mostly true.  With the publishing of the Agile Manifesto in 2001 there was no need for a 2-inch-...
Business analysis is used to identify and articulate the need for change in how organizations work, and to facilitate that change. As business analysts, we identify and define the solutions that will maximize the value delivered by an organization to its stakeholders. We look for opportunities for new business models and new ways to work together. ...

 






 

Copyright 2006-2022 by Modern Analyst Media LLC