Kernbereich „Complex Systems Engineering“
Unter „Complex Systems Engineering“ verstehen wir einen ganzheitlichen Ansatz, komplexe Systeme zu entwerfen, zu realisieren, zu verstehen und zu beherrschen. Dabei werden sowohl funktionale („Was soll das System leisten?“) als auch nicht-funktionale („Wie – z. B. zu welchen Kosten oder mit welcher Qualität – soll die Leistung erbracht werden?“) Anforderungen betrachtet. Alle diese Anforderungen sollen bereits früh in den Entwicklungszyklus einfließen, um so sowohl eine hohe technische Qualität als auch Gebrauchstauglichkeit sowie Sicherheit der resultierenden Softwaresysteme zu erreichen.
Forschungsschwerpunkt "Information Governance Technologies"
Der Fachbereich Informatik hat einen interdisziplinären Forschungsschwerpunkt Information Governance Technologies entwickelt, der technische, rechtliche, wirtschaftliche und soziale Aspekte der Entwicklung und des Einsatzes von IT in den Blick nehmen. Dabei geht es nicht nur um technische Konzepte, sondern ebenso um Prozesse, oder allgemeiner um einen Ordnungsrahmen für den IT-Einsatz, der nicht allein durch Technik getrieben wird, sondern auch die sozialen, ethischen und rechtlichen Fragen von Beginn an mitdenkt.
Viele Aufgaben und Abläufe in ganz unterschiedlichen Lebensbereichen einer stark durch Technik geprägten Welt werden immer anspruchsvoller und komplexer. Damit steigt in der Regel auch die Komplexität der zugehörigen Informations- und Kommunikationssysteme (IKT-Systeme). Oft werden neuartige Anwendungsbereiche auch gerade erst durch derartig mächtige und komplexe Technologien ermöglicht – wie z. B. große Software- und Datenbanksysteme oder auch Kommunikations- und Internet-Technologie.
Insgesamt wird damit aber nicht nur die Architektur der betreffenden Systeme, sondern auch ihr Zusammenwirken und ihre Nutzung durch den Menschen ebenfalls komplizierter und oft damit auch anfälliger für Fehler und Sicherheitsprobleme. Einer derartigen „Spirale steigender Komplexität“ will die Forschung im Bereich Complex Systems Engineering mit angepassten technischen Konzepten und geeigneten softwaretechnischen Werkzeugen entgegen wirken.
Verteilte, vernetzte und mobile Systeme
Fast alle informationstechnischen Anwendungen und Systeme sind heutzutage verteilt. Die zugehörigen IKT-Systeme müssen mit geeigneten technischen Mitteln funktionsgerecht, effizient, sicher und nutzungsgerecht realisiert und betrieben werden. Dazu werden geeignete technische Lösungen erarbeitet, die die zunehmenden Anforderungen offener verteilter und vernetzter, zunehmend auch mobiler Anwendungen in ganz unterschiedlichen Anwendungsbereichen berücksichtigen. Dabei werden Aspekte der Verteiltheit, Sicherheit, Kommunikation sowie strategische Anwendungsziele, Methoden von Informationsverwaltung und -austausch ebenso wie Offenheit, Nutzbarkeit und Kontextualisierung mit berücksichtigt und in einen einheitlichen, anwendungsorientierten, strukturierten Prozess integriert.
Anwendungsbereiche solcher Systeme lassen sich in sehr unterschiedlichen Bereichen finden: von Internet-Anwendungen über Logistik, industrielle Produktionsprozesse bis hin zu verteilten Geschäftsanwendungen. Dabei geht es oft um den Umgang mit verteilt anfallenden (oft großen Mengen an) Daten, Fragen der Verteilung von Prozess- und Datenverwaltung (z. B. im Cloud Computing) oder auch um verteilte Kommunikations- und Kooperationsinfrastrukturen oder dienstorientierte und/oder mobile Anwendungen.
Big Data, Cloud Computing, Sicherheit
Es lassen sich zwei verschiedene IKT-Systemkomponenten unterscheiden: Das eigentliche Anwendungssystem sowie dessen grundlegende vernetzte und verteilte technische Infrastruktur. Beide erfordern jeweils spezielle Architekturen, Konstruktionsprinzipien und Entwicklungsmethoden, um die inhärente Komplexität dieser Systeme so zu kapseln, dass sie laufend anspruchsvoller werdende Kommunikations- und Datenverarbeitungsaufgaben übernehmen können, ohne die Nutzer unnötig mit ihrer Komplexität zu konfrontieren.
So werden zum Beispiel im Bereich Big Data sehr große Mengen an Daten aus verschiedenartigen (oft verteilten) Quellen gewonnen, an oft anderer Stelle (z. B. in der Cloud) gespeichert, analysiert und entsprechende Analyseergebnisse schließlich dort zur Verfügung gestellt, wo sie möglichst nutzbringend verwendet werden können.
Grundsätzlich ist Komplexität der Infrastrukturen als auch der Basistechnologien zur Bereitstellung moderner Anwendungen eine Folge der komplexen anwendungsseitigen Anforderungen. Entsprechend müssen diese Basistechnologien aus nicht-funktionaler Sicht nicht nur die Effizienz der Systeme garantieren, sondern auch die hohen Anforderungen erfüllen, die sich aus der Verteilung, der Heterogenität und der Dynamik von Systemlandschaften ergeben. Hierbei spielen dann auch die (meist nicht unerheblichen) Sicherheitsaspekte derartiger Systeme eine für verschiedene Anwendungsbereiche (wie z. B. E-Business) entscheidende Rolle.
Softwaretechnik
Der Bereich Softwaretechnik beschäftigt sich innerhalb des Schwerpunkts Complex Systems Engineering mit wichtigen Aspekten der Realisierung großer, verteilter, sicherer und komplexer Informations- und Kommunikationssysteme. Dabei werden die Methoden und Konzepte der Informatik auf unterschiedlichen Abstraktionsebenen des Entwurfes und der Realisierung solcher Systeme benötigt. Diese reichen von der Kommunikationstechnik zum Transport der dabei zu versendenden Nachrichten und Informationen über systemtechnische Dienste zur Unterstützung der Handhabung großer und komplexer Datenmengen, verteilter Anwendungen und Systemumgebungen bis hin zu softwaretechnischen Programmier- und Entwurfswerkzeugen und Architekturen großer und komplexer Softwaresysteme, die – last but not least – nur dann in der Realität einsetzbar sind, wenn sie auch sicher sind.