As AI proliferates, more and more tools for their application appear on the market. This includes tools and add-ons for requirements quality checking.
Semiant is unique, as it works in every web application or website, being browser based. This includes requirements management tools like Jama Connect, Polarion, Codebeamer or DOORS Next.
We are proud to announce that we just implemented a requirements quality check that we make available for free. It is based on Vale, an open source quality checker.
How it works
The new quality check is easy to use: just open any web page / web app, click the Semiant icon, and the requirements to be checked are highlighted in gray. Once the check is complete, the text is highlighted in green (no problem) or red, with error marks. The following 13-second video shows how it works in Confluence:
Try it Yourself!
If you want to try Semiant with Vale, you can install Semiant from the Chrome Store. To use it, it is mandatory to create an account.
After logging in, the icon should be made permanently visible and Semiant should be configured (Semiant Icon > Options). In particular, we recommend setting Vale as default (and optionally disabling the other services):
Enabled Quality Checking Rules
In the free version of Semiant, the following rules are enabled (as of August 2022). Of course, this may change over time. In particular, these are standard rules of the Vale project. The rules were not designed specifically for requirements. The rules are designed for the English language. Some are simple, others are quite complex:
- Cliches: Certain phrases are cautioned, such as “a far cry” or “in a nutshell”
- Illusions: Word repetition.
- Passive: Passive sentences.
- So: A stentence begins with “so”
- ThereIs: At the beginning of a sentence, “There is”, “There are”, etc. is prohibited.
- Adverbs: A list of adverbs that are not recommended, such as “quickly” or “rarely”.
- Contractions: Compounds should be used, as “aren’t” instead of “are not”.
- DateOrder: To avoid confusion, months must be written out with letters.
- Ellipses: Three dots: …
- Ordinal: Enumerations such as “Secondly” should not have an “-ly”.
- OxfordComma: In enumerations, a comma before “and”.
- Semicolon: A semicolon indicates a complex sentence and should not be used.
- SentenceLength: Sentences longer than 30 words.
- Suspended: Abbreviation for enumeration with hyphen.
- Wordiness: Simplifications with concrete suggestions, e.g. “always” instead of “at all times”
There are many more rules in the Vale library. However, these are the ones that we think are useful for requirement checking. All rules can be found in the Vale repository.
Custom rules for requirement checking
The notation in Vale for rules is quite simple. In particular, it is not witchcraft to create rules in other languages.
The simplest are lists of words, as for example weak-words. In principle it is also possible to check sentence templates. However, this is where Vale reaches its limits. After all, the task is to find errors in the application of templates. This in turn means that we have to knit our logic in such a way that errors are detected.
An example: a successful template is the format for user stories: “As <ACTOR> I want <FUNCTION> so that <BENEFIT>”. A rule could match the first part and note the missing benefit as an error. Here it already becomes clear that it can get tedious.
For a really well-functioning system, several approaches usually need to be combined, so Vale alone is not necessarily enough.