On the fly checks
An essential aspect of AutoFOCUS is the early detection of design mistakes.
This is achieved by running permanently in the background various checks on your project.
Examples of such checks are extremely diversified in AutoFOCUS:
- completeness of provided information (is a field not filled?)
- type checking
- syntactic error
When a check fails, an "alarm" icon is shown on the corresponding model element in the model navigator and in the editor(s) displaying this element.
For some checks which are considered of less importance a yellow warning sign is shown instead of a cross:
On-save checks vs Live checks New in 2.11.0!
Until 2.11, checks were done as follows:
We call such checks "on-save checks".
On the other hand, "live checks" are a new experimental system which supports the following features:
- checks were run on saving the project
- all checks were re-run every time
Due to their experimental status, all live checks are deactivated by default in 2.11.0..
To activate them, please refer to the next section.
- checks are run as soon as a modification happens (no need to save)
- only the checks which are relevant to the modified element are triggered
As of 2.11, AutoFOCUS is in a transition period from the "on-save checks"
to the live checks, you will therefore encounter both kinds of checks, but, as a user,
there is usually no need to know which check is a live check or an on-save check.
There are however subtle differences in terms of graphical interface:
In the long run, it is planned to replace entirely on-save checks by live checks.
Tables providing summaries of the issues should also be added for live checks.
- live checks provide context-menu support, i.e., you can right-click a failing
element in the model navigator or in an editor in order to see immediately the reason for the error
as well as possible fixes if the context permits it:
- On-save checks do not provide context-menu support. However they are permanently gathered in a summary called "Model Markers":
You can filter out check results by type (failure, warning, information, etc.) by clicking the corresponding icon above the table.
However you cannot filter out results on a per-project basis: all errors of all projects are shown.
In case some checks are irrelevant for you or are simply annoying, you can deactivate them.
To do so, double-click on the root of your project:
This will open the check activation window which lists all the live checks and allows to activate or deactivate them simply by checking them:
For instance, unchecking the "Ports values are within their bound" check in the example above immediately removes the error:
If you wish, you can create your own configurations gathering various checks.
In the future, this feature will be enhanced to provide proper process support.