Difference between revisions of "OS.bee Software Factory Documentation"

From OS.bee documentation
Jump to: navigation, search
(Dialog DSL)
(Peripheral Devices)
 
(51 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
=OS.bee DSL Documentation=
 
=OS.bee DSL Documentation=
The OS.bee Software Factory is composed of various domain specific languages (DSL) which will be described in detail on the following pages.
+
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]]==
 
==[[Entity DSL]]==
Line 15: Line 20:
  
 
==[[Datamart DSL]]==
 
==[[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 data mart is dedicated to a specific business function or region.
+
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]]==
 
==[[Dialog DSL]]==
 
The [[Dialog DSL]] generates the [https://vaadin.com/home Vaadin] UI
 
The [[Dialog DSL]] generates the [https://vaadin.com/home 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 [https://www.smooks.org/ Smooks] framework.
  
 
==[[Report DSL]]==
 
==[[Report DSL]]==
The [[Report DSL]] generates the [https://vaadin.com/home Vaadin] ui and [http://developer.actuate.com/about/ BIRT] report.
+
The [[Report DSL]] generates the [https://vaadin.com/home Vaadin] UI and the [http://developer.actuate.com/about/ BIRT] report module.
  
 
==[[Table DSL ]]==
 
==[[Table DSL ]]==
The [[Table DSL]] generates the [https://vaadin.com/home Vaadin] table ui.
+
The [[Table DSL]] generates the [https://vaadin.com/home Vaadin] table UI.
  
 
==[[Topology DSL ]]==
 
==[[Topology DSL ]]==
The [[Topology DSL]] generates [https://d3js.org/ D3.js] a JavaScript library for manipulating documents based on data to generate the visualization of topology charts using as data [https://github.com/topojson topojson] an extension of [http://geojson.org/ GeoJSON] that encodes topology and the corresponding ui components.
+
The [[Topology DSL]] generates [https://d3js.org/ D3.js], a JavaScript library for manipulating documents based on data, to generate the visualization of topology charts.  Data used is [https://github.com/topojson topojson], an extension of [http://geojson.org/ 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]]==
 
==[[Entitymock DSL]]==
The [[Entitymock DSL]] generates mocking data for entity models automatically by initialization.
+
The [[Entitymock DSL]] generates mock data for entity models automatically upon initialization.
  
 
==[[Statemachine DSL]]==
 
==[[Statemachine DSL]]==
The [[Statemachine DSL]] adds behaviour to user interfaces. Instances of this DSL interconnect UI instances, FunctionLibrary instances, persistence layer 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 one business application.
+
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]]==
 
==[[Authorization DSL]]==
 +
 +
AuthorizationDSL is used to authorize the roles at runtime.
  
 
==[[Organization DSL]]==
 
==[[Organization DSL]]==
  
==[[Topology DSL]]==
+
OrganizationDSL is used to define the organizations and their positions.
  
 
==[[Perspective DSL]]==
 
==[[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]]==
 
==[[How to add pictures]]==
  
=OS.bee specific DSL instances=
+
==[[Eclipse 4 Application Model]]==
The OS.bee Software Factory already provides a few specific DSL instances for different requirements which will be described in detail on the following pages.
+
  
==Datatypes==
+
All UI elements use the E4 model and embed into the E4 service environment.
Several custom datatypes will be described in detail in this chapter.
+
===[[BlobMapping]]===
+
This datatype allows the use of big data as blob.
+
  
=Other OS.bee specific solutions=
+
 
The OS.bee Software Factory provides also other solutions which will be described in detail on the following pages.
+
==[[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]]==
 
==[[Themes]]==
  
=OS.bee third party software solutions=
+
==[[Authentication methods]]==
OS.bee also uses products of other software vendors (third party) that found on open source products.
+
 
 +
=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]]==
 
==[[Peripheral Devices]]==
 +
 +
 +
== Copyright Notice ==
 +
{{Copyright Notice}}

Latest revision as of 13:10, 18 June 2020

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

Authentication methods

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

Copyright Notice

All rights are reserved by Compex Systemhaus GmbH. In particular, duplications, translations, microfilming, saving and processing in electronic systems are protected by copyright. Use of this manual is only authorized with the permission of Compex Systemhaus GmbH. Infringements of the law shall be punished in accordance with civil and penal laws. We have taken utmost care in putting together texts and images. Nevertheless, the possibility of errors cannot be completely ruled out. The Figures and information in this manual are only given as approximations unless expressly indicated as binding. Amendments to the manual due to amendments to the standard software remain reserved. Please note that the latest amendments to the manual can be accessed through our helpdesk at any time. The contractually agreed regulations of the licensing and maintenance of the standard software shall apply with regard to liability for any errors in the documentation. Guarantees, particularly guarantees of quality or durability can only be assumed for the manual insofar as its quality or durability are expressly stipulated as guaranteed. If you would like to make a suggestion, the Compex Team would be very pleased to hear from you.

(c) 2016-2024 Compex Systemhaus GmbH