Getting a Project Back on Track
3Space, a growing engineering and 3D printing firm, was more than a year into a project to provide an online ordering system for their clients. While their initial vendor had promised a quick turnaround and low price, the project had gotten out of control with large cost overruns, poor quality, and delay after delay after delay. Fed up, 3Space took back control from the vendor and was able to launch the software themselves although it still had some issues. At this point, they connected with us, and we were able to assess the software, give clear expectations on what needed to be done to fix remaining defects, make recommendations for changes to help with maintainability and scalability, and complete remaining items from the original project scope.
3Space is a growing company in the 3D space providing design, prototyping, and production of parts using 3D printing technology. To help further their growth they wanted to provide an online ordering system to make it easier for customers to place orders.
To complete the new software, they enlisted a 3rd party vendor that promised low rates via offshoring, while promising clear communication via staff here in the United States and more specifically Louisville where they were based. Unfortunately, while their rates were low, the total number of hours spent was more than three times the original estimate - which was already very high for the project scope, the app was not finished, AND it had an abundance of defects. In addition to these issues, the project timeline was slated for six months and over a year had passed.
Moving on from this group after intense frustration, 3Space was able to fix enough issues themselves to get the software in a runnable state and launch. While they now had an online ordering system, the original scope had not been completed and the quality was not up to what they had originally hoped.
Turning to igNew, they had a list of things they wanted to get done with items ranging from usability improvements, bug fixes, and feature additions. After doing an initial assessment of the software we were able to quickly stabilize the application and complete the items from their punch list.
Discovery & Design
Knowing that 3Space had a number of issues with the vendor who had built the software to begin with, our first step was to look at the code for ourselves and see if there were large concerns with the stability, maintainability, scalability, and performance.
One thing we quickly discovered was the structure of how the software was built and deployed was largely inefficient and error prone in addition to making continued development, maintenance, and bug fixing difficult.
Second, we noticed there was no form of automated deployment which meant quick deploys weren’t possible and 3Space was spending extra $$ for excessive manual work every time they updated the software.
Third we uncovered inefficiently coded pages (slow performing) that would cause usability concerns in the short term, and scalability issues in the long term.
There were other concerns related to consistency of coding and following best practices for architecture setup, but these were not of the critical nature and some could be corrected over time.
Looking at everything together, it did not make sense to re-write the code base all together but rather outline a plan for fixing the major issues right away and then completing the items from the punch list.
Before working on the punch list items, we first corrected the code structure and formed it in a way that would from that point forward allow much easier debugging, development of new features, and maintenance. This would give 3Space a return on their investment even with just fixing the current items on their punch list.
Next, we worked on the high priority bug fixes and created a test environment where 3Space could review our work before anything went out to production. In the meantime, we set up automated deployments that would allow us to push new code updates to the website in minutes instead of a couple hours.
Once 3Space had finished reviewing the bug fixes, we pushed these live and continued working on the punch list items in 4 separate phases with the splitting up of phases determined by what made the most business sense for 3Space.
In addition to completing the items on the punch list, we notified 3Space of anything new we uncovered that we thought could be done to improve the software as well as any issues we thought brought risk to its stability.
Since igNew was able to take over the development of 3Space’s online ordering system, the software has stabilized, all of the original project scope has been completed, new features have been added, and 3Space has been given peace of mind knowing they have a trusted partner in the software development space they can count on.
Executive Officer and Partner, 3Space