Research Areas

Our research is interdisciplinary. Today, software is the key innovation driver for many technical systems. However, while software engineering methods made huge steps forward in pure IT domains, software development tools, methods and processes for software in technical applications did not change a lot in the last two decades. This holds in particular for modern programming paradigms and processes. The overall aim of our research is:

“Development of methods for industrialization of software development in complex technical systems.”

 To reach this goal, we are using, adapting and extending methods known from modern software engineering and formal methods of computer science. We are focusing on three – in our opinion – utterly important topics to achieve this goal.

forschungsuebersicht

Formal methods are the often overseen technical heart of many software engineering approaches. No compiler would be possible without formal semantics and formal grammars let alone model-driven development. The key challenge is to bring formalized concepts to a level such, that they are understandable and in particular usable for industrial practitioners while at the same time not giving up rigorousity. Defining any modelling language in its fully elaborated semantics is of course necessary, however for practical applications it might be sufficient to restrict the language syntactically and maybe even further restricting explained concept to frequently used situations.

Programming paradigms and development processes have a huge influence on production efficiency of software. While both can be seen (and taught) on an abstract level, the key challenge is to develop domain-specific specialization for increasing productivity. For example, explaining logic or declarative programming on an abstract level, does not help for producing software for industrial robots more efficiently. On the other hand, developing a declarative specification language for robotic task can bring a huge benefit.

Dependability is a system property. For pure software – possibly provable – correctness might be the most important property to strive for. But even then, very soon the questions of availability and reliability arise as soon as the software is brought into operation on real hardware. Once the software operates some technical system, this becomes much more complicated. Safety has to be considered – which can not simply be reduced to correct. Failures of the hardware and/or unanticipated behavior of the environment must be compensated – both by software and/or hardware. This also closes the loop to formal methods, as a precise (formal) understanding of the software, the hardware as well as the environment are crucial for estimating a system’s safety.

optiPlan – Robot Trajectory Optimization for Relaxed Effective Tasks

optiPlan – Robot Trajectory Optimization for Relaxed Effective Tasks

Many industrial effective tasks, e.g., welding, cutting, allow a certain freedom during their execution, e.g., the robot’s tool might have a certain deviation during welding. This freedom can be used as an extra degree of freedom for robot trajectory optimization. In this project, we formalize these tasks and optimize robot trajectory.

Read More
checkAll

checkAll

In modern software and systems engineering formal verification gets more and more important to ensure safeness of safety critical systems. Especially, if the systems get in contact with human beings. Therefore, we research for new techniques in the domain of formal verification for software intensive systems.

Read More
Cyber Physical Avatar

Cyber Physical Avatar

In the last decade augmented reality gained more and more interest in the scientific and industrial domain. Currently it is envisioned that augmented reality could help during all kinds of tasks. Using Augmented Reality in different scenarios, however, can have multiple unwanted influences in decisions and lead to unwanted behaviors. Thus, Dependability can become an issue.

Read More
VECS

VECS

VECS is an Eclipse-based specification framework for the analysis of software-intensive systems. It includes an implementation of the SAML language and model transformations to verification engines. Currently, connectors to high-level Software Engineering tools (Rhapsody) are being developed.

Read More
TouchAuth

TouchAuth

Smart mobile devices are gaining widespread acceptance as displays sizes, computation power and mobile data transfer bandwidth increase. However, this also leads to new security issues. Here, we develop new bio-metric authentification methods. The core idea is to use soft keyboards as a biometric feature for authentification.

Read More
Self-Healing-Software (SHS)

Self-Healing-Software (SHS)

Self-Healing-Software or how can we find and fix software bugs automatically? Nowadays, programmers get a lot of feedback from IDEs during the programming task. However, things become far more complicated, if the software throws an unwanted exception.

Read More
Opti-Spec

Opti-Spec

In early stages of software engineering projects, several fundamental decisions must be made. At the same time, there exists a number of potentially antagonistic goals and/or requirements. If these decisions are not simply yes/no decisions, but are numerical in nature, then it is necessary to find an optimal configuration in the design space.

Read More
SafeMotion

SafeMotion

Autonomous mobile robots gain more and more importance. In the nearest future, they will be a part of everyday life. Therefore, it is critical to make them as reliable and safe as possible even in an environment cluttered with unexpectedly moving obstacles.

Read More
Elastic Coverage Path Planning

Elastic Coverage Path Planning

Industrial surface processing by robots - applications such as cleaning, material removal or painting - are characterized by low automation level and consequently remain manually intensive. For automated robot control in such applications we need a solution of the Coverage Path Planning (CPP) problem, which could be performed either off-line or on-line.

Read More