Requirements Gathering: Doing Our Homework to Achieve Your Business Goals
4-10-2017Updated 05-06-2020
Requirements gathering is exactly what it sounds like — although it is not as easy as it sounds. The first step in every successful web development project is thorough requirements gathering, where goals and objectives are fleshed out to determine the needs of a website or web application.
"If you can’t describe what you are doing as a process, you don’t know what you’re doing.” – W. Edwards Deming
Creating the Foundation for Effective Requirements Gathering
Clients come to us with business needs that aren’t being satisfied by their current technology, and by asking the right questions we uncover the underlying factors driving their request. As every business and project is different, we start the requirements gathering process by working to understand the client’s business and business environment. Next, we dig into the background and impetus for the project itself. By taking the time to holistically understand the issue, we are able to refine the business needs, suggest improvements, and provide alternative solutions.
We begin to flesh out the project details by asking these broad questions:
- What is the overall goal of the project?
- Why do you need it built?
- Who will be using the system and when?
- How will it be built?
The answers and discussions that stem from these simple questions bring to light the project goals, key restraints, and unique circumstances of the project that we consider throughout the requirements gathering process. By starting with a solid understanding of the project’s foundation and then drilling down to a granular level we ensure that the proposed solutions deftly address all of a client’s business needs.
Requirements Gathering Tools and Processes
Using our wealth of industry knowledge and variety of tools we work with stakeholders, users, and customers to gather all of a project’s necessary requirements. Depending on the type of project, we will determine what tools or processes (e.g. questionnaires, surveys, and workflow shadowing) are best suited to identify the project requirements.
For example, workflow shadowing is essential when stakeholders come to us with a system that isn’t fully supporting their operations. Our team observes employees in unique roles perform their daily tasks to understand how the existing system is being utilized and to identify pain points and user frustration. These insights allow us to formulate better solutions for a new or updated system. All of our requirements gathering techniques allow our team to identify your goals and in turn inform a successful project strategy.
Considering All the Factors
There are a lot of factors that help inform the final product and its functionality. Considering as many relevant factors as possible is important to a successful requirements gathering process. Here are some factors that we take into consideration when defining project requirements:
- Are all business needs met?
- What assumptions are we making?
- Have we properly defined the project scope? (‘In Scope’, ‘Optional’, and most importantly ‘Out of Scope’)
- How will this affect: customers, staff, and stakeholders?
- What items require further research?
- What potential issues could affect the product/timeline/budget?
- What third party tools are involved? Are they up-to-date? What happens when they update?
- Do we need to migrate data? How will we? How much data?
- How are we ensuring security (e.g. protecting data)?
- What are our dependencies?
- Are we leveraging existing functionality?
- What options have we not considered?
- Is what we are proposing better than the current system/workaround (i.e. is the project justified)?
- What will be the on-going maintenance associated with our updates?
Flexible with Agile
We understand that having all of the answers upfront is impossible; even with robust requirements gathering there still can be unknowns, or conflicting ideas. We manage these inevitable changes with Agile project management which gives us the flexibility to handle shifting priorities. Requirements gathering is a group effort and the Agile approach encourages stakeholder collaboration and allows us to keep our clients engaged by actively adjusting and tuning requirements throughout the life of the project.
We recognize the value of requirements gathering, so all of our work plans and proposals set aside ample time to do our homework. Our commitment to not cutting corners on requirements gathering is proven to deliver smart solutions, successful launches, and happy clients.
If you are interested in building a new web application or need help determining your project’s requirements, contact us to schedule a free consultation with our team.