system overview - novapointresourcecenter.novapoint.com/lib/exe/fetch.php?... · and terrain...
TRANSCRIPT
Documentation
System Overview
Version: 1.04 Date: 12/10/2016
Trimble Quadri
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
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
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
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.
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.
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.
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.
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
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.
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’.
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.
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.
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
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.
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.
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.
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.
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.
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.