|
General Design Principles
and System-Wide Features
These modules were intended
as examples of good database design and good "how to" examples
for Genesis V, and also to serve as the basis for real business applications.
A great deal of time was spent on the design of the original database
by a group of very experienced system designers.
These applications are specified with great attention to Design standards
and Quality. These factors make the software easy to use, easy to maintain
and easy to interface with. They are: Consistent user-interface standards
Consistent coding standards (Using the Genesis V generator) Simple, neat
and well documented database design.
There are some System-Wide Features which both contribute to the design
quality and to the ease of installation. In general, we have tried to
write this software as a data-driven system: Generally, system constants
are held externally not inside programs.
A strong feature is the easy and timely availability of key management
information.
Features of the software include:
A "Windows" style - where called programs may show their information
in a window partially overlaying the previous panel.
Standardization of function keys - using the SAA standards where possible.
Extensive use of "Finder" functions: whenever a code is to be
entered and validated against a list of valid codes (such as a valid Customer
account code, General Ledger account code or payment method for example)
then there will be both question-mark support and F4 support: You can
type a question mark in the field or locate the cursor in the field and
hit the function key, and you will be given a list of allowable codes.
You can easily select one of the codes presented to you. Similarly if
you key in an invalid code, you will be presented with the list of valid
values.
Integrity checking validations: to stop you inadvertently deleting or
renaming records which other parts of the system depend on.
Immediate update of balances. Stock balances, customer and vendor account
balances and others are maintained in real-time. There is no need for
background or batch jobs to bring them in-line. General Ledger balances
may also be maintained real-time if desired: there is a job control system
which allows you to schedule these postings for an asynchronous (background)
job or for batch (overnight usually) processing.
These applications are designed with a fully integrated database with
NO unnecessary duplication: a modern, relational database design. The
database design documents including relationship tables and notes will
be available to you. The data dictionary includes a repository of field-level
validations to make interfacing or interpreting the database simple and
straightforward.
Coding standards: throughout the data base and the functions a consistent
set of simple standards has been maintained. To some extent these standards
are supported and enforced by the use of the Genesis V CASE tool. For
instance, we have used the Genesis V default of prefixed names: each file
has a prefix and all fields on that file have the same prefix. All functions
can be used recursively.
|
|