OS.bee Software Factory Documentation

From OS.bee documentation
Revision as of 08:58, 29 October 2018 by Yang (Talk | contribs) (OS.bee DSL Documentation)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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.

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 will also be described in detail in this chapter.

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

The StrategyDSL works for Os.bee models; it defines the display strategies of dialog model.

Function Library DSL

The Function Library DSL defines the java functions for Os.bee.

DTO Service DSL

The DTO Service DSL works for the DTO when it needs to communicate with persistence unit.

BLIP DSL

The Business Logic Implementation Process (or BLIP) DSL provides you with all the components you need to design and implement business processes.

Signal DSL

The Signal DSL works as a watcher/scheduler provider over the corresponding file system and allows to trigger distinguished tasks based on its changes.

How to add pictures

Eclipse 4 Application Model

All UI elements use the E4 model and embed into the E4 service environment.


Tips for editing DSL in Eclipse

There is a tool called Content Assist (default key binding is CRTL+SPACE), which provides context sensitive content completion upon user request.

After clicking CTRL+SPACE, a Popup windows will be shown, it used to propose possible input choices to complete the phrase. You can select from these choices to complete the DSL.

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