Systems Engineering STIMULUS
Modern vehicles, aircrafts and drones are typical examples of systems of systems that must make safety and mission critical decisions in very unpredictable environments meaning that the level of testing of their embedded systems must be higher than ever.
Among the many challenges that need to be met, we consider two crucial ones here:
- The test objectives themselves, the functional requirements, could be erroneous, as they are never properly validated before design starts.
- The creation of each test case, derived from the functional requirements written using natural language, is usually performed manually, making the process time consuming and error prone.
These two challenges impact the ability to deliver reliable critical systems at a reasonable cost. What new tools and more modern and powerful methods could help you meet these challenges?
- Validating the functional requirements:
Expressing the functional requirements using natural language restricts our ability to validate them predominantly to manual review. There is also the option of Formal languages, which provide precise semantics and allow powerful analysis. However, system architects do not have PHDs in formal methods, which makes such an approach very difficult to deploy to say the least. Semi-formal notations such as SysML are very useful for a number of objectives, but do not allow automatic test cases generation, and all organisations using SysML continue to write textual requirements as not all functionality can be described by a model and both notations are complementary. Textual requirements are here to stay, so they need to be made more trustworthy.