OTHER POSTS FROM THIS AUTHOR:
We thought we would share a real-life example of how an e-commerce product that was coming to its end got reinvented and launched in one month. But first, let’s discuss the obstacles that were jeopardizing the project and then we will explore all short-term, mid-term and long-term solutions that have been applied.
To start with, we were faced with a complex e-commerce app that required implementation of many features without any defined prioritisation for the implementation, nor a clear understanding of the priority of product requirements. Furthermore, the application has been developed in a legacy code and complex full-stack view rendering project, we also had no access to the code’s database.
Continuing, our client had no documents of user flow scenarios and all we were working with were screenshots of pages. They had no clear understanding of which component has been developed properly and which hasn’t been. This, along with the messy code that we were dealing with, made it impossible to estimate a release of a stable product with even the simplest functionality.
Before us, the company has been working with a freelancer who implemented most of the elements which were untestable and as a result, the features were not working as precisely enough for the product to be usable. Hence, their previous product was built in a way that made it impossible to develop into a mobile app later on, which is a must for any e-commerce organisation.
Client’s expectations vs reality
The client came to us with expectations that all the bugs will be fixed immediately as well as all the features will be finalised as soon as possible.
In reality, it was much more complex than that. The bugs were not only bugs, we encountered many not working features and functionalities in the app. Instead of design files, we had to go off screenshots of the pages, and most of the user flow scenarios were not complete, with many details not being considered in the flow. You can imagine that not having enough data makes the whole process that much more complicated as well.
Our team began with accumulating a clear understanding of the product, which client’s needs it fulfills and how, what is the main functionality and which features have been defined for it.
It was crucial to know which components have been developed already and what still needs to be worked on. Next, we started with defining the simplest functionality (MVP) as well as defining the features and components related to the MVP version. We prioritised the features and components that have to get checked, debugged and refactored.
To conclude, it is always important to make sure that your application or website is made well with a clean code that allows people who come later to easily edit it and build upon it. We always prioritise working with a company in a way that will make the project easily transferable to anyone that comes after us, which involves including as many information about the way the application has been built as possible to be accessible to the client.