Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Softwaretechnik II Sommersemester 2015 www.ias.uni-stuttgart.de/st2 [email protected] © 2015 IAS, Universität Stuttgart Softwaretechnik II Ansprechpartner für „Softwaretechnik II“ Bei organisatorischen Fragen zur oder bei Problemen mit dem Ablauf der Vorlesung „Softwaretechnik II“ wenden Sie sich bitte an: Dr.-Ing. Nasser Jazdi Zimmer: 2.139 (Pfaffenwaldring 47, 2. Stock am IAS) Tel.: 0711- 685-67303 E-Mail: [email protected] © 2015 IAS, Universität Stuttgart ST II Softwaretechnik II ST II Unterlagen – Skript „Softwaretechnik II“ Blaue Texte zum Mitschreiben (im Skript nicht enthalten) Live-Mitschriebe (leere Folien im Skript für Mitschrieb vorgesehen) Fragen am Ende jedes Unterkapitels - Antwort zum Mitschreiben Vorbereitungsfragen am Ende jedes Kapitels zur selbstständigen Rekapitulation des Stoffes – Vorlesungsportal im Internet unter: www.ias.uni-stuttgart.de/st2 Aktuelle Informationen zur Vorlesung Vollständige Vorlesungsunterlagen Übungsunterlagen Aufgaben mind. eine Woche vor Übungstermin Lösungen nach dem Übungstermin Prüfungsunterlagen Musterlösungen im Internet und auf der Vorlesungs-CD erhältlich Lecturnity-Aufzeichnungen von Vorlesungen und Übungen (auch als Podcast) © 2015 IAS, Universität Stuttgart Softwaretechnik II ST II MOFIAS: Mobiles Online-Feedback-System für Lehrveranstaltungen am IAS MOFIAS ist eine plattformunabhängige Web-App für Smartphones. IAS-Studierende können live während einer Vorlesung über das Smartphone mit dem Dozenten interagieren. Folgende Funktionen sind verfügbar: Fragen / Kommentare an Dozenten senden Geschwindigkeit der Vorlesung beeinflussen Fragen zum Kapitel beantworten Die Vorlesung bewerten Zugriff über: http://m.ias.uni-stuttgart.de Video: MOFIAS Live Stream: Das Beamerbild und der Ton zu dieser Vorlesung werden, während die Vorlesung stattfindet, live ins Internet übertragen. Studierende können während der Vorlesung mit MOFIAS über das Internet Fragen stellen © 2015 IAS, Universität Stuttgart Softwaretechnik II ST II Vorlesungstermine Nr. 1 2 3 Termin 15.04.15 17.04.15 * 22.04.15 Thema der Vorlesung Konfigurationsmanagement Konfigurationsmanagement / Prototyping… Prototyping … 4 5 6 24.04.15 * 29.04.15 06.05.15 Metriken bei der Softwareentwicklung Metriken … / Formale Methoden… Formale Methoden/ Wartung & Pflege von Software 7 8 9 10 11 12 13 13.05.15 20.05.15 03.06.15 17.06.15 24.06.15 01.07.15 08.07.15 Wartung & Pflege von Software / Reengineering Reengineering Reengineering / Datenbanksysteme Datenbanksysteme/ Software-Wiederverwendung Software-Wiederverwendung Agentenorientierte Softwareentwicklung Agile Softwareentwicklung (*) Vorlesung anstatt Übung © 2015 IAS, Universität Stuttgart Softwaretechnik II ST II Übungstermine Nr. 1 2 3 Termin 08.05.15 15.05.15 22.05.15 Thema der Übung Konfigurationsmanagement Metriken Sichere Software (1) 4 5 6 05.06.15 10.06.15* 12.06.15 Sichere Software (2) Wartung Reengineering 7 19.06.15 Datenbanksysteme 1 8 26.06.15 Datenbanksysteme 2 9 03.07.15 Workshop „DB“ (praktische Übung am PC) 10 10.07.15 Komponentenbasierter Entwurf 11 15.07.15* Agentenbasierter Entwurf 12 17.07.15 Agentenbasierter Entwurf 13 22.07.15* Agentenbasierter Entwurf 14 24.07.15 Prüfungsbesprechung (*) Übung anstatt Vorlesung © 2015 IAS, Universität Stuttgart Softwaretechnik II ST II Ziele der Vorlesung – Softwarequalität für technische Systeme verstehen • Konfigurationsmanagement in Software-Projekten einsetzen • Prototyping bei der Softwareentwicklung realisieren • Geeignete Metriken einsetzen, um Eigenschaften von Software hinsichtlich der Erfüllung von Anforderungen zu beurteilen und den Entwicklungsprozess zu verbessern • Qualitativ hochwertige Software mittels formalen Methoden entwickeln – Softwaretechniken für bestehende technische Systeme kennen • Wissen, wie Software gewartet und gepflegt wird • Reengineering anwenden, um Leistungsindikatoren wie Kosten, Qualität, Service und Geschwindigkeit zu verbessern – Aktuelle Themen der Softwaretechnik kennen lernen Datenbanken, Software-Wiederverwendung, Agenten in der Automatisierungstechnik und agile Methoden verstehen und einsetzen © 2015 IAS, Universität Stuttgart Softwaretechnik II ST II Bezug zu anderen Vorlesungen der Fakultät: Vertiefung einzelner Themen in Implementierung von Datenbanken und Informationssystemen Softwaretechnik II Methoden & Werkzeuge des SWEngineerings Logik Grundkenntnisse aus Softwaretechnik I Informatik I, II © 2015 IAS, Universität Stuttgart Technische Informatik I Formale Methoden Programmierübungen I, II ST II Inhaltsverzeichnis (1) § 1 Konfigurationsmanagement 1.1 1.2 1.3 1.4 1.5 Definition und Abgrenzung von Konfigurationsmanagement Objekte des Konfigurationsmanagements Aufgaben und Abläufe im Konfigurationsmanagement Werkzeuge Hinweise für die Praxis § 2 Prototyping bei der Softwareentwicklung 2.1 2.2 2.3 2.4 2.5 2.1 Grundlagen Prototyping 2.2 Grundlagen Prototyping Prototyping im Entwicklungsprozess Prototyping-Werkzeuge Hinweise für die Praxis § 3 Metriken bei der Softwaretechnik 3.1 3.2 3.3 3.4 3.5 3.6 Einführung und Übersicht Softwaremaße bei der Qualitätssicherung Komplexitätsmaße Auswerte- und Validierungsmechanismen für Software-Maße Werkzeugsysteme zur automatischen Ermittlung von Softwaremaßen Hinweise für die Praxis © 2015 IAS, Universität Stuttgart 12 13 26 38 50 54 58 59 69 80 99 108 111 112 127 138 151 157 159 ST II Inhaltsverzeichnis (2) § 4 Formale Methoden zur Entwicklung qualitativ hochwertiger Software 4.1 4.2 4.3 4.4 4.5 Wozu formale Methoden ? Grundlagen der formalen Spezifikation und Verifikation Vorgehensweise bei der formalen Softwareentwicklung Modelchecker SMV Hinweise für die Praxis § 5 Wartung & Pflege von Software 5.1 5.2 5.3 5.4 5.5 5.6 Aspekte bei der Pflege von Softwaresystemen Aufgaben und Aufwand Effiziente Wartung und Pflege Moderne Softwarepflege Rechnerunterstützung bei der Pflege von Softwaresystemen Hinweise für die Praxis § 6 Reengineering 6.1 6.2 6.3 6.4 6.5 6.6 Warum Software Reengineering? Reverse Engineering Respezifikation Redokumentation Programmtransformation Hinweise für die Praxis © 2015 IAS, Universität Stuttgart 162 163 171 184 193 204 208 209 215 231 238 244 252 255 256 276 279 284 290 293 ST II Inhaltsverzeichnis (3) § 7 Datenbanksysteme 7.1 7.2 7.3 7.4 7.5 Einführung in Datenbanksysteme Relationale Datenbanksysteme SQL Entwurf von Relationalen Datenbanksystemen Objektorientierte Datenbanksysteme und neue Entwicklungen § 8 Software-Wiederverwendung 8.1 8.2 8.3 8.4 8.5 8.6 Woran krankt die klassische Softwareentwicklung? Grundlagen der Software-Wiederverwendung Bibliotheksbasierte Wiederverwendung Komponentenorientierte Softwareentwicklung Strukturierte Komponenten Hinweise für die Praxis § 9 Agentenorientierte Softwareentwicklung 9.1 9.2 9.3 9.4 Herausforderungen bei komplexen technischen Systemen Agentenorientierte Softwareentwicklung Agentenorientierte Methoden Agentensysteme – Aufbau, Struktur und Implementierung § 10 Agile Softwareentwicklung 10.1 10.2 10.3 Einführung in “Agile Methoden” Grundlagen der agilen Softwareentwicklung Extreme Programming © 2015 IAS, Universität Stuttgart 297 298 309 316 324 341 356 357 363 373 386 392 400 404 405 411 419 427 434 435 444 459
© Copyright 2024 ExpyDoc