Behavior and restriction rules can be entered in USoft Developer in a non-procedural fashion. They are called constraints in the repository and are stated in SQL. Defining business rules as constraints is a very efficient way to develop applications, for several reasons:
The rules are entered individually, and it is up to the Rules Engine to ensure that rules are evaluated in the right sequence and combination.
Normal programming requires one to keep in mind the evaluation of the business rules at any possible moment. There is code for pre-update, post-update, pre-delete, and so on. This leads to various software replicas of the business rules (that each need to be written, tested, and can differ). The Rules Engine takes care of this itself; it is only necessary to state what is not allowed, or what is to happen in a certain situation, regardless of how the situation evolves.
All of these situations are covered automatically by the business Rules Engine, independently of the sequence in which the users UPDATE, INSERT, or DELETE.
The resulting situation is an extremely clear single point of definition. The programming, and therefore maintenance, is reduced to business rules definitions, stating: