Software Engineering für kritische Systeme (v. 31.01.2015) Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl XIV und Fraunhofer Institut für Software- und Systemtechnik, Dortmund http://jan.jurjens.de 1
Vertrauenswürdige Software-Systeme Erwartungen an Vertrauenswürdigkeit von Software in letzten 10 Jahren stark gestiegen. Oft nicht erfüllt, viele Software-Systeme angreifbar. Teil des Problems: System- und Software-Entwicklungsmethoden konnten mit gestiegenen Erwartungen bei gleichzeitig steigender Systemkomplexität nicht mithalten. 2
Modellbasierte Entwicklung Anforderungen Einfügen Evolution Analysieren UML Modelle Generieren Verifizieren Üb Reverse Pr erwach oce en ss Engin. Code-/ Testgen. Code Min in g Ausführen Konfiguration Konfigurieren Laufzeitsystem 3
Werkzeugunterstützung http://carisma.umlsec.de 4
Anwendungen in Unternehmen 5
Geplante Lehrveranstaltungen SoSe 2015: Vorlesung Methodische Grundlagen des Software Engineering (Master-Basismodul Software) [entfällt wegen Forschungssemester] Vorlesung Software-Engineering für langlebige Systeme (Bachelor-Wahlvorles.) Seminar Software-Engineering und Sicherheit [entfällt wg. Forschungssem.] WiSe 2015/16: Vorlesung Software-Konstruktion (Bachelor-Wahlpflicht) Vorlesung Sicherheit: Fragen und Lösungsansätze (Bachelor-Wahlvorlesung) (evt.) Fachprojekt Softwaretechniken für sichere Cloud-Computing-Systeme (evt.) Proseminar Werkzeugunterstützung für sichere Software Seminar Software-Engineering und Sicherheit Forschungsbereich Master: Software, Sicherheit und Verifikation Schwerpunktgebiete Diplom: Sicherheit und Verifikation, Software-Konstruktion Informationen: http://www-secse.cs.tu-dortmund.de/secse/pages/teaching/index_de.shtml (oder http://jan.jurjens.de, Link: Lehre). 6
Auslandaufenthalte, Stipendien etc. Vielfältige internationale Kontakte für Auslandsaufenthalte, z.b.: EU-Projekt VisiOn: Unis Trento (I), Brighton (UK); Firmen Atos Origin (S) u.a.. Bei Interesse bitte bei mir melden. Als ehemaliger Stipendiat: Vorschlagsrecht für Aufnahme in Förderung der Studienstiftung des deutschen Volkes. Bei Interesse bitte bei mir melden. 7
Hiwi-Tätigkeiten Hiwi-Jobs: Unterstützung von Forschungs-Projekten (z.b.: SecVolution, ClouDAT, VisiOn): z.b. Java-Programmierung für UML-Analyse-Werkzeug, konzeptuelle Arbeiten zu modellbasierter Sicherheitsanalyse Unterstützung in der Lehre (Tutorien, Folienerstellung etc) Informationen: http://www-secse.cs.tu-dortmund.de/secse/pages/home/jobs_de.shtml (oder: http://jan.jurjens.de ; rechte Spalte: HiWi-Stellen). Auch Hiwi-Beschäftigung im inhaltlichen Bezug zu Abschlussarbeiten möglich. Bei Interesse bitte bei mir melden. 8
Einige Beispiel-Themen für Abschlussarbeiten Erstellung, Integration und Implementierung von IT-Risiko-Metriken Sicherheitserhaltende Co-Evolutionen Language Engineering zur Verbesserung von Software-Sicherheit Sicherheitskonzepte in Automation und Industrie 4.0 Bedrohungs- und Trust-Analyse von personalisiertem Datenschutz Informationen: http://www-secse.cs.tu-dortmund.de/secse/pages/teaching/thesis/index_de.shtml (oder: http://jan.jurjens.de, rechte Spalte: Abschlussarbeiten ). Abschlussarbeiten auch in Zusammenhang mit Forschungsprojekten möglich. Bei Interesse bitte bei mir melden! 9 0.0 Organisatorisches und Einleitung
Erstellung, Integration und Implementierung von IT-Risiko-Metriken Motivation Kontext: IT-Risiko-Management in einem Großkonzern. Problematik: Vielzahl von unterschiedlichen Systemen, teilweise historisch gewachsen, teilweise in verschiedenen Software-Ständen. Entwickeln sich ständig weiter; aufgrund der Dynamik des Konzerns permanent neue Abhängigkeiten, die permanent berücksichtigt und angepasst werden müssen. Basis für die Arbeit: Systemlandkarte. Haupttreiber für die Einführung von IT-Risiko-Metriken: Vernetzung der Systeme und die konsequente Umstellung auf Service-Orientierte-Architekturen. Aufgabenstellung/Ziele Um künftige Änderungen an bestehenden Systemen auch in puncto ihrer Auswirkungen auf das IT-Risiko besser bewerten zu können, sollen Kriterien eingeführt werden, die aufgrund gewisser Metriken dazu beitragen, diese komplexe Landschaft beherrschbar und planbar zu machen. Aufgabe: Analyse der bestehenden Systeme durchführen; Konzept dafür, welche Metriken für existierende Landschaft geeignet sind. Optimalerweise Änderungen am Software-Entwicklungs und -Betriebskonzept durchführen, die dann automatisch (oder z.t. auch manuell) diese Kenngrößen abgreifen und in Form von Diagrammen visualisieren. Kontakt: Prof. Dr. Jan Jürjens (http://jan.jurjens.de) 10 0.0 Organisatorisches und Einleitung