Chair of Software Engineering (CSE)

Please try NOT to register for the course here! The registration is expected over the lsf webpage of the course! (https://lsf.ovgu.de/qislsf/rds?state=verpublish&status=init&vmfile=no&moduleCall=webInfo&publishConfFile=webInfo&publishSubDir=veranstaltung&veranstaltung.veranstid=165137)

Software Development for Industrial Robots

Nowadays, use of industrial robots rapidly increases. In 2014 the expected number of used industrial robots grew on 27% in comparison with the year before. The main reason is a high flexibly of these machines, their ability to perform a wide range of different tasks. In the scope of the course “Software Development for Industrial Robotics”, we present an introduction and overview of this domain and dive deeply into the mathematical modeling.

Therefore, we will program our own robot controller for an industrial robot within a simulation environment, supporting functionalities like PTP and LIN movement, synchronous and asynchronous movement, collision-free path planning, etc.
The grading of the course is based on the results of oral presentations and preparation of lecture relevant content as well as on the programming results. Therefore, the course will be split up into groups of three to four people working together on the tasks. At the first stage, this task will be preparing and presenting information on a particular subproblem of the robot programming and afterward implementing the controller. Based on this, the first task will be about a more complex and theoretical field on topic of industrial robotics.

The registration for the lecture and the compilation of the groups will take place during the first lecture. Hence, presence at the first lecture is mandatory!

Learning Objectives

  • forward and inverse kinematics
  • Point-to-Point movements
  • linear movements
  • trajectory planning
  • detecting singularities
  • Denavit-Hartenberg convention
  • rotation and translation matrices

The final project can be in the direction of collision-free path planning, KUKA youBot kinematics, numerical approaches for solving inverse kinematics, ROS connection development, etc.


Software Engineering  beschäftigt sich mit der Herstellung bzw. Entwicklung von Software, der Organisation und Modellierung der zugehörigen Datenstrukturen und dem Betrieb von Softwaresystemen. Es umfasst damit einen Bereich von Softwaredesign, Implementierung sowie Management. In der Grundlagenvorlesung Software Engineering I wurden Grundlagen geschaffen für das gute Designen und Schreiben von Software. In dieser Aufbauvorlesung werden moderne Techniken und Methoden vorgestellt, die bei der Entwicklung großer Softwaresysteme häufig zum Einsatz kommen. Wir orientieren uns dabei an den vier zentralen Werten des „Clean Code Developments“ – Evolvierbarkeit, Korrektheit, Produktionseffizienz und Nachvollziehbarkeit. Um diese Ziele zu erreichen, wird eine Reihe unterschiedlicher Programmierprinzipien und –praktiken vorgestellt. Dazu gehört unter Anderen

  • Teambildung und –organisation in der Softwareentwicklung
  • Prinzipien und Werkzeuge von Clean Code Development
  • Continuous Integration und automatische Build Systeme
  • Bugtracking, Fehlerlokalisierung und Debugging
  • Automatisiertes und modell-basiertes Testen
  • Code-Analyse und Qualitätsmaße
  • Requirements Engineering und Tracing
  • Verteilte- und komponenten-basierte Softwarearchitekturen

Die Veranstaltung wird speziell in ihren Übungsanteilen ein hohes Maß an praktischem Umgang mit Tools und Werkzeugen anbieten. Denn es sollen nicht nur abstraktes Wissen, sondern auch ganz praxisnahe Kompetenzen vermittelt werden. Die Bearbeitung der Übungen ist verpflichten und erfolgt in Gruppen.

Die Durchführung von CCD wird im aktuellen hybrid-Semester voraussichtlich von den vergangenen Jahren abweichen. Details dazu werden in der ersten Vorlesung erläutert. Dort wird auch der Einschreibeschlüssel für die Lehrveranstaltung bekannt gegeben.

Die Einfühungsveranstaltung am 28.10 findet aufgrund der räumlichen Beschränkungen als Online-Meeting via Zoom statt.

Zoom Meeting:
https://ovgu.zoom.us/j/99122750134

Meeting ID: 991 2275 0134
Passcode: 849543