Softwaretechnik II ST II. 6 Reengineering

Größe: px
Ab Seite anzeigen:

Download "Softwaretechnik II ST II. 6 Reengineering"

Transkript

1 Softwaretechnik II 6 Reengineering Lernziele Wissen, warum und wann Software Reengineering? Wissen, dass Software Reengineering alle Aktivitäten, deren Ziel die qualitative Verbesserung, Aufbereitung und Weiterentwicklung von Software ist, umfasst Prozesse Reverse Engineering, Respezifikation, Restrukturierung und Redokumentation kennen Methodologien, Tools und Praktiken des Software Reengineerings kennen Literatur K. Cremer: Graphbasierte Werkzeuge zum Reverse Engineering und Reengineering, Deutscher Universitätsverlag, 2000 K. A. Ingle: Reverse Engineering, McGraw-Hill Education, 1994 F. Lehner: Softwarewartung und Reengineering, Deutscher Universitätsverlag, IAS, Universität Stuttgart 255

2 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 256

3 6.1 Warum Software Reengineering? Komplexe, gewachsene Systeme sind (oft) nicht austauschbar! 2015 IAS, Universität Stuttgart 257

4 6.1 Warum Software Reengineering? Ziel: Modernisierung von Altsystemen 2015 IAS, Universität Stuttgart 258

5 6.1 Warum Software Reengineering? Warum Software Reengineering? Aber: Reengineering intereressiert mich nicht, meine Programme funktionieren! Wann wird auf einen neuen Computer oder Sprachstandard umgestellt? Wann wird auf eine andere Programmiersprache umgestellt? Wie lange wird mein Betriebssystem noch unterstützt? Wie offen ist mein System bezüglich der Integration neuer Technologien? Besitze ich eine aktuelle Programmdokumentation? Steigt mein Wartungsaufwand nur, um den Ist-Zustand zu erhalten? Wie gut läßt sich das System in seinem aktuellen Zustand zur Erfüllung gegebener und künftiger Erfordernisse verwenden? Verhält sich das System in allen erdenklichen Situationen robust? 2015 IAS, Universität Stuttgart 259

6 6.1 Warum Software Reengineering? Aufwand für die Pflege von Software-Altsystemen (Live-Mitschrieb) Aufwand für Pflege Sanierung Nutzungsdauer 2015 IAS, Universität Stuttgart 260

7 6.1 Warum Software Reengineering? Kosten Software-Wartung Wartungskosten pro Jahr > 1 Vermögenswert < 10 Sanierungsbedarf hoch = = 10 Jahre Nutzung Sanierungsbedarf gering Vermögenswert = Kosten für Neuentwicklung unter Beachtung des tatsächlichen Funktionsbedarfs 2015 IAS, Universität Stuttgart 261

8 6.1 Warum Software Reengineering? Was ist Software Reengineering? Unter Reengineering versteht man den Prozess der Analyse und der strukturellen Veränderung existierender Programme mit dem Zweck, die qualitativen Eigenschaften Portabilität Wartbarkeit (Produktivität) Wiederverwendbarkeit zu verbessern IAS, Universität Stuttgart 262

9 6.1 Warum Software Reengineering? Das Reengineering umfasst: Die nachträgliche Erzeugung und Verbesserung einer Dokumentation Redokumentation Die nachträgliche Erstellung der Spezifikation, um eine CASE-Umgebung nutzen zu können Respezifikation Die nachträgliche Strukturierung und Formatierung von Programmen, die schlecht lesbar sind Restrukturierung Die Wiederverwendung bewährter Programme Reuse Verbesserung der Möglichkeit, die Programmiersprache zu wechseln Recycle Erweiterung und Änderung von Programmen während des Betriebs Redesign 2015 IAS, Universität Stuttgart 263

10 6.1 Warum Software Reengineering? Wann sind Software Reengineering Maßnahmen notwendig? Technische Anforderungen = verwendete Technik erfüllt fachlich sanieren beibehalten nicht erfüllt aussondern neu entwickeln technisch sanieren nicht erfüllt erfüllt Fachliche Anforderungen = Funktionen 2015 IAS, Universität Stuttgart 264

11 6.1 Warum Software Reengineering? Bewertungsfaktoren für Reengineering Maßnahmen Kosten für Reengineering Kosten für Pflegearbeiten Vermögenswert Zu erwartende Lebensdauer Zukünftige Anforderungen Zeitbedarf für Sanierung Verfügbarkeit von Werkzeugen Mitarbeitersituation 2015 IAS, Universität Stuttgart 265

12 6.1 Warum Software Reengineering? Einflussfaktoren für Reengineering Maßnahmen Wartungskosten Alter der Software Erreichbarkeit Wartungsumgebung Benutzerfreundlichkeit Wartungsressourcen Erfahrung Sicherheitsanforderungen Code- Qualität Technische Abschätzung Wirtschaftliche Abschätzung Risikoabschätzung Andere Abschätzungen Werkzeugunterstützung Ablauf Management Entscheidungsprozess Politik Projektwachstum Geschäftsziele Lebenserwartung des Codes Dokumentation Neue Technologien Wartungsproduktivität Entscheidung 2015 IAS, Universität Stuttgart 266

13 6.1 Warum Software Reengineering? Kosten/Nutzen-Vergleich NW AW DS *( KS E * AW AW NW ) 1 mit DS > 0 Abkürzungen: AW NW DS E KS ZE Alte Wartungskosten/ZE vor Sanierung Neue Wartungskosten/ZE nach Sanierung Dauer der Sanierung in ZE Lebenserwartung in ZE Kosten der Sanierung / ZE Zeiteinheit (z.b.: 1 Monat) 2015 IAS, Universität Stuttgart 267

14 6.1 Warum Software Reengineering? Beispiel für eine Kosten-Nutzen-Analyse AW NW DS / Monat (2 Mitarb.) / Monat (1 Mitarb.) 2 Monate KS Tool Lohnkosten / Monat E 5 Jahre = 60 Monate Faktor: E 1 Jahr = 12 Monate Faktor: 0.75 < IAS, Universität Stuttgart 268

15 6.1 Warum Software Reengineering? Risiken bei Neuentwicklung/Risiken bei Reengineering Neuentwicklung Aufwand/Kosten werden unterschätzt Hohe Fehlerrate in Einführungsphase Neuentwicklung generiert neue Anforderungen Reengineering Entfremdung durch Restrukturierung Parallel zur laufenden Systempflege Je umfangreicher die Sanierungsmaßnahmen sind, um so mehr Fehler sind im neuen System 2015 IAS, Universität Stuttgart 269

16 6.1 Warum Software Reengineering? Reengineering Tätigkeiten Bestandsaufnahme Kosten-Nutzen- Analyse Kosten > Nutzen Planung Respezifikation/Analyse Redokumentation Restrukturierung/ Transformation Abschlusstest Integration 2015 IAS, Universität Stuttgart 270

17 6.1 Warum Software Reengineering? Vorstudie Bestandsaufnahme Feststellung des Gesamtumfangs in LOC Programmiersprache, Dialekte Qualitätsbestimmung Komplexitätsbestimmung Prüfung des Einsatzes von Werkzeugen Verfügbarkeit von qualifizierten Mitarbeitern Kosten/Nutzen-Analyse Aufwandsabschätzung Neuentwicklung Aufwandsabschätzung Reengineering Einsparungen in der Wartungsphase Kostenreduktion durch preiswerte Hardware/ Standardsoftware 2015 IAS, Universität Stuttgart 271

18 6.1 Warum Software Reengineering? Projektplanung Modulweise Umstellung Evolutionäre Integration neuer Module Gemischter Betrieb Zeitunkritisch Komplett-Umstellung Einfrieren des Gesamtsystems Abrupter Wechsel zwischen altem und neuem System Zeitkritisch 2015 IAS, Universität Stuttgart 272

19 6.1 Warum Software Reengineering? Abschlusstest Überprüfung der korrekten Funktion durch Vergleich der Testergebnisse des alten und des neuen Systems Protokollierung Benutzungsschnittstelle Datenbank-Transaktionen Funktionstrace/Datentrace Prozess-I/O 2015 IAS, Universität Stuttgart 273

20 6.1 Warum Software Reengineering? Reengineering Vorgehensweisen Spezifikation 1 Redesign Spezifikation 2 Abstraktion Generierung Ursprung z. B.: Quellprogramm in Fortran, schriftliche Unterlagen, Know-How Transformation Restrukturierung Metriken Übersetzung Redokumentation Instrumentierung Ergebnis z.b.: Quellprogramm in C, Übersichtsdiagramme, strukturierter Code 2015 IAS, Universität Stuttgart 274

21 Frage zu Kapitel 6.1 Frage zu Kapitel 6.1 Welche qualitativen primären Eigenschaften soll Software Reengineering verbessern? Antwort f Dokumentation Reaktionszeit Produktivität Wiederverwendbarkeit 2015 IAS, Universität Stuttgart 275

22 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 276

23 6.2 Reverse Engineering Was ist Reverse Engineering? Reverse Engineering beinhaltet die Analyse existierender Programme mit dem Zweck: Die Komponenten und deren Beziehung zu bestimmen Das Programmsystem in anderer Form und auf höherer Abstraktionsebene zu beschreiben IAS, Universität Stuttgart 277

24 6.2 Reverse Engineering Reverse Engineering Anforderungs- Analyse REQ 1 REQ 2 REQ 3 Requirementspezifikation Respezifikation + Reverse Engineering manuelle Interaktion Programmanalyse Dokumentation PROG 1 Grobentwurf MOD 1 MOD 2 MOD 3 F 1 F 2 F 3 Entwurfsspezifikation (high level) Respezifikation + manuelle Interaktion Respezifikation Feinentwurf Entwurfsspezifikation (low level) Implementierung Forward Engineering Programmquelle 2015 IAS, Universität Stuttgart 278

25 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 279

26 6.3 Respezifikation Respezifikation Respezifikation ist Bestandteil des Reverse Engineering Aus allgemeinen Informationen, der vorhandenen Dokumentation, dem Quelltext und dem funktionalen Verhalten des Programms wird die Beschreibung der Anforderungen und des Entwurfs nachempfunden Anforderungsspezifikation Entwurfsspezifikation Quellcode und Dokumentation 2015 IAS, Universität Stuttgart 280

27 6.3 Respezifikation Vorgehensweise bei der Respezifikation Schritt 1: Analyse des Quellcodes bezüglich der Struktur Schritt 2: Ergänzung der Struktur durch funktionale Aspekte Schritt 3: Vollständige Beschreibung, welche die Beziehungen zwischen den Anforderungen, dem Entwurf und dem Quellcode beschreibt Schritt 4: Überprüfung der Respezifikation 2015 IAS, Universität Stuttgart 281

28 6.3 Respezifikation Zusammenhang zwischen Quellcode, Entwurf und Anforderungen REQ 400: REQ 410: REQ 420: Anforderungs- Spezifikation Funktion X Funktion Y A X1 Y1 C X2 X3 X4 Y2 Y3 D Entwurfs- Spezifikation B X5 X6 X7 E { Quellcode { 2015 IAS, Universität Stuttgart 282

29 Frage zu Kapitel 6.3 Frage zu Kapitel 6.3 In welchen Situationen ist der Einsatz von Reverse Engineering Maßnahmen sinnvoll? Antwort f Wenn die bestehende Software nicht weggeworfen werden kann Wenn die vorhandene Datenstruktur wieder verwendet werden kann Wenn die Kosten der Neuentwicklung signifikant hoch sind 2015 IAS, Universität Stuttgart 283

30 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 284

31 6.4 Redokumentation Redokumentation Unter Redokumentation versteht man die nachträgliche Erstellung und Aktualisierung der Programmdokumentation Sichten: Kontrollfluss Datenfluss Programm Datenstrukturen Aufrufstruktur 2015 IAS, Universität Stuttgart 285

32 6.4 Redokumentation Nutzen einer Redokumentation Besseres Verständnis, mehr Übersicht Transparenz für neue/andere Mitarbeiter Gute Dokumentation erhöht Akzeptanz beim Auftraggeber Höhere Wiederverwendbarkeit durch eine leicht verständliche, aktuelle und präzise Dokumentation 2015 IAS, Universität Stuttgart 286

33 6.4 Redokumentation Redokumentation Der Ist-Zustand eines vorhandenen Programms wird am Projektende oder in der Wartungsphase nachträglich dokumentiert Nassi- Shneidermann- Diagramme Crossreferenzlisten Dokumentation andere Informations- Quellen + REVERSE ENGINEERING Quellprogramm 2015 IAS, Universität Stuttgart 287

34 6.4 Redokumentation Alternativen: Manuell, werkzeugunterstützt: Quelltext-Formatierer Struktogramm-Generatoren Respezifikations- und Dokumentationswerkzeuge Beispiele für Werkzeuge: Goose Menge von Werkzeugen zur Analyse des Entwurfs eines objektorientierten Softwaresystems, die am FZI Karlsruhe entwickelt wurden SRF Generator Ein Kommandozeilenwerkzeug zur Fact Extraction aus Java Systemen TableGen Ein Kommandozeilenwerkzeug für C/C++ Systeme Film: Reverse Engineering mit Rose IAS, Universität Stuttgart 288

35 Frage zu Kapitel 6.4 Frage zu Kapitel 6.4 Welche Nutzen bringt die Redokumentation? Antwort f Besseres Verständnis und mehr Übersicht Anzeigen eines Programmablaufplans Erhöhung der Akzeptanz beim Auftraggeber Transparenz für neue/andere Mitarbeiter 2015 IAS, Universität Stuttgart 289

36 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 290

37 6.5 Programmtransformation Sprachtransformation höhere Programmiersprache höhere Programmiersprache Assembler manuell automatisch interaktiv Assembler 2015 IAS, Universität Stuttgart 291

38 6.5 Programmtransformation Vorgehensweise bei der Programmtransformation Quellprogramm (z.b. FORTRAN) Preprozessor Scanner Parser Symboltabelle Strukturtabelle Quellcode- Generator Bereitstellung der Laufzeitroutinen aus der alten Programm- Umgebung in der neuen Programmiersprache Laufzeitbibliothek Quellprogramm (z.b. C) Übersetzbares und ablauffähiges Programmsystem 2015 IAS, Universität Stuttgart 292

39 Softwaretechnik II 6 Reengineering 6.1 Warum Software Reengineering? 6.2 Reverse Engineering 6.3 Respezifikation 6.4 Redokumentation 6.5 Programmtransformation 6.6 Hinweise für die Praxis 2015 IAS, Universität Stuttgart 293

40 6.6 Hinweise für die Praxis Reengineering bedeutet: Investition zur Sicherung alter Investitionen Vorteile des Reengineerings Möglichkeit der Rettung großer getätigter Softwareinvestitionen Steigerung der Produktivität bei der Softwarewartung und der Weiterentwicklung Portabilität durch Verwendung von Standards Kostenreduktion durch Wiederverwendung bewährter Komponenten Einfache Integration neuer Technologien Höhere Zufriedenheit der Mitarbeiter Einfache Adaption von Produkten Verbesserung der Softwarequalität 2015 IAS, Universität Stuttgart 294

41 6.6 Hinweise für die Praxis Grenzen des Reengineerings Einschränkungen beim Gebrauch automatisch arbeitender Werkzeuge: Programmtransformation Neuer Quellcode ist schwierig zu warten Restrukturierung unterschiedliche Sichtweisen Programm wird größer Effizienz nimmt ab Respezifikation, Dokumentation Nur formale (syntaktische) Sprachelemente werden ausgewertet Einschränkungen bei der manuellen Arbeit lange Dauer fehleranfällig unbeliebt 2015 IAS, Universität Stuttgart 295

42 Vorbereitungsfragen Vorbereitungsfragen zu 6 Frage 1: Reengineering (WS 03/04) Im Rahmen einer großen Softwareinvestition wurde vor 10 Jahren eine verfahrenstechnische Anlage automatisiert. In diesem Jahr müssen Teile der Anlage durch weiterentwickelte Hardware ersetzt werden. Es besteht die Möglichkeit die Software komplett neu zu entwickeln oder sie zu sanieren. Welches Verfahren schlagen Sie vor? Begründen Sie Ihre Aussage. Frage 2: Reengineering (WS 05/06) Ein Softwaresystem, das zur Steuerung einer verfahrenstechnischen Anlage eingesetzt wird, verursacht Wartungskosten pro Jahr. Die Neuentwicklung kostet 10 Millionen. Besteht ein Sanierungsbedarf? Begründen Sie Ihre Aussage IAS, Universität Stuttgart 296

Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Softwaretechnik II. Sommersemester 2015

Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Softwaretechnik II. Sommersemester 2015 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 st2@ias.uni-stuttgart.de

Mehr

Software Engineering. 7) SW Wartung. Prof. Dr. Anja Metzner Hochschule Augsburg, Fakultät für Informatik. Studiengang WiBac 4 (Stand:

Software Engineering. 7) SW Wartung. Prof. Dr. Anja Metzner Hochschule Augsburg, Fakultät für Informatik. Studiengang WiBac 4 (Stand: Software Engineering 7) SW Wartung Prof. Dr. Anja Metzner Hochschule Augsburg, Fakultät für Informatik Kontakt: anja.metzner@hs-augsburg.de Studiengang WiBac 4 (Stand: 15.03.2014), Hochschule Augsburg,

Mehr

Inhaltsverzeichnis. Teil I Grundlagen 1

Inhaltsverzeichnis. Teil I Grundlagen 1 xv Teil I Grundlagen 1 1 Modelle und Modellierung 3 1.1 Modelle, die uns umgeben.................................. 3 1.2 Modelltheorie........................................... 5 1.3 Ziele beim Einsatz

Mehr

Software Engineering II (IB) Softwareevolution

Software Engineering II (IB) Softwareevolution Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 16.05.2017 21:17 Inhaltsverzeichnis Softwareveränderungen............................... 2 Spiralmodell von Entwicklung und Evolution...................

Mehr

Software Engineering II (IB) Softwareevolution

Software Engineering II (IB) Softwareevolution Software Engineering II (IB) Softwareevolution Prof. Dr. Oliver Braun Letzte Änderung: 16.05.2017 21:17 Software Engineering II (IB), Softwareevolution 1/28 Softwareveränderungen Veränderungen der Software

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II login: pw: Prof. Dr.-Ing. habil Fakultät für Informatik und Automatisierung FG Softwaresysteme/Prozessinformatik email: ilka.philippow@tu-ilmenau.de Tel. 69 2826 Sekr. 69 2870,

Mehr

2 Softwarearchitektur in der Organisationsstruktur 25

2 Softwarearchitektur in der Organisationsstruktur 25 xiii Teil I Grundlagen und Organisation 1 1 Grundlagen 3 1.1 Warum Softwarearchitektur?.............................. 4 1.2 Was ist Softwarearchitektur?.............................. 6 1.2.1 Definition

Mehr

MDRE die nächste Generation des Requirements Engineerings

MDRE die nächste Generation des Requirements Engineerings MDRE die nächste Generation des Requirements Engineerings Tom Krauß, GEBIT Solutions GmbH Copyright 2007 GEBIT Solutions Agenda Requirements Engineering heute eine Bestandsaufnahme Modell-Driven Requirements

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. R. Koschke 1 D. Simon 2 1 Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen 2 Institut für Software Technologie Fakultät

Mehr

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Anne Thomas TU Dresden Dr. B. Demuth Pre Press GmbH (Dresden) T. Reuter Gliederung Einleitung Vorgehensweise Kontext

Mehr

Entwicklungsmethoden

Entwicklungsmethoden Slide 5.1 Entwicklungsmethoden Prof. Dr. Josef M. Joller jjoller@hsr.ch Development Methodologies Prof. Dr. Josef M. Joller 1 Session 5 Slide 5.2 TOOLS Development Methodologies Prof. Dr. Josef M. Joller

Mehr

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013 Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion

Mehr

Softwareentwicklungsumgebungen

Softwareentwicklungsumgebungen Softwareentwicklungsumgebungen Pit Pietsch Dipl.-Wirt.-Inform. Universität Siegen Fachgruppe Praktische Informatik Themen 1. SEU / Eclipse 2. Emf Ecore & Model Driven Engineering 3. Model-Repositories

Mehr

Programmentwurf mittels strukturierter Programmierung. Programmentwurf. Nassi-Shneiderman-Diagramm [DIN ]

Programmentwurf mittels strukturierter Programmierung. Programmentwurf. Nassi-Shneiderman-Diagramm [DIN ] Programmentwurf Bevor man sich daran macht, den Quelltext eines Programmes zu schreiben, sollte man sich einen Plan der Struktur des zukünftigen Programmes machen. Diese Phase eines Softwarentwicklungsprojekts

Mehr

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Inhalt Projektvorstellung Übung 1 Wiederholung zusammengefasst Planungsphase Lernziele Ziele und Inhalt der Planungsphase Anlass und Aufgabestellung(Was ist dabei erförderlich) Requirement Engineering

Mehr

Poseidon for UML. Einführung. Andreas Blunk

Poseidon for UML. Einführung. Andreas Blunk Poseidon for UML Einführung Andreas Blunk Gliederung 1) Editionen/Lizenzen 2) Die Programmoberfläche 3) Modelle speichern 4) Einführung am lebenden Objekt 5) Generierung (Doc & Code) 6) Funktionsumfang

Mehr

SOMA Reverse Engineering

SOMA Reverse Engineering SOMA Reverse Engineering Univ.Prof. Dr. Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt Was versteht man unter Reverse Engineering? Techniken/Methoden Probleme VU Software Maintenance

Mehr

Vorgehensweise zur Einführung der ISO/IEC 27001: Sven Schulte

Vorgehensweise zur Einführung der ISO/IEC 27001: Sven Schulte - Sven Schulte Agenda Prozessüberblick Projektplanung / Projekteinführung Einführungsschulung Bestandsaufnahme Aktionsplan Projektumsetzung Aufgabenzuordnung Dokumentation Internes Audit Managementbewertung

Mehr

Typen von Softwareprojekten

Typen von Softwareprojekten Softwaretechnik- Praktikum: 5. Vorlesung Jun.-Prof Prof.. Dr. Holger Giese Raum E 3.165 Tel. 60-3321 Email: hg@upb.de Übersicht I Einleitung II Ergänzungen zur Software-Entwicklung III Software Management

Mehr

Behutsame Modernisierung

Behutsame Modernisierung Software Evolution mit Legacy Systemen Forum Forschungsförderung / ViSEK Trends im Software Engineering Software Evolution mit Legacy Systemen Behutsame Modernisierung Jan Wloka

Mehr

4.Grundsätzliche Programmentwicklungsmethoden

4.Grundsätzliche Programmentwicklungsmethoden 4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden

Mehr

Softwaretechnik- Praktikum: 5. Vorlesung

Softwaretechnik- Praktikum: 5. Vorlesung Softwaretechnik- Praktikum: 5. Vorlesung Jun.-Prof Prof.. Dr. Holger Giese Raum E 3.165 Tel. 60-3321 Email: hg@upb.de Übersicht I Einleitung II Ergänzungen zur Software-Entwicklung III Software Management

Mehr

Institut für Informatik Betriebliche Informationssysteme Graph-basiertes Reengineering

Institut für Informatik Betriebliche Informationssysteme Graph-basiertes Reengineering Graph-basiertes Reengineering Seminar Model-Driven Software Development (MDSD) Stefan Sosnicki Agenda 1. Einleitung 2. Begriffsklärung 3. Vorstellung der Werkzeuge 1. Jumli 2. Umodel 3. Fujaba 4. Vergleich

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Softwareentwicklung Probleme bei großer Software Life-Cycle-Modelle Teilphasen eines Software-Projekts Methoden und Werkzeuge 01101101 01011001 11010011 10011000 00000011 00011100

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2009/10 Überblick I 1 I 1 Arten von Reengineering-Projekten

Mehr

16 Architekturentwurf Einführung und Überblick

16 Architekturentwurf Einführung und Überblick Teil III: Software-Architekturentwurf 16 Architekturentwurf Einführung und Überblick 16.1 Software entwerfen Warum? Beim Arbeiten im Kleinen nicht oder nur ansatzweise (Detailentwurf) Größere Software

Mehr

Kompetenzfeld Software- und Automatisierungstechnik

Kompetenzfeld Software- und Automatisierungstechnik Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Kompetenzfeld Software- und Automatisierungstechnik Prof. Dr.-Ing. Michael Weyrich 27.04.2016 1

Mehr

Aufbau betrieblicher Informationssyteme

Aufbau betrieblicher Informationssyteme Aufbau betrieblicher Informationssysteme Dr. Thomas Lux Aufbau betrieblicher Informationssyteme 0 Einleitung 2 Entwicklung von Software: Prozedurale Programmierung 3 Software Engineering 4 Objektorientierte

Mehr

Gnädinger & Jörder Consulting Assuring Project Success

Gnädinger & Jörder Consulting Assuring Project Success Gnädinger & Jörder Consulting Assuring Project Success TQS Technische Qualitätssicherung Management Summary Dr. Markus Schmitt 2010-03-01 Folie 1 Ihre Anforderungen unsere Leistung Sie möchten zukünftige

Mehr

Gibt es eine eigenen Didaktik für das Hauptund das Nebenfach sowie weitere Differenzierungen?

Gibt es eine eigenen Didaktik für das Hauptund das Nebenfach sowie weitere Differenzierungen? Gibt es eine eigenen Didaktik für das Hauptund das Nebenfach sowie weitere Differenzierungen? Peter Forbrig Fakultät für Informatik und Elektrotechnik Institut für Informatik Lehrstuhl für Softwaretechnik

Mehr

Potentiale modellgetriebener Softwareentwicklung

Potentiale modellgetriebener Softwareentwicklung Model Driven Software Development Potentiale modellgetriebener Softwareentwicklung Referent: Hartwig Tödter Seite 2 / 23 Inhaltsverzeichnis 1. Grundideen modellgetriebener Softwareentwicklung 2. Vorteile

Mehr

Softwaremetriken. 15. Mai 2013

Softwaremetriken. 15. Mai 2013 Softwaremetriken 15. Mai 2013 Was sind Softwaremetriken? Softwaremetriken messen Qualität. besser: Softwaremetriken definieren, wie Kenngrößen der Software oder des Softwareentwicklungsprozesses gemessen

Mehr

Software Engineering

Software Engineering lan Sommerville 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Software Engineering 6. Auflage Pearson Studium ein

Mehr

Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase)

Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase) Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase) Prof. Dr. Rolf Dornberger Software-Engineering: 7 Implementierungsphase 27.04.2006 1 7 Implementierungsphase

Mehr

Software- und Systementwicklung

Software- und Systementwicklung Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm

Mehr

Software Engineering für kritische Systeme

Software Engineering für kritische Systeme 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

Mehr

ISim Standardisierung von Flugkörpersimulationen. Vortragender: Florian Peter DGLR, Braunschweig Datum: 30.

ISim Standardisierung von Flugkörpersimulationen. Vortragender: Florian Peter DGLR, Braunschweig Datum: 30. ISim Standardisierung von Flugkörpersimulationen Vortragender: Florian Peter (florian.peter@mbda-systems.de) Ort: DGLR, Braunschweig Datum: 30. Mai 2017 Übersicht 1. Motivation 2. Rolle von ISim im Technologiefeld

Mehr

Programmiermethodik Vorlesung und Praktikum SS 2001

Programmiermethodik Vorlesung und Praktikum SS 2001 Vorlesung und Praktikum SS 2001 Prof. Dr. W. Effelsberg, G. Kühne, Ch. Kuhmünch Universität Mannheim 1. Einführung 1-1 Inhalt 1. Einführung, Vorstellung der Programmieraufgabe 2. Der Software-Entwicklungszyklus

Mehr

CONSULTING // ENGINEERING // ENTWICKLUNG KOMPLEXER SOFTWARE-SYSTEME

CONSULTING // ENGINEERING // ENTWICKLUNG KOMPLEXER SOFTWARE-SYSTEME CONSULTING // ENGINEERING // ENTWICKLUNG KOMPLEXER SOFTWARE-SYSTEME Seadex verfügt über umfangreiches Spezialwissen, wenn es um Pflege, Weiterentwicklung und Refactoring gewachsener Software-Systeme geht.

Mehr

Formale Verifikation von Software. 10. Juli 2013

Formale Verifikation von Software. 10. Juli 2013 Formale Verifikation von Software 10. Juli 2013 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

TEILZEIT (ZWEI JAHRE)

TEILZEIT (ZWEI JAHRE) TERMINKALENDER (STUDIENJAHRE 2017-2018 / 2018-2019) TEILZEIT (ZWEI JAHRE) MATERIALIEN 01 Einleitende Übersetzungsübung: Herkömmliche Übersetzung vs. Übersetzung im Bereich der Neuen Technologie 15. bis

Mehr

Software Engineering

Software Engineering Literatur Gliederung Software Engineering Herbert Kuchen Universität Münster Di+Fr 14:15-15:45, M2 Wintersemester 2009/2010 1 Literatur Gliederung Basis-Literatur H. Balzert: Lehrbuch der Software-Technik,

Mehr

1 Einleitung zum Thema Softwaremigration 1

1 Einleitung zum Thema Softwaremigration 1 xi 1 Einleitung zum Thema Softwaremigration 1 1.1 Die Motivation für Softwaremigration........................ 1 1.2 Zum Zustand der IT in der betrieblichen Praxis................. 4 1.3 Alternativen zur

Mehr

TERMINKALENDER (STUDIENJAHR ) VOLLZEIT (EIN JAHR)

TERMINKALENDER (STUDIENJAHR ) VOLLZEIT (EIN JAHR) TERMINKALENDER (STUDIENJAHR 2017-2018) VOLLZEIT (EIN JAHR) MATERIALIEN 01 Einleitende Übersetzungsübung: Herkömmliche Übersetzung vs. Übersetzung im Bereich der Neuen Technologie 04. Oktober 2017 22. Oktober

Mehr

Formale Verifikation von Software. 8. Juli 2015

Formale Verifikation von Software. 8. Juli 2015 Formale Verifikation von Software 8. Juli 2015 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Die Softwareentwicklungsphasen!

Die Softwareentwicklungsphasen! Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.

Mehr

Praktikum Datenbanken und verteilte Systeme SS Einführung August 2008

Praktikum Datenbanken und verteilte Systeme SS Einführung August 2008 Praktikum Datenbanken und verteilte Systeme SS 2007 - Einführung - 18. August 2008 Verteilte Systeme und Informationssysteme (VSIS) Department Informatik Universität Hamburg VSIS Arbeitsbereich VSIS: Verteilte

Mehr

Übung Einführung in die Softwaretechnik

Übung Einführung in die Softwaretechnik Lehrstuhl für Informatik 3 RWTH Aachen Übung Einführung in die Softwaretechnik Lösungshinweise zur Sonderübung Aufgabe S1 Gegenläufige Entwicklungen: - Entwicklungsinfrastruktur: Werkzeugunterstützung

Mehr

Function-Point Analysis Theorie und Praxis

Function-Point Analysis Theorie und Praxis ^O Edition «JO expert^ Robert Hiirten Function-Point Analysis Theorie und Praxis Die Grundlage für das moderne Softwaremanagement 2., erweiterte Auflage expertlqp] verlag«enthält: 1 CD-ROM Inhaltsverzeichnis

Mehr

Relevante Metriken zur Bestimmung von Softwarequalität

Relevante Metriken zur Bestimmung von Softwarequalität Relevante Metriken zur Bestimmung von Softwarequalität Steffen Förster 2 Definitionen Metrik Eine Funktion, die eine Software-Einheit in einen Zahlenwert abbildet. Dieser berechnete Wert ist interpretierbar

Mehr

Softwaremetriken. 29. April 2015

Softwaremetriken. 29. April 2015 Softwaremetriken 29. April 2015 Was sind Softwaremetriken? [FP] Softwaremetriken messen Qualität. besser: Softwaremetriken definieren, wie Kenngrößen der Software oder des Softwareentwicklungsprozesses

Mehr

Integration eines Application Security Management in ein ISMS nach BSI IT- Grundschutz 1. BSI IT-Grundschutztag Limburg

Integration eines Application Security Management in ein ISMS nach BSI IT- Grundschutz 1. BSI IT-Grundschutztag Limburg Integration eines Application Security Management in ein ISMS nach BSI IT- Grundschutz 1. BSI IT-Grundschutztag Limburg 09.03.2017 Wer wir sind Beratung und Dienstleistung für anspruchsvolle Anforderungen

Mehr

Vorlesung Software-Reengineering

Vorlesung Software-Reengineering Vorlesung Software-Reengineering Prof. Dr. Rainer Koschke Arbeitsgruppe Softwaretechnik Fachbereich Mathematik und Informatik Universität Bremen Wintersemester 2010/11 Überblick I Durchführung von Reengineering-Projekten

Mehr

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217 EIDI 1 Einführung in die Informatik 1 PGdP Praktikum Grundlagen der Programmierung Harald Räcke 2/217 Wie löst man Probleme mithilfe von Computern? 0 Harald Räcke 3/217 Inhalte: EIDI 1 1. Was ist das Problem?

Mehr

Übungsaufgaben zum Software Engineering: Management

Übungsaufgaben zum Software Engineering: Management Übungsaufgaben zum Software Engineering: Management Grundbegriffe: Aufgabe 1: Aus welchen Disziplinen setzt sich das Software Engineering zusammen? a. Informatik b. Physik c. Psychologie d. Chemie e. Geologie

Mehr

Software Engineering. 11. Einführung und Wartung

Software Engineering. 11. Einführung und Wartung Software Engineering 11. Einführung und Wartung Gliederung Vorlesung Einführung V-Modell XT Analyse und Anforderungsmanagement Benutzungsoberflächen Architektur Entwurf Entwurfsmuster Persistenz Testen

Mehr

Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen

Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen Roland Koppe, Stefan Häusler, Axel Hahn 2 Übersicht Einleitung und Motivation Ansatz und Methodik

Mehr

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete

Mehr

Das Softwaresystem BASEMENT

Das Softwaresystem BASEMENT Numerische Modellierung von Naturgefahren mit dem Softwaresystem BASEMENT Workshop vom 6. Oktober 2006 an der VAW ETH Zürich Das Softwaresystem BASEMENT David Vetsch Inhalt 1. Motivation und Entstehungsgeschichte

Mehr

Was versteht man unter Softwarequalität?

Was versteht man unter Softwarequalität? Was versteht man unter? ist die Gesamtheit der Merkmale und Merkmalswerte eines Softwareproduktes, die sich auf dessen Eignung beziehen, festgelegte oder vorausgesetzte Erfordernisse zu erfüllen. Was ist

Mehr

7. OSE SYMPOSIUM. Dr. Siegfried Streitz

7. OSE SYMPOSIUM. Dr. Siegfried Streitz 7. OSE SYMPOSIUM Bewertung von Software Dr. Siegfried Streitz öffentlich bestellter und vereidigter Sachverständiger für Systeme der Informationsverarbeitung Siegfried.Streitz@Streitz.de Pingsdorfer Str.

Mehr

FPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007

FPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007 Paderborn Center for Parallel l Computing Paderborn University 29. Mai 2007 Übersicht 1. FPGAs 2. Entwicklungssprache VHDL 3. Matlab/Simulink 4. Entwicklungssprache Handel-C 5. Fazit Übersicht FPGAs 1.

Mehr

MDA-Praktikum, Einführung

MDA-Praktikum, Einführung MDA-Praktikum, Einführung Prof. Dr. Peter Thiemann Universität Freiburg 02.11.2005 Was ist MDA? MDA = Model-Driven Architecture Initiative der OMG Object Management Group: CORBA, UML,... offenes Firmenkonsortium

Mehr

Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006) Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006) Alles, was in dieser Schriftart gesetzt ist, dient nur zur Erläuterung und sollte im fertigen Lastenheft nicht mehr auftauchen! Der Umfang

Mehr

Verbesserung und Pflege der Dokumentation der DPP-Software Saros

Verbesserung und Pflege der Dokumentation der DPP-Software Saros Verbesserung und Pflege der Dokumentation der DPP-Software Saros Meike Johannsen Freie Universität Berlin Seminar "Beiträge zum Software Engineering", 2011 Inhalt Motivation Ziele dieser Diplomarbeit Vorgehensweise

Mehr

Ziele und Tätigkeiten von Architekten

Ziele und Tätigkeiten von Architekten Ziele und Tätigkeiten von Architekten Definition Software Architektur o A software architecture provides a model of a whole software system that is composed of internal behavioral units (i.e. components)

Mehr

Model Driven Architecture Praxisbeispiel

Model Driven Architecture Praxisbeispiel 1 EJOSA OpenUSS CampusSource Model Driven Architecture Praxisbeispiel 2 Situation von CampusSource-Plattformen Ähnliche Funktionen (Verwaltung von Studenten und Dozenten, Diskussionsforen,...), jedoch

Mehr

Kapitel 1 1 Einleitung

Kapitel 1 1 Einleitung Kapitel 1 Einleitung 1 1 1 Einleitung 1 Einleitung Die Informatik begegnet uns im Alltag ständig. Einmal natürlich als Rechenanlagen, die wir in Büros, Arztpraxen und zu Hause sehen. Zum anderen ist sie

Mehr

Kontinuierliche Architekturanalyse. in 3D

Kontinuierliche Architekturanalyse. in 3D Kontinuierliche Architekturanalyse in 3D Stefan Rinderle Bachelor an der HS Karlsruhe Master "Software Engineering" in München / Augsburg Seit 2013 bei Payback 2 Software-Visualisierung Visualisierung

Mehr

Systemtheorie 1. Formale Systeme 1 # WS 2006/2007 Johannes Kepler Universität Linz, Österreich

Systemtheorie 1. Formale Systeme 1 # WS 2006/2007 Johannes Kepler Universität Linz, Österreich Einführung 1 Systemtheorie 1 Formale Systeme 1 #342234 http://fmv.jku.at/fs1 WS 2006/2007 Johannes Kepler Universität Linz, Österreich Univ. Prof. Dr. Armin Biere Institut für Formale Modelle und Verifikation

Mehr

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015 Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 11. Februar 2015 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion

Mehr

Dokumentationskonzept

Dokumentationskonzept 1. Eigene Java Code Convention Dokumentationskonzept Soweit nichts Abweichendes angegeben, sind die Implementierer dazu gehalten, sich an die Regeln für guten Code aus den allgemeinen SUN Konventionen

Mehr

1. Grundbegriffe des Software-Engineering

1. Grundbegriffe des Software-Engineering 1. Grundbegriffe Software Engineering 1 1. Grundbegriffe des Software-Engineering Was ist Software-Engineering? (deutsch: Software-Technik) Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen

Mehr

Entwicklung des Softwareengineerings im Bereich der IT-TK-Technologie. Stefan Bläsius und Gregorio Roper Berlin,

Entwicklung des Softwareengineerings im Bereich der IT-TK-Technologie. Stefan Bläsius und Gregorio Roper Berlin, Entwicklung des Softwareengineerings im Bereich der IT-TK-Technologie Stefan Bläsius und Gregorio Roper Berlin, 05.05.2004 1 ServiceForce Die ServiceForce GmbH hat engagierte Mitarbeiter in den Bereichen

Mehr

Software Engineering

Software Engineering Software Engineering Gustav Pomberger, Wolfgang Pree Architektur-Design und Prozessorientierung ISBN 3-446-22429-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22429-7 sowie

Mehr

Software-Engineering

Software-Engineering Software-Engineering Problemdefinition Anforderungen an SW-Produkte Software-Lebenszyklus Steht am Anfang des SW-Lebenszyklus Stellt den Auftrag zur Entwicklung eines SW- Produktes dar Anforderungsanalyse

Mehr

2. Der Software-Entwicklungszyklus

2. Der Software-Entwicklungszyklus 2. Der Software-Entwicklungszyklus 2.1 Klassische Phasenmodelle 2.1.1 Wasserfallmodell 2.1.2 Rapid Prototyping 2.2 Objektorientierte Phasenmodelle 2.2.1 OOA / OOD / OOP 2.2.2 Iteratives Phasenmodell 2.2.3

Mehr

Interoperabilität von Simulatoren aus Software Engineering Sicht

Interoperabilität von Simulatoren aus Software Engineering Sicht MATLAB EXPO 2016 Interoperabilität von Simulatoren aus Software Engineering Sicht 10.05.2016 Prof. Dr.-Ing. R. Finsterwalder Ingenieurinformatik Universität der Bundeswehr München Projekt MASTER: Entwicklung

Mehr

Legacy-Modernisierung

Legacy-Modernisierung Mehr als nur Kosten sparen Frankfurt, 10.03.2016 The Perfect Way to Better Software 1 Legacy Entstanden In ca. 30 Jahren Nach damaligen Paradigmen: Monolith Mit damaligen Programmiersprachen: COBOL, PL/I,

Mehr

Modernisierung eines Legacysystems mittels MDSD

Modernisierung eines Legacysystems mittels MDSD Modernisierung eines Legacysystems mittels MDSD Tim Gesekus, Ralph Kar ATM Simulator Centre Research & Development DFS Deutsche Flugsicherung GmbH Tim Gesekus & Ralph Kar, OOP 2010 Inhalt Vorstellung Problemstellung

Mehr

Trivadis-Gadgets im Dienste ihrer Qualität: FAAT und PL/SQL Cop

Trivadis-Gadgets im Dienste ihrer Qualität: FAAT und PL/SQL Cop Trivadis-Gadgets im Dienste ihrer Qualität: FAAT und PL/SQL Cop Andreas Fend Consultant Michael Schmid Senior Consultant BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF HAMBURG KOPENHAGEN

Mehr

Wann lohnt sich GUI- Testautomatisierung?

Wann lohnt sich GUI- Testautomatisierung? Wann lohnt sich GUI- Testautomatisierung? Martin Moser, Gregor Schmid Quality First Software GmbH qfs@qfs.de Tel: +49 8171 919870 2006-2007 Quality First Software GmbH 26.02.2007 1 Überblick Hintergrund

Mehr

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis Einfach generieren Susanne Klar, Michael Klar Generative Programmierung verständlich und praxisnah ISBN 3-446-40448-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40448-1

Mehr

Kommentierung in C. Kommentierung in C. Von Sebastian Rothe 1/26. Kommentierung in C

Kommentierung in C. Kommentierung in C. Von Sebastian Rothe 1/26. Kommentierung in C Von Sebastian Rothe 1/26 Inhaltsverzeichnis 1. Programmierstil eine Übersicht 2. Motivation wozu Kommentierung? 3. Aspekte der Kommentierung 4. GLib als Beispiel 5. Dokumentationssysteme 6. Zusammenfassung

Mehr

Praxis der Softwareentwicklung WS 2015/16

Praxis der Softwareentwicklung WS 2015/16 Praxis der Softwareentwicklung WS 2015/16 Prof. Dr. Gregor Snelting LEHRSTUHL PROGRAMMIERPARADIGMEN 0 KIT 28. Universität Oktober des 2015- Landes Praxis Baden-Württemberg der Softwareentwicklung und WS

Mehr

Softwarequalität und Softwarealterung. Anne Moormann Benedikt Scholz Michael Herbener

Softwarequalität und Softwarealterung. Anne Moormann Benedikt Scholz Michael Herbener Softwarequalität und Softwarealterung Anne Moormann Benedikt Scholz Michael Herbener Präsentationstitel, Referent: Meta Normal-Roman 12 pt 2 Agenda Softwarequalität Softwarealterung Maßnahmen gegen Softwarealterung

Mehr

Entwicklung einer sensorlosen Motorregelung für Dentalbohrer nach IEC Dr. Michael Schwarz

Entwicklung einer sensorlosen Motorregelung für Dentalbohrer nach IEC Dr. Michael Schwarz Entwicklung einer sensorlosen Motorregelung für Dentalbohrer nach IEC 62304 Dr. Michael Schwarz Agenda ITK Engineering AG Von der Idee bis zum Produkt Überblick und Motivation Herausforderungen sensorlose

Mehr

Inhaltsverzeichnis VII

Inhaltsverzeichnis VII VII Teil 1: Grundlagen für die Entwicklung eines Software-Entwicklungs-Systems 1 1. Problemstellung und Aufbau der Arbeit 1 2. Begriffliche Abgrenzungen 4 2.1 Software 4 2.2 Software-Engineering (Prinzipien

Mehr

Erstellen von PDF-Dokumenten für Business-Anwendungen mit XSL-FO

Erstellen von PDF-Dokumenten für Business-Anwendungen mit XSL-FO Erstellen von PDF-Dokumenten für Business-Anwendungen mit XSL-FO Ich über mich Rudi Gast (rgast@ghs-software.de) seit 2000 angestellt bei der GHS Tätigkeiten: Projektleitung Softwareentwicklung F&E ca.

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2009 5. April 2009 Vorteile bei der Verwendung höherer Programmiersprachen Vorteile bei der Verwendung höherer Programmiersprachen 1. Einfache Notation

Mehr

StuPro Visualisierung der Ergebnisse von Programmanalysen

StuPro Visualisierung der Ergebnisse von Programmanalysen StuPro Visualisierung der Ergebnisse von Programmanalysen Abteilung Programmiersprachen und Compilerbau Daniel Gerlach, Mikhail Prokharau Universität Stuttgart 15. November 2010 Übersicht Vorstellungsrunde

Mehr

Model Driven Architecture (MDA)

Model Driven Architecture (MDA) Model Driven Architecture (MDA) Vortrag im Fach Software Engineering II BA Mannheim / Fachrichtung Angewandte Informatik Torsten Hopp Gliederung Einleitung Motivation Grundzüge der MDA Ziele & Potenziale

Mehr

So haben Sie Ihre Systeme im Griff

So haben Sie Ihre Systeme im Griff So haben Sie Ihre Systeme im Griff mit Visual Studio 2010 Egal, ob eine bestehende Anwendung erweitert oder modernisiert wird die meisten Projekte starten mit einer vorhandenen Codebasis. In den allermeisten

Mehr

Konzepte der Programmiersprachen

Konzepte der Programmiersprachen Konzepte der Programmiersprachen Lehrstuhl Prof. Plödereder Eduard Wiebe Institut für Softwaretechnologie Abteilung Programmiersprachen und Übersetzerbau Sommersemester 2007 Programm-Ausführung Programmiersprachen

Mehr

1.3 Geschichte der Programmiersprachen

1.3 Geschichte der Programmiersprachen 50er Jahre erste Definition höherer Programmiersprachen Effizienz maßgebliches Designziel FORTRAN (Backus) als Sprache für wissenschaftliches Rechnen (komplexe Berechnungen, einfachen Daten), Arrays, Schleifen,

Mehr

... die mit dem plus. Service-Leistungen. Von Experten für Experten After Sales Portfolio. automotive distribution produktion

... die mit dem plus. Service-Leistungen. Von Experten für Experten After Sales Portfolio. automotive distribution produktion ... die mit dem plus Service-Leistungen Von Experten für Experten After Sales Portfolio automotive distribution produktion Lösungen + Systeme + Komponenten Das plus an Erfahrung Seit mehr als 50 Jahren

Mehr

Wann lohnt sich GUI- Testautomatisierung?

Wann lohnt sich GUI- Testautomatisierung? Wann lohnt sich GUI- Testautomatisierung? Martin Moser, Gregor Schmid Quality First Software GmbH qfs@qfs.de Tel: +49 8171 919870 2006-2007 Quality First Software GmbH 26.02.2007 1 Überblick Hintergrund

Mehr

Systems Quality Day - Technical

Systems Quality Day - Technical Systems Quality Day - Technical Software Quality in der Praxis - Software-Qualitätsmanagement für den Mittelstand - Frank Guder, Tynos Bremen, 3. Juli 2008 Tynos Software-Qualität und Dienstleistungen

Mehr

Grundlagen der Programmierung! Kapitel 1: Einführung! Ziel der Vorlesung Grundlagen der Programmierung! Überblick über das Einführungs-Kapitel!

Grundlagen der Programmierung! Kapitel 1: Einführung! Ziel der Vorlesung Grundlagen der Programmierung! Überblick über das Einführungs-Kapitel! Herzog Grundlagen der Programmierung Dr. Christian Herzog Technische Universität München Wintersemester 2015/2016 Kapitel 1: Einführung Grundlagen der Programmierung TUM Wintersemester 2015/16 Kapitel

Mehr