A process is a repeatable series of steps developed over time to ensure maximum quality, efficiency, and effectiveness. At Efficion, we have worked with a large number of clients of varying sizes in many industries and we've learned the key to an effective process is flexibility. There's nothing cookie cutter about delivering great web-based solutions, each solution must be carefully considered throughout its creation, our process gives us great flexibility while still ensuring that the questions are being asked and the right steps are being performed to ensure that our solution will meet your needs for the long haul.
Our process follows the 4 stage process that has become the standard in the software development industry. What isn't standard in the industry is the knowledge and experience to use the process as a guide while not getting bogged down in unnecessary minutiae.
Discovery- Define the problem or Need
The goal of this stage is to gain an understanding of the problem or need. It usually starts with the big picture and works toward clearly defining the problem or need. This phase involves a series of meetings with the key stakeholders in the project and results in the creation of a Vision Document that defines where the project is headed. Storyboarding, prototyping, and mockups may be used as part of this process as they can help the stakeholders get a more concrete sense of the problem or need.
Rough estimates of time and costs may be given at this point but can't be well defined until a proposed solution is better defined, which brings us to the next phase...
Design- Define the Solution
At this stage we begin to focus on the solution. How will we solve the problem, what technologies will be used, what users and business units will be involved. A Requirements Document that specifically lays out the solution will be created and refined. Decisions will be made about what requirements and features will be integrated into the initial solution and which can be postponed for future releases. Cost estimates will be tightened up.
Implementation- Produce and refine the Solution
Its at this stage where the solution will finally begin to take shape. The pieces that make up your solution, the code, graphic designs, and purchased software and modules, will be created, configured and integrated. Some modifications and refinements to the design should be expected as the design takes shape and ideas are developed. These changes will be tracked, discussed and may be implemented depending on cost and time impacts to the project.
This stage will also require testing by the developers, the project team, and then finally, a sampling of end users. A defect reporting and tracking system will be used to ensure nothing falls through the cracks.
Finally, we get to the turn the site live, but wait, there's more. We need to ensure that the people who are administering the site know what they need to do, are well trained on keeping the site current, and are able to handle problems that arise. Documentation that describes the solution should be finalized and given to the right people. Also, decisions will need to be made about future releases.