DocumentationViewpointArchitecture and operations

Architecture and operations

Architecture

Viewpoint leverages several Azure Platform as a Service (PaaS) components to deliver a scalable and secure solution. Please see the official Microsoft documentation for these services.

Azure PaaS services

  • CosmosDB - Document database
  • Storage - Contains services for storage of blobs/files, a basic queueing service and table service
  • Key Vault - Secrets storage
  • App Insights - Log and metrics storage
  • App Service - Runtime for applications

Frontend - REST api

architecture_frontend!

The above image shows the Viewpoint Cores services on a high level.

Web app

People use Viewpoint through a web app. It is a browser application with its own web API. The user signs in with their Doxis Doc Gen account. The web API checks the company and the user’s Viewpoint rights, and then calls the archive service (the REST API above) to search and read documents. Each company’s column setup and its change history are stored in a separate database owned by the web app. The web app only reads from the archive. It never uploads, changes or deletes documents.

See Search and view documents and Settings.

Backend - System & Maintenance services

architecture_backend!

The above image shows the Viewpoint System and Maintenance services on a high level.

Scalability and Elasticity

Viewpoint’s design is inherently scalable and elastic, drawing from the capabilities of its underlying Azure services. CosmosDB and App Service scale horizontally based on demand. Azure Storage also offers vast capacity, accommodating a wide range of scenarios. One of the key advantages is the ability to start small and scale progressively as your needs evolve.

Availability

Viewpoint is backed by enterprise-grade Azure PaaS services, with a standard Service Level Agreement (SLA) ensuring a high level of availability:

The availability of a Viewpoint service is the product of:

  • CosmosDB - 99,99%
  • Storage - 99,99%
  • App Service - 99,95%

Viewpoint guarantees a service availability of 99.93% as part of its standard SLA. In addition to the robust foundation provided by Azure services, Viewpoint benefits from automated deployments, high test coverage, and continuous maintenance.

Disaster/recovery and backups

As the system is built on top of PaaS services like CosmosDB and Storage, it is covered by the disaster/recovery of these services. This does not however cover data loss due to the “human factor” or other mishaps. In order to protect from data loss, the CosmosDB is backed up continously. Backup files are stored for 7 days and the retention period can be extended to 30 days. A CosmosDB database can be restored in hours, depending on the size of the backup.

Security

All data within Viewpoint is encrypted using industry-leading standards. Each document is encrypted with a unique key, which in turn is encrypted as a further protection. Additionally, the underlying database and storage account are encrypted natively by the Azure PaaS services.