Featured Story

The firmware passes every test. The document that explains why it passes is three engineers old.

On a device that has been on the market for a decade, the code is authoritative and the design documentation is approximate.

Nobody rewrote the firmware. Nobody updated the record. It held, because it kept passing.

Then a change request arrives.

A component goes end-of-life. A cybersecurity finding lands. A reviewer asks how a specific safety interlock behaves under a fault condition.

And suddenly, something that has worked reliably for ten years needs to be explained.

The answer gets reconstructed from memory, by whoever is still in the building.

That is the problem with mature embedded systems. The software keeps evolving, but the documentation that explains it does not always keep pace. Over time, the distance between what the system actually does and what the organization says it does can become significant.

IRIS takes a different approach.

It reads the source itself - C, C++, assembly, the languages embedded software actually runs on. It decomposes the codebase into functions and flows, traces how those functions interact, and uses that understanding to generate specifications in Feature / Scenario / Given / When / Then form.

Each specification is traceable to the file it came from.

Your engineer then reviews and corrects what is wrong instead of starting with a blank page.

That distinction matters.

The output is not a summary of the code. It is a specification set your verification team can test against - with every line tied back to its source.

So when a remediation, change request or modernization program begins, documentation no longer has to become the long pole.

The system already contains much of the evidence.

IRIS turns that evidence into something your teams can understand, verify and work with.

Want to see it run against firmware you know?

Use the Request Demo button to see what IRIS can uncover in your own environment.