0 Shares 422 Views

The Secret of Success in Projects: Requirements Elicitation

The Secret of Success in Projects: Requirements Elicitation

Despite the efforts of project teams and too many resources, projects often fail. Requirements and time limits that cannot be correctly determined due to a lack of communication between stakeholders are the most common obstacles on the road to failure. Generally, the results appear in the form of not meeting user requests, exceeding the promised times due to frequent changes, or employee dissatisfaction. The keys to success are well-defined requirements, a seamless communication network among stakeholders, self-organization, and project teams that are capable of meeting changing needs. In order for the projects to successfully see the finish line, understanding how the factors we have underlined guide us on the difficult path to success is as important as bringing them to life.

In this article, we set out to elicit and define the requirements. Requirements are a set of specific definitions that help meet customer needs. Successfully identified requirements are the starting line for a project that has the potential to succeed. Requirements elicitation is an interactive and research-based process that occurs during meetings with customers and users. Therefore there is a serious difference between “gathering” and “eliciting” requirements (Requirements Elicitation). Gathering requirements refer to the act of asking the customer for a list of things they want to do whereas eliciting requirements is the act of separating user wants and needs. While customers often find it challenging to separate what is a need and what is a desire, they need guidance from project teams.

Many types of requirements are defined in projects, including business requirements, business rules, user requirements, functional and non-functional requirements. While business requirements and business rules can affect the project, identifying user requirements, functional and non-functional requirements is the most important action in the success of the project. When starting a project at Medianova, we first work to elicit user requirements that define what users can do with the product to be developed. Then, we discuss the most preferred methods while defining user requirements in Agile Project Development.

  • Use Case,
  • User Story,
  • Wireframe,
  • Storyboards

Use Cases are one of the best ways to show the relationship between the system and end-users. Used to describe a task from a stakeholder perspective in the development of a product. It is expressed in the form of a simple and general table like the following, free from technical details.

Name:

A name will be defined for the use case.

Participating Actors: Stakeholders that will be planned to be involved in the use-case will be defined. Roles are used instead of special names.
Goals: The goals of the use-case will be defined.
Triggers: It is defined as an event that sets starting the use-case.
Pre-conditions: The conditions that must occur before the use case is realized in order to happen the use-case.
Post-conditions: The conditions that occur after the use-case is realized.
Basic Flow: The basic flow of the use-case.
Alternate Flows: The alternate flow of the use-case.
Exceptions: Events that prevent the occurrence of the usage scenario are defined. While it is stated at which stage these exceptions can occur in the basic flow area, potential solutions are defined in the alternate flow area.
Qualities: Quality requirements such as performance, efficiency, and safety, which are defined as non-functional requirements are defined.

 

User stories, which are quite simple in terms of reading, writing, and evaluating, are another way of defining the most preferred end-user requirements. A user story should be easily separated from other user stories and can be developed and implemented independently. Instead of focusing on specific technical details, the focus should be on the main and important aspects of the user requirement. The predictability of the time required to design and implement a user story is another important point. User stories with unpredictable durations are probably quite wide in scope and are called Epic. In such a case, the user story should be divided into more than one user story in smaller parts. At the same time, it is one of the most important features of a well-defined user story that it definitely adds value to the end-user and can be tested.

Requirements Elicitation

The impressions that give the user and the customer an idea about how the product will look like, are called Wireframe. Wireframes are used to give a general idea about the product to be developed, to receive feedback from users and customers about the product, to include them in the product development process, and to communicate with the development team. Storyboards, on the other hand, are generally expressed as showing wireframes with a relationship to create a flow. It is intended to help the development team design requirements, help identify what may be overly complex or missing in supporting tasks, and ensure that the development team is aware of the product’s functionality and feel.

Below is an example of a storyboard created for a social media app and contains no design elements for the sake of simplicity. The product is an application that allows users to post about whatever they want and share them with their followers. Once a post is created, the post will be displayed on the timeline of all users following them. Next to the post, the user’s profile picture and user’s name are displayed. There is also a timestamp on each post that shows the date and time the post was created. Followers can identify favorite content that they can access to review and read later.

Requirements Elicitation

All of these efforts are not to create super and laborious documents, but to identify user needs more quickly and accurately. Before each different project, we define the requirements in customized formats according to the project type, the method used, stakeholders, and time constraints and as simple as possible. We associate the success of our projects with these factors and continue our effectiveness in the market with products that fully meet customer needs.

You may be interested

The Ultimate CDN (Content Delivery Network) Guide
CDN
4076 views
CDN
4076 views

The Ultimate CDN (Content Delivery Network) Guide

Nadia Benslimane - August 3, 2020

The Ultimate CDN Guide- Everything About Content Delivery Network You probably know what CDN (Content Delivery Network) stands for. You may also be aware of its full definition,…

The Essential CDN Glossary
CDN
9063 views
CDN
9063 views

The Essential CDN Glossary

Nadia Benslimane - November 21, 2019

Why Have We Decided To Create a CDN Glossary? Whether you are new to the world of CDN, or have been involved in it for years, there…

CDNs In The Service Of Online Education
CDN
63 views
CDN
63 views

CDNs In The Service Of Online Education

Tushar Sonal - June 15, 2021

The pandemic Covid19 has disrupted the education industry in significant ways. Educational institutions worldwide were among the first to shut down to minimize the spread of the…

Medianova is Taking The Lead as The Fastest CDN in the Middle East
CDN
73 views
CDN
73 views

Medianova is Taking The Lead as The Fastest CDN in the Middle East

Nadia Benslimane - June 9, 2021

Medianova CDN in The Middle East 6 years ago, we have published a blog article that predicts the growth of internet use and the CDN market in…

NodeJS Express for JWT Auth Example
Software Learning Center
141 views
Software Learning Center
141 views

NodeJS Express for JWT Auth Example

Tolga Karabulut - June 1, 2021

Hello everyone 👋 In this article, I will tell you how to use JSON Web Token (JWT) through the Express Framework. Previously, I explained JWT in general…

Most from this category