Three Component Architecture
The ODABA three component architecture is, similar to the three tier architecture, based on three components:
In contrast to the three layer architecture, components are not arranged in a hierarchy, but communicate with the data access layer, only.
The data access layer is provided as generic data access manager. Views and view elements are used rarely in object-oriented environment, since they are defined in the object schema, which is stored in application resources. This prevents the application from defining implementation classes on the data access layer.
The business layer is totally defined in terms of database context classes, which provide data access event handlers but also object type or database specific action implementations.
The generic application logic manager (ALM) is handling main parts of the application logic. Thus, the ALM handles filling data into controls and displaying proper forms, which is the job of application development, normally. The application component has to deal with graphical presentations, enabling or disabling GUI-elements and similar things.
Application logic is implemented in terms of GUI context classes, which describe the behavior of a control or form. As such, application logic usually may read data in order to derive presentation rules from data states but will never update or analyze data. This is left to business rules, which may be called from application rules.