The TMT Software System consists of software components that interact with one another through a software infrastructure called TMT Common Software (CSW). CSW defines the types of components in the software system and their functional roles, software services for integrating components, and library code that is used by developers to create the components and subsystems that make up the TMT Software System. The unique features of CSW include the use of multiple, open-source products as the basis of the services, and an approach that works to reduce the amount of CSW-produced infrastructure code. The core of CSW is implemented on the JVM in the Scala programming language with both Java and Scala programming interfaces as well as limited access from C/C++ and Python. The source code for CSW is open source and available on GitHub. TMT CSW has recently completed its construction phase and has been delivered to the project by our India partners. This paper summarizes the technical design, construction process, construction deliverables, changes in the design during implementation, and lessons learned.
|