Prior to this project, our distribution center was using several different applications, processes, and hardware to fulfill orders. Having multiple different systems in place was technically complicated of course, and made training new team members quite a challenge.
The goal of this project was to standardize all systems, processes, and hardware used by our distribution center to fulfill B2C (business-to-customer) orders. The distribution center also fulfills B2B (business-to-business) orders, which were outside of the scope of this project.
At the time of this project, my role was Product Owner for our Warehouse Management System (WMS), which is a third-party company. In addition to the WMS developers, this project also involved an internal development team. In my role, I was responsible for managing the project, research, requirements, process design, prioritization of development backlogs, and QA testing.
Between all parties, there were approximately 220 man-hours of effort on this project–from discovery through production deployment.
Research and Design
The project started out by gathering information about existing systems and processes. There was little documentation on this, so observation and interviews were conducted with users and developers. Once I had enough information, I created a current-state process map for the end-user flow:
I also mapped out interactions between our various systems within the outbound process:
With a solid understanding of the existing systems and processes, the core members of our project team worked to design an achievable solution. Early on in the discussions, it became apparent that we were not going to achieve a completely singular process for all types of orders within the timeframe of the project. With numerous legacy systems in place, we needed to prioritize.
Eventually, we worked together to settle on an achievable scope and draft of the design. I wrote requirements and designed future-state process maps for user and system flows.
Lengthy linear processes can be a bit daunting, so I also created a future-state system architecture diagram–to illustrate how our internal and external applications would function together.
Challenges and Lessons Learned
Trying to replace and simplify legacy processes is never easy, so we faced a number of challenges.
Again, there was little to no documentation of existing systems and processes. This took a good chunk of time at the beginning of the project to figure out. Having good internal documentation within a company can save time and help create a shared understanding. The information gathered on this project is now included in an internal documentation library.
We also had to narrow the scope of the project into a smaller, more manageable pieces. Both to simplify things from a technology perspective, and also to make it achievable in a reasonable amount of time. Breaking up large projects into smaller pieces is almost always a good practice with multiple benefits.
Another challenge was managing the work of two separate development teams. Keeping those teams aligned on priorities and solution design was difficult. This project took the better part of a year to complete, so of course there were distractions and competing priorities for these teams.
The COVID-19 pandemic also struck hard during the middle of this project, which caused problems with the availability of team members.
Results and Value Delivered
While scope had to be narrowed and the solution delivered was not completely optimal, we were still able to achieve the core of our original objective. This project has resulted in savings in labor cost, simplified training, and increased the distribution center’s flexibility for future growth.