Software-intensive Systems

In the context of computer technology, software is ubiquitous. It may seem less obvious that Systems Engineering is necessary for creating computer-based systems, whether they comprise software alone or in combination with hardware (electronics and mechanical parts). These are the key topics of our work in the field „Software and Systems Engineering“.

More specifically, an indispensible part of Systems Engineering is to figure out what system is to be built, what it needs to be able to do, etc. This activity is called Requirements Engineering with the goal that the resulting system will be useful. Any system of non-trivial size and complexity needs to have an architecture, which depends on the requirements. The process of finding and defining an architecture in Systems Engineering is called Architecting.

Many computer-based systems are interactive, i.e., users interact with them through so-called User Interfaces. Usually, these are primarily implemented in software also for systems with hardware included. A major point is that the system is easily usable.UML

While User Interfaces today are mostly graphical, many other modalities exist as well as their combinations. When several modalities are used, Multimodal User Interfaces arise.

Since the manual creation of User Interfaces takes much effort and is error-prone, generating them (semi-)automatically is tried. This starts from models on a higher level of abstraction, which are transformed into other models and finally into executable software that implements the User Interface.

Such models need to contain knowledge about the communicative interaction as well as knowledge about the domain of discourse. For the representation and processing of this knowledge often Semantic Technologies are used.