Over a million developers have joined DZone.

Three Helpful Requirements Gathering Tools

· Agile Zone

Learn more about how DevOps teams must adopt a more agile development process, working in parallel instead of waiting on other teams to finish their components or for resources to become available, brought to you in partnership with CA Technologies.

Gathering requirements is an important part of any software professional's job. It's the main function of a business analyst. Even if you're not a business analyst, you still gather requirements as part of your job. For example, learning about new systems, creating documentation, or even writing code to interface with other systems. Let's have a look at a few requirements gathering tools that we can use.

Microsoft Visio

A good way of gathering requirements and documenting them is to create diagrams for them. Some people (myself included) are visual learners, which means they learn things easier by looking at diagrams, as opposed to reading text or instructions.

A diagram can be useful in many cases:

  • Process diagram to explain how a business process works
  • Diagram to explain systems and their interfaces
  • Diagrams to explain code flows between modules
  • Diagrams to explain organisational structures and how teams work
If you're trying to learn new things, creating diagrams can be a big help. Microsoft Visio is an easy to use application for creating diagrams. I try to get a copy on my computer for the clients that I work at, and I suggest you do as well. The only drawback is that it is often licensed separately to Microsoft Office, which means companies have to pay extra for licenses for Visio, and that it might not be possible for you to use it.

Good Old-Fashioned Phone Call

In a world with all kinds of communication technology, we have learnt to talk using email, SMS, and instant messaging. Sometimes these methods can help, and other times they don't.

A good requirements gathering tool is the regular phone call. Sure, you might use it all the time, or not at all. But it does have its advantages.

You get to speak to the person that you want, and you get to do it right away. You don't need to wait for them to read the email, reply to the SMS, or write back to your instant message. Choosing the right communication method is important, and is something I've written a post on recently.

A phone call, whether it's to a desk phone or a mobile, is a great and efficient way of getting your questions answered by someone.

Confirmation Email

One of the things I was taught early in my IT career was that email is a valuable record of information. When we need to discuss things with someone, it's easy to forget the details at a later date, or to be a bit confused about some points. This is why I was told to use email as a follow-up or a confirmation.

After you discuss something with someone in person or over the phone, it's a good idea to send them an email to confirm your discussion. It can be as simple as, "Hi John, As discussed, we will build the interface to ABC system using the existing ASP tools and aim for the initial testing date of March 20th. Is this correct?". This will put the discussion down in writing, and make it clear. The recipient can read and respond, by either agreeing if that's what the outcome was, or correcting you if something was wrong.

It also serves as a record in case you forget or need to come back to it later.

Discover the warning signs of DevOps Dysfunction and learn how to get back on the right track, brought to you in partnership with CA Technologies.


The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}