Enable javascript in your browser for better experience. Need to know to enable it? Go here.

Engineers, astronomers, and project specialists are working together to build the highly anticipated, next-generation observatory for the astronomical community, the Thirty Meter Telescope (TMT). With TMT, we will be able to study the universe as never before, finding answers to many of the grand challenges of science such as the origin of galaxies, birth and death of stars, probe turbulent regions surrounding black holes, discover planets orbiting distant stars and the possibility of life in the alien worlds.


Thoughtworks in association with Indian Institute of Astrophysics is collaborating with the TMT team to build the following systems:


1.) Common Software (CSW) are part of Level 2 TMT subsystems that provide TMT software technical architecture and infrastructure, required to integrate all of TMT software.

2.) Data Management System (DMS) is the system that provides the software and hardware mechanisms, and infrastructure to capture, time-stamp, describe, store, transmit and access all science and engineering data flowing through the TMT system.

3.) Executive Software System (ESW) provides core functionality for synchronized operation of all TMT subsystems apart from observing and monitoring user interfaces.

3.a) The Observatory Control System (OCS):The centre that implements data sequencing to support the observation data acquisition, and shares the execution information across systems.

The experience of the TMT Project Observatory Software team with the Thoughtworks team has been outstanding. The development of our Common Software subsystem has just successfully concluded, and we are very happy with the results. It’s hard to imagine a better long-distance relationship. Everyone on the team is knowledgeable, engaged, and committed to producing a high quality product that meets TMT’s functional and performance requirements. The word “team” accurately describes our relationship. TMT Observatory Software is looking forward to a continuing long-term relationship with Thoughtworks.
Kim Gillies
Chief Architect at TMT International Observatory

TMT SOFTWARE ARCHITECTURE

TECH STACK

India-TMT and the TMT project office have been working with Thoughtworks (TW) for more than two years, as part of the project aimed at developing a crucial component of the Observatory Software for TMT. The development of the common software is completed and went extremely well. This has been appreciated within the project, as well as by all the stakeholders. All the three parties (ITCC, PO and TW) have been working together as a single team, though they were distributed across 5 different locations, in different parts of the world. The TW team feels like an extension of the India-TMT software team. I look forward to working with the TW team in the coming years for the development of the Observatory software.
Prof. Annapurni Subramaniam
Project Manager, Observatory Software, India-TMT

TMT COMMON SOFTWARE INTEGRATION FRAMEWORK


The TMT Software System is a distributed software system. Software within TMT subsystems is built using a TMT-specific software development framework called Common Software Integration Framework, a deliverable of Thoughtworks. The integration framework provides software that assists in proper use of the services and software that assists in providing best practices for structuring components.


From a software communications and integration viewpoint, TMT consists of a set of software components interacting with each other through a communications backbone and software infrastructure (middleware). The middleware infrastructure is a collection of various channels corresponding to different command, configuration, or data transfer services required for the integration task. The connections shown in the architecture diagram (black lines between TMT subsystems) correspond to one or more such channels.

TMT COMMON SOFTWARE SERVICES

LOCATION SERVICE
Locate, register and track changes for a component’s connection information.
COMMAND SERVICE
Support receiving, sending and completion of commands in the form of configurations.
LOGGING SERVICE
View, capture and store local and distributed logging information.
COMMON SOFTWARE (CSW) INTEGRATION SERVICE
Templates for various software components defined by TMT as well as service access interfaces.
CONFIGURATION SERVICE
A centralized persistent store for any configuration file used in the TMT Software System, with versioning system to provide a historical record of each configuration file.
AUTHENTICATION AND AUTHORIZATION SERVICE
Centrally manage user authentication/access control.
TELEMETRY SERVICE
Publish/ subscribe system for component status and telemetry.
ALARM SERVICE
Support component alarms, and component and subsystem health.
TIME SERVICE
Standards-based, precision time access for synchronization.
EVENT SERVICE
Publish/subscribe system for demands and other transient events.
DATABASE SERVICE
Access to a shared, centralized, relational database.
LOCATION SERVICE

Locate, register and track changes for a component’s connection information.

COMMAND SERVICE

Support receiving, sending and completion of commands in the form of configurations.

LOGGING SERVICE

View, capture and store local and distributed logging information.

COMMON SOFTWARE (CSW) INTEGRATION SERVICE

Templates for various software components defined by TMT as well as service access interfaces.

CONFIGURATION SERVICE

A centralized persistent store for any configuration file used in the TMT Software System, with versioning system to provide a historical record of each configuration file.

AUTHENTICATION AND AUTHORIZATION SERVICE

Centrally manage user authentication/access control.

TELEMETRY SERVICE

Publish/ subscribe system for component status and telemetry.

ALARM SERVICE

Support component alarms, and component and subsystem health.

TIME SERVICE

Standards-based, precision time access for synchronization.

EVENT SERVICE

Publish/subscribe system for demands and other transient events.

DATABASE SERVICE

Access to a shared, centralized, relational database.