One Hundred Diagnostics

Today we released Diagnostic #101. Reaching the 100 Diagnostic milestone seems a good time to think back on what we have achieved so far.

Two years ago when we started building our first Diagnostic we knew that every quality check we automated was one less check that had to be performed manually. Today organizations are putting our Diagnostics at the heart of their quality practices, freeing their Rave study build experts to do more valuable work than manual review.

Originally we called our Diagnostics "Linters". As you know, in everyday life lint is the fluff that you find in your pockets and air filters. In software development it means the bugs, stylistic errors and "things that just don't look right" in code. Software Linters identify and help you remove this type of lint and improve your product.

The term "Linter" didn't mean much to our target users of Study Builders and Data Managers and honestly nobody is much worried that their study contains a bit too much fluff so we went with the term "Diagnostic" instead. Just as in real life, Diagnostic findings don't all have equal weight. A spelling error in your question text is embarrassing but an error that requires a Migration to fix is going to be expensive - but they can be equally difficult to spot.

Here's an example Rave Edit Check as shown in Rave Architect. See the logical error?

Edit Check Error

If you spotted it immediately, good for you but you were primed that there was a problem there. Would you have spotted it in manual review of 1,000 Edit Checks? If you didn't see it, don't feel too bad. Here's another example highlighting a similar problem:


One of these is logically correct, the other doesn't make a lot of sense but Rave is quite permissive in what it allows for Constant values and their formats. For the record "Y" is not a valid Data Format for the value "$1" and "Deferred" is not a valid Data Format for the value "$20", these should be Y ($1) and Deferred ($20).

Diagnostic 101 finds these kinds of errors in Edit Checks and Derivations - avoiding a costly Migration. Yes, these kinds of problems should be found in testing but we've seen all kinds of acceptable (but invalid) combinations and we suspect some of these have made it into production.

As with all new Diagnostics, there is no incremental cost to our customers for these new features and Diagnostic 101 won't be our last. Watch this space!