We deliver projects to our customers using one of two project delivery methodologies:
Below please find a more comprehensive description of the two methodologies that we use for project delivery.
Microsoft Dynamics Sure Step is a full customer lifecycle methodology for Microsoft Dynamics NAV, providing the Microsoft ecosystem with a comprehensive delivery model with guidance, project management discipline, alignment and field-driven best practices. Sure Step is designed to enable us to better serve our customers by helping reduce their Microsoft Dynamics total cost of ownership. The guidance, tools, templates and best practices provided in the methodology can help increase the consistency, timeframes, quality and success of the Microsoft Dynamics engagements.
Sure Step has six phases: Diagnostic, Analysis, Design, Development, Deployment and Operation. The Diagnostic phase encompasses Solution Envisioning, and provides guidance on product capabilities, including content on focus industries for a corresponding product. The Decision Accelerator Offering is an important part of the Diagnostic phase, designed to reduce the risks and concerns for our customers in their decision making process for a new/upgrade Dynamics NAV solution.
The Analysis, Design, Development, Deployment and Operation phases represent the five phases of solution delivery, with the Operation phase also encompassing post-delivery activities, covering the transition of the production solution to support. Sure Step provides five Implementation and Upgrade project types spanning these phases, for projects encompassing large, medium, and small end-to-end engagements.
Besides providing different project types to suit a given engagement, Sure Step also provides Optimization Offerings featuring proactive and post go-live services designed to assist the our customers and us with an additional level of due diligence in the solution delivery lifecycle.
Additionally, Sure Step provides Project Management and Organizational Change Management libraries, with content to support these key functions in a solution delivery engagement. Sure Step also includes an overview of roles typically involved in an engagement, both from our perspective and our customer's perspective.
The Analysis phase is initiated with the project kickoff meetings designed to provide executive stakeholders, the internal project team, and the customer project team with an overview of the project vision, scope, objectives, key performance indicators (KPIs), and benefits. In addition, the meetings cover the schedule, milestone, resources, roles and responsibilities, and deliverables.
Following the project kickoff, the project planning team finalizes the project charter and the project plan. This is approved by the customer and forms the basis of the entire project.
The goal of the Design phase is to define how the business requirements will be implemented. The phase includes configuration of the overall Microsoft Dynamics solution and the design of specific customizations needed to satisfy business requirements identified during the Analysis phase. The customizations can range from simple user interface or report modifications to moderate-to-complex functionality additions or modifications. Customizations may also include the integrations and interfaces and data migration elements required to support the requirements.
The goal of the Development phase is to build and test the system components defined and approved in the design specifications, including developing the customizations, integrations and interfaces, and data migration processes. The major deliverables include the complete system configuration, completion and freezing of code for customizations, integrations and interfaces, and data migration. Other key deliverables include finalization of the design specifications and the completion of Solution Testing. For an Enterprise project, this may also include Data Acceptance, Process and Integration Testing.
The Deployment phase is where all the efforts of the project team come together for a successful transition to the new Microsoft Dynamics NAV solution. Key activities in this phase include End User Training, User Acceptance Testing, and the actual cutover to the new or upgraded production environment. For Enterprise projects, Performance Testing is also completed.
The Operation phase defines the activities required to close the project, provide post-production support, and transition the solution and knowledge to the customer. Key objectives of this phase include providing post–go-live support, transitioning the solution to support, performing a final quality audit, and project closure.
We have adopted the Scrum framework that allows us to delivery projects using agile principles. The framework has many benefits to our customers over more traditional waterfall frameworks that expects predictability of the future. Our framework allows us to respond better to change, deliver software early and often and collaborate better with our customer during the project execution. The result is working software that fulfills the requirements of our customer.
The key benefits of APDF are:
Here we will validate high level goals, objectives and business needs. The deliverables are the Project Charter and a Validation of the Business case. It states the overall scope, objectives and participants in the project. It provides a preliminary delineation of roles and responsibilities, outlines the project objectives, identifies the main stakeholders, and defines the authority of the project manager. It serves as a reference of authority for the future of the project.
The initiation phase (part of the Agile Project Delivery Framework) is used to define the vision, product backlog, business value and priorities of the Accelerated Business Case (ABC). The outputs of the ABC are:
The initiation phase is essentially where the scope is defined and the project is planned. It’s important to note that an agile project approach only plans what is possible to plan at any time, thus much less planning is needed in comparison to waterfall projects frameworks.
The Planning phase that follows the Initiation phase is also called Iteration 0 Planning or Grooming session, where the product backlog is understood by the customer and the delivery team and prioritized by the Product Owner.
The requirements, design, build and test are completed iteratively based on the highest business value. The most important User Stories from the Product Backlog is entered into the Sprint Backlog that subsequently is broken into tasks that are executed during the Sprint. Once the Sprint is finished the product increment is delivered to the customer if applicable/possible.
Training, product tests and implementation will also be delivered through some of the Sprints once the product reaches a maturity level that allows this to happen. This all happen according to the training, test and release plans defined in the initial planning phase and groomed in subsequent Sprints.
Sprints are iterative and repeats every 2 weeks (typically). After each Sprint and before the next Sprint, the Team reflects and improves upon each iteration.
Development happens in the execution phases (Sprints) and involves a review of development requirements, final feature prioritization and resource assignment. Next, the development and test environments are set up and test plans started in the Initiation phase are finalized for each custom process.
Actual development activities can proceed concurrently, depending on the number of resources assigned. For example, feature customizations can be developed at the same time as integration and data migration processes. The development activity includes developer unit testing. It also includes Feature/Function testing performed by the consulting team. Ideally, this testing is done by someone other than the developer and follows the test plan that was previously defined.
Once the development cycle is complete for a specific customization, technical and End User documentation can be started, including any additional user training materials that will be needed. You will start Process testing using the test cases and test criteria that were defined in the Initiation phase. This testing validates feature customizations as well as integration and data migration processes.
The development and testing cycles continue until test results meet pre-defined test criteria and you are satisfied.
Deployment happens in the execution phases (Sprints) where all the efforts of the project team come together for a successful transition to the new solution.
Activities prepare the infrastructure and application environments, as well as the End User, for the final cutover of the system. This includes the review of timelines, identification of primary roles, assignment of specific tasks, and the preparation of necessary tools and checklists. Activities in this phase will produce a Go-Live Plan with specific checklists as well as a formal Test Plan and End User Training Plan; will see the live and test environments set up and configured with some subset of the customer's dataset loaded; fully test the system functionality and the infrastructure load capacity as well as training remaining End Users; and perform final system cutover, live data validation and transition to the next phase of the project.
During the Deployment Planning activities in this phase the implementation team reviews the Go Live activities, determines the resources needed and identifies the timeline. A Test Plan and End User Training Plan are also created at this time.
Setup and Configuration of the live environment as well as the test environment follows the Deployment Planning activities. System and User Acceptance Testing and Load Testing may produce results that require a return to activities in previous phases. Following the System Testing and Load Testing activities, a formal System Signoff will occur, acknowledging acceptance and approval to continue with the Go-Live activities.
The remaining End User training must take place as close to the final cutover date as possible so the information remains fresh in their minds.
Following the Final Data Migration, an acceptance walkthrough is done and data is validated against legacy system values. In order to launch the system, the consulting team will require approval. A meeting shall be arranged whereby the implementation team reviews the project deliverables and the critical acceptance criteria for the project are reviewed. As with all phases, documentation and approval of these steps may be required for regulatory compliance.
There will be times when systems will go live without having met all acceptance criteria. This may occur when there are external circumstances that affect the project. For example, the financial accounts may have to be run on the new system at the start of a calendar period. This means that the system must go live regardless of the acceptance criteria being met.
Once the project has been formally closed, the goal of the Operation phase is to transition the customer from the implementation project into on-going support following a successful go-live.
After the successful go-live cutover and sign-off in the Deployment phase, two concurrent activity tracks can start.
The first track includes various project closing activities related to final knowledge transfer from the project team to the customer resources. It is common to have various items still pending after go-live. It is important for you to review these pending items and agree on the final disposition. Project closing also includes delivery of final documentation, optional additional training for End Users, and final knowledge transfer related to on-going system maintenance the customer will take responsibility for.
The second track is the very important post-live support activity, which involves having consulting team members remain on the project for a period of time to make sure the new production environment is running smoothly and to ensure a smooth transition to on-going support. This is potentially a large activity that needs to be managed with a definite end date.
The purpose of the Optimization phase is to review the existing implementation and make adjustments to increase the effectiveness of the solution.
Optimization typically addresses the following areas:
The phase starts with analysis and planning activities that are designed to gather enough information to make a decision about whether or not changes are needed to the solution.
If the Optimization Analysis activities identify that the required modifications go beyond simple to moderate adjustments, it is recommended to define a complete implementation project starting with the Diagnostic phase. If the identified changes are more minor, the next step in the Optimization activity flow is to make a proposal to the customer for the changes that are being recommended.
The next set of activities relates to implementing the business process, configuration, or infrastructure changes that were proposed. These activities will be similar to other groups of activities throughout the rest of the methodology, depending on the actual circumstances.
After the changes are made and tested, and all outstanding issues have been resolved, the changes are moved into the live production environment in a go-live cutover procedure similar to the Deployment phase.
The upgrade phase allows you to improve your current Dynamics NAV solution by moving up to the new and improved version of the application. New features and functionalities will be introduced with the new version. Training will be provided to prepare the End Users on how to use the upgraded version of the solution.
The phase starts with analysis and planning activities that are designed to gather enough information to determine the size and scope of the upgrade effort.
If the Upgrade Analysis activities identify that the upgrade will include reassessment of business processes and/or the addition of new modules, it is recommended to define a complete implementation project starting with the Diagnostic phase. If it will be a basic upgrade of existing software applications, the next step is to make a proposal to the customer for the work required to perform the upgrade.
The next set of activities relates to performing the actual software upgrade, upgrading data, and training Key Users who will be involved with testing and possibly assisting with the training of other users. These activities will be similar to other groups of activities throughout the rest of the methodology, depending on the actual circumstances.
If system and user acceptance test results do not meet pre-defined criteria, it becomes necessary to review the cause of failure and make appropriate adjustments to either the software or the data that were upgraded. When all testing has been successfully completed, the next step is to conduct End User training, followed by the actual go-live cut-over, similar to the Deployment phase. The final step is customer acceptance and signoff on the upgraded system.
After successful go-live, the customer moves into operation mode with the upgraded environment, taking advantage of the new features and functionality that come with the upgraded version. At this point the customer signs off on the completion of the Upgrade phase.
Actual upgrade tasks to be performed in this phase may vary to some extent, depending on the needs to be upgraded. This may include specific tools that need to be run, the upgrade process and the preparation that needs to happen before the upgrade.