This page describes functional aspects of the architecture of the Cubitt framework.

External view

This model shows a view on the external parties that communicate with the Cubitt framework.

907

High level functional model of the Cubitt framework.

Glossary of elements

IdNameDescription
Cubitt BackendThe back-end cubitt framework which stores the architectural projects and allows for modification of these projects.
ClientA client with a GUI that communicates with the cubitt back-end to create, change or update architectural projects.
Simulation ServiceA simulation service is a specialized client which usually has no GUI but can be called upon through a plugin in the normal client. It is a separate service that can retrieve projects and prepare simulations on those projects separated from the client.
Analysis ServiceAn analysis service is a specialized client which usually has no GUI but can be called upon through a plugin in the normal client. It is a separate service that can retrieve projects and analyze them separated from the client.
Simulation pluginA client plugin to enable interaction with an external simulation service.
Analysis pluginA client plugin to enable interaction with an external analysis service.

Rationale

Due to the requirement that it should be easy to develop plugins independent of the core Cubitt framework, the choice was made to split these into separate services. These simulation and analysis plugins can be developed in any language or framework. They interface with the Cubitt front-end through client plugins in which they can give these external services access to their project data in the Cubitt back-end and set parameters for the the simulations or analysis. The external services communicate with the Cubitt back-end through a REST API to retrieve the project data they need to run their analysis.