This documentation uses several terms that must be clarified
for a good understanding.
- Application
- The application defines all software components that
compose the information system managing a given domain. Usually, the
domains covered by programs written in BDL are business oriented.
- End user
- The end user is the person that uses the application;
that person works on hardware called the workstation.
- Programs
- The programs are the software components that are
developed and distributed by the supplier of the application. Programs
typically implement business rules and processing, usually called
business logic. Programs are executed by the runtime system on the
application server machine. These components are typically p-code
modules, forms and additional resource files.
- Developer
- The developer is the person in charge of the conception
and implementation of the application components.
- Application data
- Application data defines the data manipulated by
the application. It is typically managed by one or more database systems.
The application data has a volatile state when loaded in the runtime
system, and it has a static state when stored in the database system.
- Database
- The database is a logical entity regrouping the application
data. It is managed by the database system.
- Database system
- The database system is the software that manages
data storage and searching; it is usually installed on the database
server machine and is supported by a tier software vendor. It is the
software managing the data in the three-tier client / server model.
- Development database
- The development database is the database used in
the application development environment.
- Production database
- The production database is the database used on production
sites.
- Front end
- The front end is the software that manages the display
of the user interface on the workstation machine. This component is
historically called "the client", in a thin client/server context.
It is the software managing the presentation in the three-tier client/server
model.
- Runtime system
- The runtime system is the software that manages the
execution of the programs, where the business logic is processed.
The runtime system is implemented as the dynamic virtual machine (DVM)
and historically called "the runner". It is the software managing
the processing in the three-tier client / server model.
- User interface
- The user interface defines the parts of the programs
that interact with the end user, including interactive elements like
windows, screens, input fields, buttons and menus. It is displayed
on the workstation. This can typically be implemented by different
kinds of front ends, based on dumb terminals, graphical platforms
or through web protocols like HTML over HTTP.
- Graphical user interface
- The graphical user interface (GUI) mode identifies
the user interface displayed on a remote machine via a front end.
The GUI mode is active when the FGLGUI environment variable is set
to 1 (or when not set, GUI is the default).
- Text user interface
- The text user interface (TUI) mode identifies the
user interface displayed on dumb terminals (TTY on UNIX™ or Console Window on MS Windows™). The TUI mode is active when the
FGLGUI environment variable is set to 0.
- Workstation
- The workstation identifies the hardware used by
the end user to interact with the application forms. It can be an
dumb terminal, a computer, or even a cellular phone, as long as a
front end is available on that hardware.