System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain...

20
Documentation System Overview Version: 1.04 Date: 12/10/2016 Trimble Quadri

Transcript of System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain...

Page 1: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Documentation

System Overview

Version: 1.04 Date: 12/10/2016

Trimble Quadri

Page 2: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 2

Table of Contents

1. TRIMBLE QUADRI DESIGN GOALS ................................................................................................ 4

2. TRIMBLE QUADRI INFORMATION MODEL ................................................................................. 5

3. TRIMBLE QUADRI SYSTEM OVERVIEW ....................................................................................... 7

4. TRIMBLE QUADRI MAIN ACCESS POINTS / ACCESS TYPES ................................................... 8

4.1 TRIMBLE QUADRI TECHNICAL MANAGEMENT ................................................................................... 9 4.2 TRIMBLE QUADRI MODEL MANAGER ................................................................................................ 9 4.3 DCM-CLIENT .................................................................................................................................. 10

5. TRIMBLE QUADRI SYSTEM COMPONENTS ............................................................................... 10

5.1 TRIMBLE QUADRI DATABASE STRUCTURE ....................................................................................... 10 5.2 FILE DIRECTORY STRUCTURE ........................................................................................................... 11

5.2.1 Server files .................................................................................................................................. 12 5.2.2 Configuration files ...................................................................................................................... 12 5.2.3 Log files ....................................................................................................................................... 13 5.2.4 Database files.............................................................................................................................. 13 5.2.5 Data backup files ........................................................................................................................ 13 5.2.6 Temporary files ........................................................................................................................... 13

6. SYSTEM SECURITY ............................................................................................................................ 13

6.1 COMMUNICATION SECURITY ............................................................................................................ 13 6.2 USER ACCOUNTS AUTHORIZATION AND AUTHENTICATION ............................................................. 13

6.2.1 User Accounts ............................................................................................................................. 15 6.2.1.1 Embedded User Accounts ................................................................................................................. 15 6.2.1.2 Integrated with Active Directory User Accounts .............................................................................. 15

6.2.2 Authorization from DCM-Clients ................................................................................................ 16 6.2.3 Authorization Trimble Quadri Model Manager .......................................................................... 16 6.2.4 Authentication from DCM-Clients .............................................................................................. 16 6.2.5 Authentication from Trimble Quadri Model Manager ................................................................ 16

6.3 DATA BACK-UP AND RESTORATION ................................................................................................. 17 6.3.1 Integrated data back-up .............................................................................................................. 17 6.3.2 Standard data back-up ................................................................................................................ 17

6.4 RESTORATION .................................................................................................................................. 18 6.4.1 Human error recovery from online data back-up files ................................................................ 19 6.4.2 Human error recovery from offline data back-up files ............................................................... 20

Page 3: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 3

Documentation History

Date Document

Version

Description of change

17/04/2013 1.00 For Novapoint 19.10 release.

06/06/2013 1.01 Updated info about default file location for the installation

13/11/2013 1.02 Extended chapter 6 - Data Back-up and Restoration

27/01/2015 1.03 Updated to reflect that only IIS is used. ActiveDirectory as possible

source for user accounts.

12/10/16 1.04 Updated to reflect that this is now Trimble product

Page 4: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 4

1. Trimble Quadri Design Goals

The paradigm behind Trimble Quadri is built around the concept of a server which provides access

to models through objects and tasks. The server also retains a hierarchical overview of objects with

parent-child relationships. The main design goals can be summarized thus:

Allow users to collaborate over distance and disciplines

Provide access to project data at object granularity

Provide security with regard to user authentication and model access

Provide a flexible framework for representing business processes

Allow business rules to be automatically embedded within the project

The combination of these features allow for complete control of the model with respect to

individual users, objects and projects and provide the foundation for true collaboration.

Another important foundation of Trimble Quadri is the ability to use the model throughout the

infrastructure lifecycle, i.e. from Design, through Construction to Maintenance.

Figure 1: The Trimble Quadri as enabler for project phase handover

Trimble Quadri

Design

ConstructMaintain

Page 5: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 5

2. Trimble Quadri Information Model

-CRS[1]-features[0..*]

Feature Model

-usecase = DESIGN

DesignProject

-Name[1]-GUID[1]

QuadriModel

1 111..*

-what[1]-where[1]-when[1]

Query

1

1-name-allowedusers-usecase

TaskDefinition

-usecase = FILE

FileExport

-usecase = OTHER

Any Process

-usecase = VIEW

ViewFeatures

NetworkModel

1

0..*

Figure 2: Trimble Quadri Information Model

The content of one Trimble Quadri Model is

Network model

Feature model (aka Objects)

Task model

All manipulating of the feature and the network model is done through a task. The list of allowed

users on one task gives end users access to the part of the model specified by the query associated

to one task.

One kind of task is DesignProject another is ViewFeatures, which due to the value of the usecase

parameter (set to VIEW) can only be used to view the content of the information model.

Page 6: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 6

-CRS

Feature Model

-ProjectName[1]-ProjectMembers[1..*]

DesignProject

-WorksetName[1]-ownedByUser[1]

Workset

1

1..*

-tasks[0..*]

DesignTasks

1

*

-CRS[1]

FeatureWorkset

1

*

«uses»

-tasks[0..*]

DesignTasks

1*

-Name[1]-GUID[1]

QuadriModel

1

1

-what[1]-where[1]-when[1]

ProjectDefinition

-what[1]-where[1]-when[1]

WorksetDefinition

1

*

1

*

1

0..*

Figure 3: Trimble Quadri Information Model

A ProjectMember of one DesignProject performs model based design through the use of one

Workset. The Workset belongs to the ProjectMember identified by OwnedByUser.

The Designtasks are performed on a FeatureWorkset, which is a subset of the complete Trimble

Quadri FeatureModel. The performed DesignTask becomes a sub task of the DesignProjects

Designtasks.

Page 7: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 7

3. Trimble Quadri System Overview

Trimble Quadri is based on Web architecture and all clients connect to the system through a Web

server.

Trimble Quadri consists of multiple software servers, but all the servers are installed on the same

computer running Microsoft Windows Server. Currently supported versions of Microsoft Windows

Server are 2008 R2 and 2012 R2.

The computer used to host Trimble Quadri may be a physical or virtual machine. However, only

one Trimble Quadri can be installed on one computer.

In addition to the commercial webserver needed to connect to the system, a Trimble Quadri

implementation consists of a Trimble Quadri Application Server and a Trimble Quadri Database

Server.

Page 8: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 8

Internet

Intranet

Trimble Quadri Site

Web server

Client

Trimble Quadri

Database server

Application server

HTTP

Server

Workstation

Figure 4: Trimble Quadri Implementation

4. Trimble Quadri Main Access Points / Access Types

There are three main types of access to a Trimble Quadri site.

1. Perform technical tasks (start/stop servers, configuring properties, viewing logs etc.) related

to the server component.

2. Manage the models provided.

Page 9: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 9

3. Perform design tasks that create, delete and modify the objects and tasks that one provided

model instance consists of.

Trimble Quadri Site

Trimble Quadri

Microsoft IIS

Port 80

Browser Application

Managment Client

HTTP

HTTP

Windows Application

DCM Client

Tech Management

<Application Pool> Quadri

<Application Pool> QMMweb

Figure 5: Trimble Quadri main access points / access types

4.1 Trimble Quadri Technical Management

To perform technical tasks related to the server components (start/stop servers, configuring server

properties, update with new software versions etc.) you need access to the servers desktop, either

directly physical access or trough remote desktop.

4.2 Trimble Quadri Model Manager

Trimble Quadri Model Manager (QMM) is a web browser-based application that enables you to

administer the models provided by a Trimble Quadri site. QMM is built using ASP.NET

technology, which requires a commercial application server with .NET support to run. Trimble

Quadri uses the Microsoft Application server included in Microsoft Windows Server 2008 / 2012

R2.

This server runs QMM specific business components that access the models trough a web service.

The implementation of this web service manipulates the Trimble Quadri Database partly by direct

SQL access, and partly by using services implemented in the Trimble Quadri API.

For more details about QMM see Trimble Quadri Model Manager User guide

Page 10: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 10

4.3 DCM-Client

DCM-Clients use Trimble Quadri to achieve full collaboration support for a group of users

performing model based Design, Construction and / or Maintenance. It is implemented as Windows

applications that uses Microsoft IIS as webserver and manipulate the provided model trough the

Trimble Quadri API on the Trimble Quadri Application server.

Trimble Novapoint is one example of a DCM-Client for designing and documenting infrastructure

and terrain projects, including delivering drawings and stakeout data for machine control.

5. Trimble Quadri System Components

5.1 Trimble Quadri Database structure

One Trimble Quadri contains two Trimble Quadri Database instances. There is one normal

production instance where all models provided by a Trimble Quadri are stored. There is also an

auxiliary instance that is used during recovery of one model from backup files. The auxiliary

instance is normally not running but only started when needed.

Production Instance

Auxiliary

InstanceBackup

Files

Trimble Quadri Database

system

Figure 6: Trimble Quadri Database system

The storage of each model is implemented as one database schema for each model. In addition to

these schemas there is a system schema that contains metadata (model type, available

TRUE/FALSE etc.) for all the model schemas.

In the Trimble Quadri Database instance, also a schema stores the end user accounts if a

configuration with embedded user accounts is selected.

Page 11: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 11

Database

System data

User Accounts

Geodata model

Figure 7: Trimble Quadri Database structure

5.2 File directory structure

This section provides a guide and description of the Trimble Quadri directory structure and the

related files that are necessary when the server is running. Normally, the root directory of Trimble

Quadri is located at ‘C:\Program Files\Vianova\QMS’.

Page 12: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 12

Trimble Quadri

Microsoft IIS

Trimble Quadri Application server

Database server

Log files

Configuration files

Temporary files

Data Backup files

Server files

Database files

Figure 8: Trimble Quadri files

5.2.1 Server files

Server files are binaries and libraries essential for running Trimble Quadri.

Server files are located in three subfolders who are named as following

C:\ProgramData\Vianova\Quadri Model Server\Bin

C:\ProgramData\Vianova\Quadri Model Server\Client

The Bin folder contains the binaries essential for running the Trimble Quadri Application Server.

The Client folder stores a collection of configuration and executable files that are used by QMM

Web services in order to use services delivered by the Trimble Quadri Application Server (for

example to activate the feature catalogue).

5.2.2 Configuration files

Configuration files are located in two subfolders named

C:\ProgramFiles\Vianova\QMS\Conf

C:\ProgramFiles\Vianova\QMS\SQL

The Conf folder consists of a series of feature-catalogues and web service-packages.

The FeatureCatalogues subfolder stores the different versions of DAT-files of feature catalogues.

The WebPackages subfolder contains the files and patches for installing QMM web services.

Page 13: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 13

The SQL folder stores files needed by maintenance and administration of the server. It contains the

SQL-scripts used by QMM in order to administrate the models, and restore scripts in the case of

backup and restore of the model.

5.2.3 Log files

All log files are stored at ‘C:\ProgramData\Vianova\Quadri Model Server\Logs’ by default.

5.2.4 Database files

This is the files that actually stores the content of the Trimble Quadri Database

Default location is C:\App\QMS\Oradata

5.2.5 Data backup files

This is the folder where the backup of the Trimble Quadri Database is stored.

Default location is C:\App\QMS\Backup

5.2.6 Temporary files

Several temporary files are created and later deleted when Quadri DCM is running. They are all

stored in %TEMP%

6. System Security

6.1 Communication security

As default the communication to and from a Trimble Quadri site, use HTTP - Hypertext Transfer

Protocol.

There is possible to enable SSL - Secure Sockets Layer, on top of HTTP to establish an encrypted

link to and from a Trimble Quadri site.

6.2 User Accounts Authorization and Authentication

Trimble Quadri may use a system of embedded user accounts or it may integrate with a user

accounts in Microsoft Active Directory trough a LDAP connection.

Page 14: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 14

Trimble Quadri Site

Microsoft IIS

Trimble Quadri

Database

User Accounts

Application server

Browser Application

Managment Client

HTTP

Windows Application

DCM ClientDigest

Authentication

HTTP Forms

Authentication

Port 80

Figure 9: Trimble Quadri with embedded user accounts

Page 15: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 15

Trimble Quadri Site

Web server

Trimble Quadri

Integrated

Windows

Authentication

Database

Active Directory (User Accounts)

Application server

HTTP

Windows Application

DCM Client

User Accounts

LDAPPort 389

Browser Application

Managment Client

Port 80

Figure 10: Trimble Quadri integrated with Active Directory

6.2.1 User Accounts

6.2.1.1 Embedded User Accounts

The intention behind the embedded user account strategy is to allow customers to establish a

Trimble Quadri without bindings to existing user account systems. This facilitates the use of

Trimble Quadri across organization boundaries without the need of adopting user account

information from one organization into the user account system for another organization.

In this configuration user account are stored in one dedicated schema in the database server used by

Trimble Quadri.

6.2.1.2 Integrated with Active Directory User Accounts

The intention behind the strategy to use Active Directory as source for user accounts is to allow

customers to establish a Trimble Quadri that utilize the most of user account information already

managed by their organization.

Page 16: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 16

In this configuration, a LDAP connection from the database server to Active Directory is

established. A configurable filter makes only applicable users available for Trimble Quadri.

6.2.2 Authorization from DCM-Clients

The Authorization for requests from DCM-Clients are independently of the selected user account

configuration. Authenticated users are authorized to manipulate tasks and objects trough those

projects that they are member of. Users who have the system role “Project Admin” can handle the

membership to a project in any DCM-client.

Business logic implemented in the Trimble Quadri Application Server handle the authorization

policy for DCM-clients.

6.2.3 Authorization Trimble Quadri Model Manager

Authorization for requests from Trimble Quadri Model Manager are, in contrast to DCM-Clients,

dependent of the selected user account configuration.

When configured with embedded user accounts one of the tasks Performed with Trimble Quadri

Model Manager is to manage the user accounts.

In this configuration, only one specific user-ID is authorized to use Trimble Quadri Model

Manager. This specific user-id is authorized to manipulate any user account and any model

properties.

When configured with Active Directory integration, management of user accounts are

independently of Trimble Quadri and Trimble Quadri Model Manager.

When configured with Active Directory integration, users with membership in a certain user group

defined inside Active Directory, is authorized to manipulate any model properties.

6.2.4 Authentication from DCM-Clients

When configured with embedded user accounts the authentication method used is HTTP Digest

Authentication with validation against digests stored in a table in the Quadri DCM Database.

When configured with Active Directory integration users are authenticated with integrated

windows authentication.

6.2.5 Authentication from Trimble Quadri Model Manager

When configured with embedded user accounts, authentication for Trimble Quadri Model Manager

is handled as what is known as Forms Authentication. The credentials, username and password, are

conveyed to the request as HTML-form. When Trimble Quadri Model Manager is used on

computers located in a public network it is recommended to configure the connection link to

Trimble Quadri so that it requires the use of HTTPS.

When configured with Active Directory integration users are authenticated with integrated

windows authentication.

Page 17: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 17

6.3 Data Back-up and Restoration

6.3.1 Integrated data back-up

Trimble Quadri has an integrated back-up functionality that performs scheduled back-up of the

database. This back-up is mainly designed to support human error recovery of one model for a

limited time period.

Trimble Quadri Site

System data

User Accounts

Geodata modelles

Production Database

Integrated Scheduled Database Back-up

Moday s backup

Tuesday s backup

..

Wednesday s backup

Sunday s backup

Online Data Backup files

Hot Database Back-Up

Windows Task Scheduler

All data

Figure 11: Integrated scheduled hot data back-up

The integrated data back-up is scheduled by Windows Task Scheduler, and as default

1. performed every 24 hour

2. back-up files are recycled every 7th day.

This data back-up is a hot back-up, performed while the database is running. It does not block

normal use of Trimble Quadri and it even captures changes that occur while the back-up is running.

The database content from one back-up is delivered as a file collection stored on a specified disk.

There is one file folder for each scheduled data back-up.

6.3.2 Standard data back-up

In the context of Trimble Quadri there are mainly two purposes for this back-up process.

1. Support human error recovery of one model for a longer time period than the time period

covered by the online data back-up files from the integrated data back-up.

2. Ensure that the whole content of the Trimble Quadri database can be reconstructed after a

system failure / disaster.

Page 18: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 18

Standard Back-Up Systems

Scheduler

Back-up Process

Back-Up Medium

Trimble Quadri Site

System data

User Accounts

Geodata modelles

Production Database

Integrated Scheduled Database Back-up

Moday s backup

..

Sunday s backup

Online Data Backup files

Hot Database Back-Up

Windows Task Scheduler

Tuesday s backupAll data

Wednesday s backup

Data

Figure 12: Standard data back-up system

To fulfil these two requirements it is assumed that a standard back-up process is tailored so that the

files from the integrated hot data back-up process are included.

To ensure that this data back-up contains the expected data, this process must be scheduled so that

it runs after the integrated hot data back-up.

6.4 Restoration

Restore operations in Trimble Quadri is dependent of the auxiliary database instance.

This database instance runs on the same computer as the production database instance. It starts

automatically at the beginning of a restore operation and run in parallel with the production

database instance. At the end of the restore operation the auxiliary database instance will

automatically shut down.

Restore functionality is available from QMM, and is mainly meant for human error recovery of one

model. Only one restore operation can be performed at the same time.

Page 19: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 19

6.4.1 Human error recovery from online data back-up files

Trimble Quadri Site

Auxiliary Database

Instance

System data

User Accounts

Geodata modelles

Production Database

Data for selected model

Integrated Scheduled Database Back-up

Hot Database Back-Up

Windows Task Scheduler

Monday s bacup

Tuesday s backup

..

Wednesday s backup

Sunday s backup

Online Data Backup files

All data for selected time

Figure 13: Restore from online data back-up

A set of data back-up files from a given time is used to create an auxiliary database instance.

This auxiliary instance will contain a complete copy of the production database as it was seen by

the back-up system at the selected time.

The database schema that represents the selected model to restore is used to completely overwrite

the current version in the production database.

Page 20: System Overview - Novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain projects, including delivering drawings and stakeout data for machine control. 5. Trimble

Date: 12/10 2016 Trimble Quadri

© Trimble Page 20

6.4.2 Human error recovery from offline data back-up files

Trimble Quadri Site

Auxiliary Database

Instance

Standard Back-Up Systems

Scheduler

Back-up Process

Back-Up Medium

Restore from Back-Up Medium

System data

User Accounts

Geodata modelles

Production Database

All data for selected time

Data for selected model

Backup Files

Integrated Scheduled Database Back-up

Hot Database Back-Up

Windows Task Scheduler

Monday s bacup

Tuesday s backup

..

Wednesday s backup

Sunday s backup

Online Data Backup files

Figure 14: Restore from external back-up medium

From a technically point of view the only difference here is that the back-up files must be restored

from the back-up medium before the Trimble Quadri supported restore operation is started.

The files restored from the back-up medium must be restored to a disk available from the computer

that runs Trimble Quadri.

Trimble Quadri takes those files, create an auxiliary database instance and overwrite the current

model in the production database.