|
Furniture Manufacturer: Supply-Chain Software
Objective
A major furniture manufacturer wanted to provide its
distributors with a software package that would create orders, maintain
inventory, receive shipments, and create reports for both sales and accounting.
The software package also needed to enable users to order custom pieces, which
would maintain the company’s primary competitive advantage. The project had a
budget of $250,000 and a timeline of one year. Two years and $600,000 later,
there were two failed rollouts, and the software was still seen as unusable and
unreliable by the end users. The furniture manufacturer had lost the focus on
its core business by unintentionally becoming a software company, and the
executives wanted to get back to what the company did best--manufacturing
furniture.
Challenge
Understanding the Software Development Lifecycle
In this case, the existing processes for developing the software solution were
not effective. Specifically, three best practices of software development were
not in place. For one, Use Cases, which comprehensively define the requirements
of the software system, were not being used to the fullest. For two, iterative
development cycles were not having the desired effect. Finally, there was very
little version control which, when diligently applied, tracks what is changed
in each version of the software. Since these three best practices were not
followed, versions of the software were being sent out before they were tested
and features were being added without an understanding of the business needs.
The project manager was reacting to problems instead of planning a successful
project. ITAdvantage needed to bring a better understanding of the software
development cycle to the development team to get the project on target.
Solution
Controlling the Software Process.
After the challenges were identified, the engineers from ITAdvantage set to
work on improving the software processes. First, a new focus was applied to the
Use Cases to ensure that legitimate business needs were being satisfied in the
software’s feature set--any features that did not satisfy these needs were
dropped. Second, much better measures were implemented to ‘‘beef up‘‘ the
existing version control system. Of particular importance, two fundamental
elements of version control were improved: 1) change and configuration
management, and 2) testing and release procedures.
Improving the change and configuration management was critical. By controlling
which changes were in which release, ITAdvantage was able to systematically
identify and eliminate potential software bugs in an efficient manner. Too
often in the development cycle, teams are choked with program bugs, and
consequently lose their ability to quickly correct errors. ITAdvantage avoided
this pitfall by implementing a systematic change and configuration management
process.
By improving the testing and release procedures, ITAdvantage was able to
control the stability of each iteration of the software, thus improving the
quality of each iteration. This was done by creating test scripts and revising
the existing release plan. The test scripts allowed the first round of tests to
be conducted in-house, rather than in the field as had been the case. And the
release plan was revised by cutting the number of iterations from one per week
to two per month. This allowed more time for qualitative and quantitative
improvements in each iteration.
The positive results of these implementations by ITAdvantage were threefold.
First, with each successive iteration, the product became more productive and
reliable. Second, the support for the application was reduced by 75%. Third,
the client was able to dedicate more of its resources to its core business of
manufacturing furniture. This third benefit was expanded when the client
contracted with ITAdvantage for ongoing maintenance of the software. Now,
instead of paying for variable and potentially very costly software
maintenance, this furniture manufacturer has a small, fixed monthly maintenance
cost. Once ITAdvantage was involved, this project was put on time, on target
and on budget.
|