zurück

Software Engineering

Im Lehrstuhl "Softwaretechnologie und Programmierungstechnik" befassen wir uns mit modernen Technologien zur Softwareentwicklung unter Verwendung unterschiedlicher Paradigmen und Sprachen. Die Anwendungsplattformen reichen dabei von Hochleistungsparallelrechnern, über aktuelle PCs mit graphischen Interaktionen bis zu Handys. Das wollen wir auch unseren Studenten ins Berufsleben mitgeben:

  • Prozedurale Programmierung (C-Programmierung) dient als eine Einführung für die nachfolgenden Themen der Computerprogrammierung.

  • Softwareentwicklung ist eine kompakte Vorlesung für das populäre Paradigma der objektorientierte Programmierung. Ausgehend von der noch weit verbreiteten Programmierung mit C++ wird durch die Erweiterung mit C++/CLI der Weg geebnet, um in einfacher Art und Weise anspruchsvolle interaktive Windowsanwendungen mit der .Net - Bibliothek FCL zu entwickeln.

  • Softwaretechnologie ist eine Vorlesung, in der der gesamte Entwicklungsprozess für Software im Mittelpunkt steht. Beim Programmieren "im Großen" wird gezeigt, wie mit der Unified Modeling Language (UML) Modelle für umfangreiche Softwaresysteme entwickelt werden können. In dieser Lehrveranstaltung entwickeln Studentengruppen jeweils eine spezielle interaktive Anwendung ausgehend von einer Idee über die Analyse, den Entwurf bis hin zur fertigen Implementierung.

  • Verteilte Software beschäftigt sich mit Softwareentwicklung für Systeme, in denen mehrere Rechner an der Lösung einer Aufgabe beteiligt sind. Dabei werden verschiedene zukunftweisende Technologien eingesetzt.

  • Advanced Programming ist eine Vorlesung für Studenten aus höheren Semestern. In dieser sich ständig weiter entwickelnden Vorlesung werden für mehrere innovative Technologien zur Softwareentwicklung die theoretischen Grundlagen vermittelt und praktische Anwendungen demonstriert. Die Studenten erwerben in den zugehörigen Übungen praktische Fähigkeiten in der Anwendung dieser innovativen Technologien, wie zum Beispiel die Programmierung von Handys mit Java ME (siehe Abb. 1), interaktive graphische Anwendungen für mehrere Betriebssysteme mit Qt, die Kommunikation mit externen Geräten.

An unseren Forschungen zur modellbasierten Softwareentwicklung, zum Testen von Software und zu exponentiell komplexen Booleschen Problemen sind neben den Mitarbeitern und Doktoranden auch Studenten beteiligt. In einer Forschungskooperation mit der Bayer Business Service GmbH haben wir einen UML2 Designer (siehe Abb. 2) entwickelt, der von unseren Studenten für ihre Entwicklungen von Software angewendet wird. Der UML2 Designer dient auch als Front-End für zahlreiche andere Forschungsprojekte. Dazu gehören zum Beispiel die automatische Generierung des Quellcodes für Java, C++ sowie SAP-Anwendungen aus UML-Modellen. Unsere Studenten werden lernen, wie die aufwändige Programmierung von heute durch die Modellierung in der Zukunft ersetzt wird.


Abb. 1 Beispiel einer sehr einfachen Handy-Anwendung


Abb. 2 GUI Oberfläche vom UML2 Designer
zurück