What "Alexa for Systems Engineering" could look like

Whether Siri, Alexa, Google or Cortana: digital assistants are increasingly appearing and want to simplify our lives. The simplicity is deceptive. As users, we simply speak to them and get a (hopefully helpful) answer. But there is a lot going on behind the scenes.
What would a digital assistant for systems engineering look like? That's what this article is about. The question is not entirely altruistic, as I am currently working on such an assistant with my team. To this end, I have Exclusive information compiled for SE Trends readers.
Alexa, is it raining today?
Let's first take a look at how a digital assistant how Alexa works in the first place. The following image shows this in simplified form:

Regardless of where the data processing takes place (cloud or device), the input is translated first. This translation does not take place in a single step. First, the language must be converted into text, whereby many interpretations with different probabilities occur. However, the result relevant for processing is a Model. This contains the essence of the request in a form that can be processed by machines.
Depending on which category the query belongs to, the model will have a suitable structure. While a weather forecast requires a location and a time frame, a music request, for example, requires the genre or an artist to be specified.
In the final step, the system processes the result in a way that is understandable for humans. To stick with the example: A rain probability of 78% could be translated into an unambiguous "yes".
Assistants in Systems Engineering
An assistant in systems engineering could work in a similar way, i.e. by converting human language into a model in order to return a result that humans can understand. Of course, there are also important differences:
- An assistant for SE would not work with spoken work, but with "written" information (text, diagrams, models, etc.).
- Such an assistant could also wait for a prompt, but would often also react autonomously to changes
- The result will often be a request for people to take action. While there are certainly useful artifacts that can be generated (e.g. dashboards), humans should have the final say when it comes to changes. For example, an assistant could mark a trace as superfluous, but the human should decide whether the trace should really be removed or not.
In concrete terms, such an assistant could work as shown in the following image:

In this example, the wizard processes textual requests. Only one requirement is shown in the image. In order to extract a model as shown in the center, the wizard must of course process the entire specification, not just individual requirements. Incidentally, this is one of the most important distinguishing features of the Semiant wizard shown, compared to currently available systems. These are usually limited to the analysis of individual requirements, for example, in order to identify the best possible solution. Weak-Words to emphasize.
In this case, the result is an analysis of the model in which ambiguities are identified and presented to the user in the form of questions. The answers then flow back into the specification.
The model
The model shown in the example is a class diagram. In this example, we have extracted a domain model from the requirements. This allows us to recognize concepts and their relationships to each other. Just to make it clear right away: Even though we have used UML as an example for modelling, there is no need to use standardized notation here. After all, the model is only used "behind the scenes". The assistant only communicates with users in their language. However, if the users are already modeling, then the assistant could of course also work in the language. For example, by creating blocks and allocating requirements.
Conclusion
Just as a digital assistant is an enabling technology, this also applies to a quality assistant like Semiant to. Alexa couldn't do much at first, but over time Amazon has provided more and more use cases and enabled third-party providers to do the same. Similarly, Semiant will simply extract a glossary, but then acquire more and more "skills".
I'm certainly not the only one working on a digital assistant for product development. But with the help of the SE Trends community, I hope to develop a solution that creates real added value. If you would like to help me with this, please visit this page at Semiant.
Photo by Ivan Bandura on Unsplash






