11 February 2021

How do “we” at To-Increase manage our software quality and performance effectively?

Manage software quality effectively

To-Increase software solutions are developed using Microsoft products as their foundation — be it an ERP application, such as D365 or a development platform, such as Azure or Power Platform. These products are selected, not just based on the project requirements, but also on their documented performance metrics. Besides the processing time, we at To-Increase also value various critical factors, such as data quality, error handling, validation, and security.

As we develop business logic to extend the capability of various Microsoft tools, we do realize that the processes and the approach that we follow to manage the software quality and performance may be of deep interest to you. So, at a high level, let us look at the strategy used by us at To-Increase to both measure the performance and architect solutions that maximize performance in coordination with additional business goals.


The approach that To-Increase follows
to ensure the quality and performance

Software development procedures that are in place:

  • During the development phase, To-Increase follows the best practices that are based on the extension framework that is provided by Microsoft.
  • To-Increase also follows test pyramid (SysTest framework, RSAT, & ATL tooling) for quality assurance.
  • To-Increase solutions are certified by Microsoft and listed on AppSource, and thereby subject to rigorous quality assurance and vetting procedures, following Microsoft standards and practices.

Performance tuning by Microsoft:

For every installation of a D365 environment, we at To-Increase can leverage the support of the Microsoft Fast track team to help ensure that the customer environments are provisioned fit for purpose and those as “following the best practices.”

Microsoft configures production tenants sized to handle the transaction volumes and user concurrency, and is responsible for: 

  • Proper allocation of resources of production tenants, based on the customer’s profiling information in the LCS Subscription Estimator.
  • Continually monitoring and diagnosing service availability of production tenants.
  • Analyzing and troubleshooting system performance issues with Finance and Operations and Customer Engagement.

To ensure that an implementation is configured for high performance, Customers must: 

  • Provide accurate usage information for the Finance and Supply Chain Management and Customer Engagement implementation through the LCS Subscription Estimator.
  • Build and test extensions for performance and scale. The Azure DevOps Test Plans Load Testing Service is a feature that allows you to test performance and scalability of applications.
  • Test data configurations appropriately for performance.

Performance tuning for integration scenarios

There are several factors that impact the performance of an integration scenario. Performance is highly dependent on:

  • The applications that you are integrating: Dynamics 365 Finance and Operations, Dynamics CE, or other applications by using the Microsoft’s Dataverse as a standard integration tool.
  • The entities that are being used — the entities' shape, validation, and business logic (standard and customer specific software modifications).

The Data Integrator takes the data from the source application and pushes it into the target application. The main performance considerations are on how source and target applications scale with the concerned entities. It leverages the best available technologies to pull/push data in a performant manner.

Dynamics 365 Finance and Operations uses the data management framework, which provides a way to pull/push data in the most performant fashion. The data management framework is used to manage data entities and data entity packages in Microsoft Dynamics 365 Finance and Operations.

Dynamics 365 for Dataverse uses OData APIs, along with parallelism, to maximize the performance.

Performance CDS

Our development teams have positive experiences with the Dataverse integration solution by using dual write. This experience is based on the real customer cases, where the latest version of Dataverse is part of the solution.

Dual-write provides tightly-coupled, near-real-time, and bidirectional integration between Finance and Operations apps and model-driven apps in Dynamics 365. This integration makes Microsoft Dynamics 365 the one-stop shop for all your business solutions.

The dual-write infrastructure follows the no-code/low-code principle. Minimal engineering effort is required to extend the standard table-to-table maps and to include custom maps. Dual write supports both online mode and offline mode. Microsoft is the only company that offers support for online and offline modes.

Both To-Increase and Microsoft have responsibilities to avoid performance or technical issues with the customers, which has been briefly described below for the sake of overview.

Application Insights monitoring

In addition to these procedures in place, Application Insights is aimed at helping understand how an app is performing and how it is being used. It can monitor:

Request rates, response times, and failure rates
  • Find out which pages are the most popular ones, at what times of the day, and where your users are. See which pages perform the best. If your response times and failure rates go high when there are more requests, then perhaps there is a resourcing problem.
Dependency rates, response times, and failure rates
  • Find out whether external services are slowing you down or not.
Exceptions
  • Analyse the aggregated statistics or pick specific instances, and drill into the stack trace and related requests. Both server and browser exceptions should be reported.
Page views and load performance
  • Reported by the users' browsers
AJAX calls
  • From web pages rates, response times, and failure rates.
User and session counts  
Performance counters 
  • From Windows or Linux server machines, such as CPU, memory, and network usage.
Host diagnostics 
  • From Docker or Azure
Diagnostic trace logs 
  • From the app so that you can correlate trace events with the requests.
Custom events and metrics 
  • Custom-written in the client or server code, to track business events, such as items sold or specific events.

Telemetry

Application Insights can be viewed directly using the Application Insights Dashboards

Application Insights Dashboards

In addition, Application Insights can be viewed using PowerBI Dashboards

PowerBI Dashboards

Advanced support plan between Microsoft and To-Increase

If additional support from Microsoft is required, then To-Increase can leverage the advanced support plan, which we have with Microsoft to support our customers in the most efficient way. This plan can be used for cloud-focused break/fix support across Azure, Office365, and Dynamics 365, including Dataverse.

We can raise tickets on behalf of your customers, receive prioritized support for your critical cloud incidents, and benefit from less than 1-hour response times for your most pressing cases, including the performance issues. We have a direct line into Microsoft with a pooled account manager to escalate, if necessary.

How do we address specific guaranteed response times?

As for specific guaranteed response times attached to specific system use-cases, we often experience that this is an ask from customers to have it stipulated. And yes, we do understand the reasons too, primarily considering the importance of user experience. However, because of the multitude of non-controllable impacting factors, this is not something To-Increase nor the industry all up is able to provide, because of the inseparable dependencies described in the present document. What we can guarantee is that our structured and quality-assuring schemes and protocols are always used in combination with Microsoft’s best practices and tooling, as below:

  • If a performance concern is reported by one of our customers, we will take a relevant action to identify the root cause for resolution.
  • As a baseline, To-Increase leverages metrics based on the expected customer usage and environments. In the case of metrics taken on an integration, expected results must factor in the environment tiers or performance, volume and the time of day of transactions (to consider the user traffic), anticipated processing window, transactional validation, and error handling. Considering the efficiency and security, all architecture and development around integrations is done in compliance with the Microsoft development best practices. During the realization of the technical design of this integration, the requirements will be specified in more detail. Design prototypes will be used with the performance metrics to ensure that the designs will support targeted processing times.

    For instance, in order to proactively mitigate performance topics regarding a system integration, To-Increase will capture the target duration on executing a specific process in Dynamics 365 F&O in seconds. To-Increase will then capture the same process in Dynamics 365 Sales and project a margin as a percentage of processing time on the process duration.

How we at To-Increase can help you

Founded in 2005, To-Increase provides business software solutions to over 2200 mid-market and enterprise customers in 45 countries. To-Increase is the only three-time Microsoft Dynamics Global Outstanding ISV of the Year award winner and offers an impressive portfolio of industry, business, and technical productivity solutions for Microsoft Dynamics.

Our asset-centric solutions include engineering, manufacturing, servicing, and renting or leasing assets. We also deliver customer-centric solutions that help companies align technology with strategic goals, operate more efficiently, and provide the best possible experience to their customers. Across devices, business locations, and work environments, our offerings help companies master their unique requirements with standardized technology that is easy and economical to deploy and maintain.

We at To-Increase can help you explore the potential for your organization to leverage our software solutions that can help you gain competitive advantage.

Cor Tiemens
Cor Tiemens,
Cor Tiemens,
Rental Industry Specialist

Also interesting