Viso Suite
Evaluation Guide

Version and Source Control

Table of Contents

Viso Suite offers built-in version and source control that enable teams to manage changes to applications, modules, AI models, and more. Version control is one of a set of capabilities that drive higher software delivery and organizational performance.

Version control systems provide logical means to organize assets and coordinate their creation, controlled access, updating, and deletion across teams and organizations. Therefore, version control is a key aspect of automation and continuous integration.

Why Is Version Control Important?

In order to improve computer vision delivery, teams need to use version control for applications, modules, AI models, application configuration information, and the libraries and packages they depend upon (dependencies). Version control offers direct benefits for disaster recovery and auditability.

All versions of applications and modules are stored automatically in a central repository every time they are published. The workspace offers an integrated version control system that enables users to take a snapshot of the application and its modules, tag it with a version, and then use it for deploying throughout the multiple cloud or edge environments.

In particular, version control of Viso Suite helps you to meet these critical requirements:

  • Reproducibility: Teams must be able to manage the application lifecycle in a fully automated way and know that new deployments based on the same configuration are identical. This requires that assets such as AI models or configurations are managed in a shared, accessible system.
  • Traceability: Teams need to be able to select any environment or endpoint and determine quickly and precisely the versions of every dependency used for that deployment.

Advantages of Enterprise-grade Version Control in Viso Suite

The managed version control of Viso provides several benefits:

  • Disaster recovery: When something goes wrong with an environment, for example, a hardware failure of an endpoint device, Viso Suite enables teams to reproduce that environment quickly in order to restore service. This also requires intelligent configuration management to fully restore local endpoint configurations.
  • Scalability: When teams need to add more capacity to the systems, the ability to create reproductions of existing endpoints is essential. Viso enables the horizontal scaling of modern cloud-edge-based distributed systems.
  • Auditability: To ensure the integrity of the delivery process, teams must be able to show the path backward from every deployment to the elements it came from, including their version.
  • Higher quality: The application delivery process is often subject to lengthy delays waiting for development, testing, and production environments to be prepared. The automation of this preparation through version control provides feedback on the impact of changes significantly faster, enabling teams to increase software quality.
  • Response to defects: When teams discover a critical defect or an issue in some component of the computer vision system, they need to release a new version of the application as quickly as possible. Viso Suite stores all configurations in version control, allowing teams to roll back to a previously verified working state quickly and reliably.

With Viso Suite, it is possible to see all versions of assets that were published, by whom, and when. This makes it not only easy to keep track of changes but also safe to roll back to a previous version of the application.

What Computer Vision Tasks Can Viso Suite Be Used For?

Most computer vision systems are based on a combination of different techniques. Viso Suite provides extensive no-code and low-code capabilities to combine image recognition methods, traditional image processing, and deep neural networks.