Initiation, Implementation, Transition & Production
Whether you're looking for support at a particular stage of your software project, or need a team to work through all stages to bring your concept to reality — we can help.
We apply an Agile software development methodology when producing software solutions. As the name implies, Agile software development aims to be responsive to changing requirements that naturally evolve over the project lifecycle through collaboration with you, the customer.
Starting here, we'll sit down with you to get up-to-speed with the domain in which you're operating, and identify a set of Preliminary Requirements, or initial set of requirements, for the solution you require. It may be possible to gather the initial set of requirements over the course of a single meeting, however, if multiple project stakeholders are involved, additional meetings may be required.
Upon gathering the Preliminary Requirements, we will be in a position to provide a list of options available to you, along with our recommendations. From here, an informed decision can be made on whether to proceed to the following Implementation stage.
We apply the Agile software development methodology when producing solutions. As the name implies, Agile software development aims to be responsive to changing requirements that naturally evolve over the project lifecycle through collaboration with you, the customer. A key aspect of Agile software development is the iterative completion of implementation “sprint” cycles that are typically time-boxed to a period of one to four weeks. Each sprint cycle begins with a planning meeting, during which the product backlog (i.e. prioritized list of Requirements, initially seeded with the Preliminary Requirements) is reviewed for features to be implemented during the current cycle. For all features to be implemented, all corresponding Design, Development and Testing is completed, as required.
All features that have been successfully implemented at the end of a sprint cycle are removed from the product backlog, and deployed to a staging environment for customer review. This process continues until all features within the product backlog have been implemented. Afterwards, the final build is deployed to a production environment through the following Transition stage.
Although we typically take the approach of minimal design documentation with thorough maintenance & support documentation, we realize that certain projects — especially those involving multiple stakeholders — require detailed Requirements Definition and/or Design Specifications documents. We will work with you to modify our project management process as is necessary to meet your particular project documentation and reporting requirements.
Through this stage, we prepare for and execute Deployment of the implemented solution to your production environment — whether it be on-premise or in the Cloud. If the implemented solution will replace one or more existing systems, we develop a plan for Migration that describes cutover and rollback processes to ensure a seamless transition from old to new systems.
A suitable Training program will be prepared in parallel with the Deployment and Migration tasks, along with the creation of all required user documentation. If requested, we can additionally provide training sessions to ensure users are comfortable using their new tool.
Upon deploying the solution to your production environment, we enter the final stage. As suggested by the Agile software development methodology, we strive to keep design documentation lean in order to focus the majority of our time building high-quality software in the most efficient way possible. That said, we produce comprehensive Maintenance & Support (M&S) documentation so that you can operate your software solution over the long-term, with confidence.
If you would prefer additional support throughout the Production stage, we are always available to enter into M&S agreements through which we can provide the level of support you require.