Models in Detail

The  model of an OpenSAGA application explains the parts of the application and how these parts relate to each other and focuses on business concerns.

os-model

Currently these models are written in XML, which is simplified by either the OpenSAGA eclipse plugin or another XML editor offering completion based on an XML schema.

Domain types and relations

The domain models describe the business domain of the application. They declare the different object types and their properties. They focus on describing what’s there instead of where and how it is stored. Behind these declarations can be a database, a web service or for example an Excel sheet. Relations connect the domain models to one another.

Processes and views

The process models describe the behavior of the application and how it reacts to user input. They are principally state diagrams with start states, decision-states and views which describe the user interface. Transitions connect the states of a process and contain lists of actions that are executed when the transition is invoked.

The view model describes the general structure of a view within a process and its contents. It describes the connection between input and output elements of the view and the domain types as well as the connection between the buttons/links and the transitions.