Error conditions can be represented by a binary array such that each bit is associated with an error. When an error occurs, the corresponding bit is set. The decision-making module will then activates the error handlers in a timely fashion with respect to the level of urgency of the error. One of the benefits of this approach is that error handling is not scattered throughout the application. The decision maker is the only module that have the access to the exception handlers.
Reconfigurable software can also take advantage of decision-making in reconfiguration on the fly.
The status of the system can be represented by a set of flags. The decision making mechanism monitors those flags and changes the configuration of the modules accordingly. Other applications include advisory, monitoring, and diagnostic systems. This concept can also be applied to more complex and multi-valued inputs through replacing monotonic logic by fuzzy logic. The proposed research combines the advantages of the current approaches, e.g., separation of knowledge from its control, modularity, and offers an agent-based paradigm to resolve the above problems.