There are five different components identified in the TICS architecture:
TICS Viewer: The results that are stored in the TICS database are shown via the TICS viewer. This viewer is installed on a Web Server. This server also contains all TICS executables, code checkers and the central configuration. The reason to store all these items centrally is so the Web Server acts as an artifact repository, making it easy to deploy and upgrade artifacts to a host of build clients. This is especially useful for environments with a lot of build nodes and client machines.
TICS Analyzers:
TICS Wrapper: TICS Wrapper makes sure the configured versions of TICSQServer, TICS Client and code checkers are deployed upon invocation. This enables bootstrapping a complete analysis setup on a clean system. It also makes sure updates to these artifacts are automatically deployed.
TICSQServer: TICSQserver runs on build servers have access to the latest software archive and are capable of building the sources. Usually this is (a copy of) a machine that performs the nightly build. The build servers invoke TICSQServer to obtain analysis data and optionally retrieve quality gate results. The analysis of a software archive can be distributed over several distinct build servers - each build server analyzing a different metric.
TICS Client: TICS Client is a TICS Analyzer that runs on developer machines which have access to a copy of the software archive and are capable of building the sources. TICS Client is intended to allow developerts to analyze their changes, without writing to the TICS databases. TICS Client can also be used to measure if a changes made to the source code (change set) meets the quality gate conditions.
Database Service: The Database Service is installed on a Database Server and contains all TICS Quality Databases.