The implementation stage of any project is a true display of the defining moments that make a project a success or a failure. The implementation stage is defined as "the system or system modifications being installed and made operational in a production environment. The phase is initiated after the system has been tested and accepted by the user. This phase continues until the system is operating in production in accordance with the defined user requirements" (DOJ, 1). While all of the planning that takes place in preparation of the implementation phase is critical, I am of the opinion that the implementation itself is equally as important.
When working through the process of defining and selecting my organization's new enterprise business system, the implementation stage became the most anticipated and important part of the SDLC for the organization. A tremendous effort had been exuded in planning and preparation for the application development and deployment. The start of the implementation phase was an indication that progress was being made and the system was well underway.
For my organization, the implementation phase kicked-off with the coding of the application. Because we were using a retail system with a few customizations, the coding stage was not nearly as long as it might be with other business systems. With regard to coding, two things had to occur. The first was to customize some of the fields and interfaces in the retail system. The second was to develop the web-based front-end that would serve as the primary interface to our application. Both of these coding tasks were completed in a reasonable amount of time.
After the initial coding was complete, the customized application and web interface were presented to my organization for approval. For the most part, the presentation was successful. We had decided to modify a few of form fields and change the color scheme of the web interface. The consultant made the necessary code changes and presented the modified versions for our approval. The changes were precisely what we expected and we accepted the final versions. After receiving our approval, the consultants finalized the code and prepared to move into the testing phase.
In testing, the objective is "the bringing together of all the programs that a system comprises for testing purposes" (SDLC Glossary, 1). The testing phase for our application was broken into two halves. The first half was to test the entire application from a programming perspective to ensure as many bugs as possible were detected. This part of the testing process was completed by the consulting organization. Upon completion of their testing, a document was given to my organization that detailed all of the problems encountered and what actions would be taken to remedy the issues. After acknowledging the issues, the consultants took some additional time to fix the known problems and repeat their half of the testing phase. Again, we received a report detailing that no new issues were discovered and that all prior known bugs had been resolved. At this point, it was time to begin my organization's half of the testing phase.
We selected six of our power users to test the application in their daily work environments. In many instances, this phase of testing was similar to a parallel system deployment. The employees were asked to perform their job functions using both the old and the new systems. We understood that there may be loss or corruption of data in the new system, so it was necessary to have the users make use of the old system as well. We also realized that this testing approach was time consuming and would case a significant loss in productivity. As such, it was decided to limit our portion of the testing phase to ten business days. During those ten days, each of the users was asked to maintain a log of any problems, concerns, or issues they had encountered while using the new business system.