Our methodology

Our methodology applies agile tools and Dynamics 365 Sure Step to manage product lifecycle, reduce risks, and improve efficiency in all D365 (AX) projects.

ask a question

How we work

Quality of code is fundamental

Be fully prepared before entering the development stage. Making changes during development can be beneficial, however, they often prolong the process and may cause the project plan to veer off-track. Go back to the design before changing development. A good project manager is essential to maintaining this consistency.

Implementation schema

Reverse-effort approach

ANEGIS works to a simple principle: good design is the key to success. Accordingly, we base our methodology on the ‘reverse-effort approach’, a model we have adopted working on projects from 50 to 27,000 users.

The correlation between effort and cost becomes important after the development phase. Experience has proven that more time and effort spent on preparation reduces the overall cost of development and allows for greater focus on making sure the system works as the user wants.

Reverse-effort approach

Project design process

I

Phase 1 - Project preparation

  • Project organization and tools setup: develop the Project Plan document.
  • Environment and standard system installation.
  • Preliminary Migration sheets delivery to the client.
II

Phase 2 - Analysis

  • Preliminary Migration to standard system: preparation and execution.
  • System interface training: introduce the client to the new system environment.
  • Decision Analysis and Resolution (DAR) document development: this document details the requirements and the planned system implementation, either broadly (Agile approach) or in detail (Waterfall approach).
  • System Presentation Scenario development: basis for demonstrating system progress to the client during the Implementation Phase.
III

Phase 3 - Project prototyping

  • Project scope verification: review the implementation scope for the Production Start and post-project system development.
  • Project Backlog agreement and Delivery Schedule development.
IV

Phase 4 - System implementation

  • System Prototype installation and configuration.
  • System Prototype expansion: implement agreed modifications, including interfaces.
  • Test Migration preparation and execution.
  • End-user and administrator training - part I.
  • Progress presentations: according to the Presentation Scenario.
  • Processes and modifications unit testing.
  • Project scope verification: review implementation scope for the Production Start and post-project system development.
V

Phase 5 - Acceptance testing

  • Prototype acceptance testing.
  • Production Start Plan document development.
  • Project scope verification: review implementation scope for the Production Start and post-project system development.
VI

Phase 6 - Production Start preparation

  • Prototype system stabilization: fix only the prototype system errors, which will serve as the reference for the production system.
  • Production system installation and configuration.
  • End-user and administrator training - part II.
  • Production Start plan execution - part I.
  • Production Migration preparation and execution - part I.
  • Project scope verification: review implementation scope for the Production Start and post-project system development.
VII

Phase 7 - Production Start

  • Production Start plan execution - part II.
  • Production Migration preparation and execution - part II.
  • Post-production start support.

Project team organization

The project teams, both client-side and ANEGIS, work according to Agile methodology.

Key roles in the project:

Business Architect

Client's representative responsible for ensuring the system meets the business requirements as specified in the contract.

Solution Architect

ANEGIS representative responsible for the appropriate implementation of requirements in the system, including the system's functional architecture, and maximizing the use of standard system functionality.

Technical Architect

ANEGIS representative responsible for the correct technical implementation of requirements in the system, including the technical architecture and the quality of delivered changes.

Software development process

I

Requirement definition

Client defines requirements. Business Architect assesses the business rationale of the requirements. The Project Manager reviews the contract, budgets, and schedules to determine feasibility and directs the requirements for ANEGIS analysis.

II

Requirement analysis

Solution Architect ensures requirements contain all necessary details for analysis and checks their feasibility within the system’s functional architecture. Technical Architect performs similar checks from a technical perspective. Project Manager directs the requirements to the Consultant for analysis and FDD (Functional Design Document) document preparation. The FDD document, including implementation proposals, is reviewed by both the Solution and Technical Architects before being presented to the client for approval. Once approved, the requirements are moved to the implementation phase.

III

Requirement implementation

Changes to system configuration and/or source code are made and tested by the developer, consultant, and client according to the test scenarios in the FDD document. Upon positive testing, Technical Architect reviews the code for quality and adherence to best practices (and, where necessary, impact on system performance). Upon successful review, requirements are transferred to the production system.

ALM/TFS

ANEGIS uses Visual Studio Application Lifecycle Management↗ (ALM) to manage the product lifecycle, so reducing risks and increasing efficiencies.

Visual Studio Team Foundation Server (TFS) allows us to apply proven practices in ALM: managing source code across teams; developing, building and testing the application; planning projects; tracking work; and reporting work progress. TFS provides version control, a build system, CMMI, Scrum, agile planning tools and metrics for managing software development projects. ANEGIS is one of the only companies implementing Microsoft Dynamics 365 to use TFS and have working build scripts.

Code management

Whether the software project is large or small, ANEGIS uses version control as early as possible in the lifecycle of a project. For small projects, it is used to improve personal productivity and resolve difficult problems. When working with a team or on complex projects, ANEGIS uses a shared, version-controlled file system to improve collaboration and transparency.

Team Foundation Version Control (TFVC) is a centralised version control system. Typically, team members have only one version of each file on their development machines. Historical data is maintained only on the server. In addition, branches are path-based and created on the server. ANEGIS works in a distributed environment, meaning that each developer has a personal virtual machine with a  Microsoft Dynamics Server environment installed.

The virtual machines are managed by Hyper-V Manager. The number of virtual machines on each developer’s PC is connected to the number of serviced customers, but should not exceed three or four at any one time. ANEGIS uses one of the two models delivered by TFVC: check-out/check-in in server workspaces. Before making changes, team members publicly check-out the files. Most operations require the developers to be connected to the server.

Build management

With Team Foundation Build, ANEGIS creates and manages build processes that automatically compile and test applications.

In addition to the Microsoft Dynamics model file, this process enables the creation both of a log file containing the whole build process description and a test result. ANEGIS uses the build system to support a strategy of continuous integration and to put even more rigorous quality checks in place to prevent bad quality code from ‘breaking the build’.

Build management

Work management

The central item of each implementation project in TFS is an artefact called ‘Team Project’. It contains a well-organised hierarchical structure of all dependent work items, describing all the information required to run the project.

Items like features, change requests and bugs provide a piece of work to be implemented in the system. After the verification process, requirements are produced and slotted into the final development tasks. Test cases cover the manual testing of each requirement.

Work management

Test management

ANEGIS uses Microsoft Test Manager, which is included in the Application Lifecycle Management tool, to help define and manage test plans. These test plans are stored on a Team Foundation Server and are closely integrated with its build.

During the testing process, bug work items may be created and stored for further analysis. When a bug is proven, a new requirement is created and a corresponding development task is specified. The steps of test management are as follows: plan, create, run, track results and react.

Test management

What can we do for you?

We'd love to hear about your project. Our team will get back to you within two working days.

Thank you for inquiry, we’ve passed it to our sales department, our representative will reach you back in his earliest convenience.
Oops! Something went wrong while submitting the form.