'Well begun is half done' goes a proverb. This makes much sense in the software world where mistakes get more expensive and time-consuming to fix as we progress along the software development lifecycle. When we are cognizant of the business needs and clear on the needs of the customer, the finished software product solves the problem that it set out to resolve.
Poorly managed requirement discovery and elucidation ends up in Scrum teams providing solutions for problems that weren’t even needed in the first place. This could lead to distrust among stakeholders as well as within Scrum teams as there is not much foresight about what needs to be built.
In this context, requirements management plays a vital part in ensuring stakeholder needs are well taken care of. In order to achieve this, we need to ensure that the requirement analysis phase is well planned and exhaustive. There are many requirement analysis techniques like data flow diagrams, use cases definition, gap analysis, customer journey maps, etc, that aid us in defining requirements while generating the utmost value for customers. It’s also important that we create meaningful requirements that are feasible, clear and unambiguous.
When proper thought is put into picking the right requirement analysis techniques for a particular project, it results in minimal rework efforts, and thus, satisfied stakeholders.
Let’s understand the applications of requirement analysis techniques in real-time projects. Here we showcase an example of how we took ownership of the service revamp of a retail client. We took over the responsibility of product ownership and worked closely with our customer to ensure that the shopping experience for their end-clients was satisfactory and better than before.
Case Study: Fashion e-commerce portal revamp
The customer is a US-based online retailer of clothes, accessories and cosmetics. Their website caters to young individuals who are into fast fashion brands, and their USP is the competitive rates and discounts they provide over physical stores. Based on various internal studies on behavioral aspects and analytics, they wanted a revamp of their website to provide a better user experience for customers, with some additional features. The end goal was better customer retention.
This required a detailed study of existing businesses, and using a combination of requirement analysis techniques to figure out the gaps and eventually provide a better product offering to the end customer.
Existing User Definition
Given below is a broad categorization of the user roles within the system.
The Admin user here manages access control for other user functions within the organization and was also in charge of the cataloging of items. Dealers were vendors who would receive an order and process it further. Shipping and delivery was managed through the delivery partner channel.
As the other units’ function was to ensure that the customer had a pleasant shopping experience, it was decided that we should zoom in on customer pain points and, based on those, define and alter the other functions.
Customer Journey Map
Creating customer journey maps enabled us to put ourselves in the shoes of the customer who would be making purchases on the websites, elaborate on the customer experience across various touchpoints within the site, identify pain points and draw conclusions on how we can provide better services for them.
The diagram below indicates the customer journey for the shopping site, the respective touchpoints, pain points and areas of improvement.
This helped us compare and analyze the current as-is state of the site and enabled us to zero in on the steps necessary to achieve the desired objective.
Based on the customer journey mapping and associated pain points identified, we zeroed in on the following areas from the customer POV which would require redefinition.
- Option to mark a product as favorite/wishlist items from the catalog
- More choices in terms of sorting products—for example, sorting by brand, popularity, etc
- Better size charts, imagery and availability information on the product details page
- Option to save multiple addresses
- Instant notifications via email and text from order confirmation until order closure
- Visual options (timeline) for order fulfilment cycle
- Defined loyalty points aspect and how users can encash them during their purchases
As a result of the above, we were also able to figure out issues and improvements within the other user functions and how enabling them with more information and additional features could ultimately help the customer have a better shopping experience.
- Implement email/text notifications across each status transition
- Implement ‘Inventory management’ workflow within the system to ensure product availability is conveyed to end customers
- Product information revamp to enable end customers to make relevant and informed choices during the purchase
- Establish feedback provision options
- Define and implement loyalty points for each purchase and encashment of the points in subsequent purchases
Based on the above pointers, we began a focused and detailed requirements discovery phase with our customer to elaborate and document the changes required in the existing product. Impact analysis was done in parallel in order to minimize any residual issues that might arise when we began development. This ensured that we were on the right path before even commencing work.
These focus group discussions and requirement discovery workshops enabled us to think from the perspective of the end users and look at the website from their perspective. This exercise unearthed a lot of improvements and suggestions that might otherwise have been overseen.
Many of our ideas and suggestions with respect to the product were accepted and we were able to deliver a product that would cater to the right audience effectively. This enabled us to showcase our product ownership capabilities in addition to being quality assurance providers.