GUI Run-time Verification and GUI Intervention

This is an open and adaptable framework (that is, it is agnostic to the verification language and the windowing system) that describes a Verification Layer located between the GUI and the business logic. This layer can be integrated seamless in a software project.

This layer can detect, in run-time, changes in the GUI due to the user interaction or the logic operation. Each change triggers a verification step, in which some rules related to the interacted GUI element are checked against the current execution of the application.
The requirements are represented by verification rules written using interpreted languages, and they may change in run-time without the need of recompiling the project. These rules are included in separate files.
The verification logic is transparent for the developers: they only have to write the rules!!

Finally, the verification process is extended by using GUI Intervention techniques, which enhances the user experience. It allows to perform a rich and interactive verification experience since, for example, it uses colors to highlight errors, the unfulfilled rules could be shown in an error, etc.