OS.bee Software Factory Documentation

From OS.bee documentation
Revision as of 15:10, 18 October 2017 by Worayeno (Talk | contribs) (Action DSL)

Jump to: navigation, search

OS.bee DSL Documentation

The OS.bee Software Factory is composed of various domain specific languages (DSLs), which are described in detail on the following pages.

Entity DSL

The Entity DSL is, beside Datatypes, the basic DSL for the Software Factory. It allows you, through the creation of entity model files, to describe the entity relationship models that will be used to create, read, update and delete content on a persistence level, such as with an SQL database.

DTO DSL

The DTO DSL handles data transfer objects in order to transfer data between processes. It uses the Entity DSL.

Chart DSL

The Chart DSL provides Vaadin dCharts.

Cube DSL

The Cube DSL provides MDX access to Mondrian OLAP Cubes.

Datamart DSL

A datamart is a condensed and more focused version of a data warehouse that reflects the regulations and process specifications of each business unit within an organization. Each datamart is dedicated to a specific business function or region.

Dialog DSL

The Dialog DSL generates the Vaadin UI

Datainterchange DSL

The Datainterchange DSL provides import and export functionalities. While all the basic components and interfaces for its usage are defined inside its API package, extended (commercial) features are implemented and based on the Smooks framework.

Report DSL

The Report DSL generates the Vaadin UI and the BIRT report module.

Table DSL

The Table DSL generates the Vaadin table UI.

Topology DSL

The Topology DSL generates D3.js, a JavaScript library for manipulating documents based on data, to generate the visualization of topology charts. Data used is topojson, an extension of GeoJSON that encodes topology and the corresponding UI components.

UI DSL

The UI DSL describes the user interface of an OS.bee application.

Entitymock DSL

The Entitymock DSL generates mock data for entity models automatically upon initialization.

Statemachine DSL

The Statemachine DSL adds behavior to user interfaces. Instances of this DSL interconnect UI instances, FunctionLibrary instances, persistence layers and peripheral devices, and therefore act as controllers in a multiple Model-View-Controller environment. There is no limitation of how many statemachine instances control a single business application.

Authorization DSL

AuthorizationDSL is used to authorize the roles at runtime.

Organization DSL

OrganizationDSL is used to define the organizations and their positions.

Perspective DSL

Os.bee Applications which are generated using the OS.bee software factory have by default a front end based on the E4-UI-Model.

Action DSL

The Action DSL defines actions that change the OS.bee data models for tasks, select workloads, dialogs, reports, charts, workflows, datainterchange, user interface and functions.

Message DSL

The Message DSL centralizes the contents and definitions of all possible output messages, that will be shown inside the application and make them available to other DSL models, such as the Action DSL.

Menu DSL

Menu model is used for the UI menu definition.

Strategy DSL

How to add pictures

OS.bee-Specific DSL Instances

The OS.bee Software Factory provides a few specific DSL instances for different requirements. These are described in detail on the following pages.


Datatype DSL

The Datatype DSL is, beside the Entity DSL, one of the most basic DSL for the Software Factory. It provides you with the most common used basic (atomic) datatypes by mapping them. It also allows you to define new simple and complex datatypes. As mentioned above the creation of entities via the Entity DSL is pivotal in order to create applications with the OSBP Software Factory. Therefore the Datatype DSL is in that manner a central milestone.

Several custom datatypes are described in detail in this chapter.

BlobMapping

This datatype allows the use of big data as a blob.

Other OS.bee-Specific Solutions

The OS.bee Software Factory also provides other solutions, which are described in detail on the following pages.

Themes

OS.bee Third-Party Software Solutions

OS.bee also uses products of other software vendors (third-party products) that are based on open-source products.

Peripheral Devices