Description of the General concept of application tiers

Logic levels

In accordance with Systemic-technological application architecture, there are three logical levels:

  1. User interface
  2. Business logic
  3. Data, metadata, and data access

These logic levels can be implemented in different ways physically in a particular application system.

Flexberry PlugIns extend the class diagram UML so that the system design was carried out in these logical and physical levels.

Data, metadata, and data access

To describe the structure of applied data systems serve data classes (classes with the stereotype implementation or without specifying the stereotype, their attributes, methods) and the relationships between them (inheritance, Association, aggregation). Examples of data classes are: Account, Bank, Counterparty, etc.

Architecture Flexberry Platform and modules - code generators are arranged in such a way that a single data model occurs as generating data structures for storage (e.g., a relational table) and data structures programming language for data processing (the corresponding classes and relations between them).

Business logic

To describe the business logic of the application system (system-wide business transactions) are the so-called business servers (classes with the stereotype businessserver), with which can be created the so-called “stubs” to provide business servers as COM components or as a Web service, and a business facade.

User interface

For descriptions of the user interface are:

  1. Edit form (classes with the stereotype editform)
  2. List form (classes with the stereotype listform)
  3. Custom forms (classes with the stereotype userform)
  4. Applications (classes with the stereotype application)

Common elements of models for all levels

To describe the model in any of the levels are used:

In the description of the item belonging to any level can be used elements of other levels, as they all are, in the most General case, some “types”, both at the level of the modeling language, and object-oriented programming language. The principles of creating the structural parts of the object-oriented model and the source code to object-oriented programming language - similar. So, for example, forms can have methods that return or accept parameters that are declared as data classes. Business services will have methods, mostly working with the settings declared as data classes.

These levels are not regulated and not imposed in the simulation Flexberry. It’s just explaining a logical grouping that helps to understand the relation of stereotypes to logical levels system and technology architecture. Accordingly, it is possible to locate classes with any of the stereotypes on the charts as it is convenient. Location does not matter.