Developer's Guide - Ulysses
Archive Software Developer's Guide
System Architecture
The main goal in designing the system architecture consisted in developing the foundation of a universal software framework, which can not only be used for the Ulysses/SWICS project, but for a multitude of other scientific data processing applications. This has been achieved by specifying well defined software interfaces between all application specific modules. Thereby the individual software modules may easily be extended or replaced, which allows to implement a flexible system that can be adapted to new data formats and analysing requirements without the need to change the underlying software architecture. Through the use of object oriented design methods and the implementation with C++, software extendibility and the adaptability to new requirements are further improved.
The software framework, which is the basis to build the various scientific data processing applications from, is called CAPPA (Customisable Architecture for Processing Pipeline Applications). The CAPPA framework uses a layer based architecture with standardised interfaces to all its external components. Each layer consists of several distinct modules which are dedicated to specific tasks. The following diagram shows a schematic overview of the system and its constituents:
