Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Cover Titel Impressum Hingabe Vorwort
Entstehungsgeschichte Rollenbezeichnungen Sprachstil Material zum Buch Dank Vorwort zur 3. Auflage
Inhalt und Aufbau, Zielgruppen
Inhalt Aufbau Zielgruppen
Inhaltsverzeichnis Teil I Grundlagen
1 Modelle und Modellierung
1.1 Modelle, die uns umgeben
1.1.1 Die Bedeutung der Modelle 1.1.2 Beispiele für Modelle
1.2 Modelltheorie
1.2.1 Deskriptive und präskriptive Modelle 1.2.2 Die Modellmerkmale
1.3 Ziele beim Einsatz von Modellen
1.3.1 Modelle für den Einsatz in der Lehre und zum Spielen 1.3.2 Formale (mathematische) Modelle 1.3.3 Modelle für die Dokumentation 1.3.4 Explorative Modelle
1.4 Entwicklung und Validierung von Modellen
1.4.1 Die Entwicklung eines Modells 1.4.2 Die Validierung eines Modells 1.4.3 Beispiel: Wie wirkt sich die Methode der Entwicklung aus?
1.5 Modelle im Software Engineering 1.6 Theoriebildung 1.7 Modellierung durch Graphen und Grafiken
1.7.1 Beispiele für Graphen 1.7.2 Graphen der Mathematik und Graphen des Software Engineerings 1.7.3 Spezielle Eigenschaften der Graphen 1.7.4 Grafiken und Schaubilder 1.7.5 Skizzen im Software Engineering
1.8 Modellierung durch Zahlen: Skalen und Skalentypen
1.8.1 Die Skalentypen 1.8.2 Beispiele für die Skalentypen
1.9 Übergänge zwischen verschiedenen Skalentypen
1.9.1 Der Wechsel auf eine schwächere Skala
Boxplots
1.9.2 Rangliste und Ordinalskala 1.9.3 Schulnoten 1.9.4 Aufstellung einer Rangliste aus einer heterogenen Bewertung
2 Grundbegriffe
2.1 Kosten 2.2 Engineering und Ingenieur
2.2.1 Der Ingenieur als Leitbild 2.2.2 Merkmale der alten Ingenieurdisziplinen
2.3 Software
2.3.1 Was ist Software? 2.3.2 Spezielle Eigenschaften der Software
Software ist immateriell. Natürliche Lokalität gibt es bei Software nicht. Ein Programm realisiert keine stetige Funktion. Software-Systeme sind sehr komplex. Software-Systeme müssen autonom funktionieren. Die wenigen »Werkstoffe« der Software, die Sprachen, implizieren keine sinnvolle Strukturierung. Software spiegelt (in vielen Fällen) die Realität.
2.4 Arbeiten, die an Software ausgeführt werden 2.5 Weitere Grundbegriffe
2.5.1 Taxonomie 2.5.2 Methoden, Sprachen, Werkzeuge 2.5.3 Effektiv und effizient
3 Software Engineering
3.1 Fortschritte in Hardware und Software
3.1.1 Die Ausgaben für Hard- und Software 3.1.2 Die Entstehung des Software Engineerings 3.1.3 Definitionen für »Software Engineering«
3.2 Grundideen des Software Engineerings
3.2.1 Software Engineering versus Kunst der Programmierung 3.2.2 Quantität als Qualität
3.3 Probleme und Chancen des Software Engineerings
3.3.1 Software Engineering als globale Optimierung 3.3.2 Software Engineering als defensive Disziplin 3.3.3 Software Engineering als ein Gestrüpp von Problemen 3.3.4 Software Engineering als Technologie für die Köpfe 3.3.5 Software Engineering als Goldader
3.4 Lehrbücher und andere Basisliteratur
4 Software-Nutzen und -Kosten
4.1 Die Kosten eines Software-Projekts
4.1.1 Entwickeln oder Wiederverwenden (make or buy) 4.1.2 Die Gründe für Nutzen und Kosten, Kostenarten
4.2 Der Aufwand in den einzelnen Phasen des Software-Projekts und in der Wartung 4.3 Risiken durch Qualitätsmängel 4.4 Die Beziehung zwischen Fehlerentstehung und -entdeckung
5 Software-Qualität
5.1 Qualität 5.2 Taxonomie der Software-Qualitäten
5.2.1 Der Zusammenhang der Qualitätsaspekte 5.2.2 Einstufung verschiedener Produktqualitäten
Teil II Menschen und Prozesse
6 Menschen im Software Engineering
6.1 Software-Leute und Klienten 6.2 Rollen und Verantwortlichkeiten
6.2.1 Der Entwickler und seine Spezialisierungen 6.2.2 Projektleiter und Gruppenleiter 6.2.3 Der Kunde, die Anwender und andere Betroffene
6.3 Die Produktivität des Projekts
6.3.1 Einflussfaktoren der Produktivität 6.3.2 Die Variationsbreite der Entwickler-Produktivität 6.3.3 Die Messung der individuellen Produktivität
6.4 Motivation und Qualifikation
6.4.1 Die übliche Programmiererkarriere 6.4.2 Ein Modell der Motivation 6.4.3 Folgerungen für das Management 6.4.4 Veränderungen und persönliche Interessen
6.5 The Personal Software Process 6.6 Moralische und ethische Aspekte
7 Das Software-Projekt – Begriffe und Organisation
7.1 Begriffsbildung
7.1.1 Die Entdeckung der Software-Prozesse 7.1.2 Prozess, Projekt und Vorgehensmodell 7.1.3 Abgrenzung der Begriffe
7.2 Software-Projekte 7.3 Projekttypen
7.3.1 Das Entwicklungsprojekt 7.3.2 Das Auftragsprojekt 7.3.3 Das EDV-Projekt 7.3.4 Das Systemprojekt 7.3.5 Vergleich der Projekttypen
7.4 Formen der Teamorganisation
7.4.1 Kleine Teams und »Einzelkämpfer« 7.4.2 Anarchische Teams 7.4.3 Demokratische Teams 7.4.4 Hierarchische Teams 7.4.5 Chief-Programmer-Teams
7.5 Die interne Organisation der Software-Hersteller
7.5.1 Die funktionale Organisation 7.5.2 Die reine Projektorganisation 7.5.3 Die Matrixorganisation
8 Projektleitung und Projektleiter
8.1 Ziele und Schwerpunkte des Projektmanagements 8.2 Das Vorprojekt
8.2.1 Die Organisation des Vorprojekts 8.2.2 Das Angebot 8.2.3 Weitere Ergebnisse des Vorprojekts
8.3 Start des Projekts, Planung
8.3.1 Planungsaspekte
Die Planung der Aufgaben: Arbeitspakete
8.3.2 Projektphasen 8.3.3 Der Projektplan
8.4 Aufwand, Kosten, Risiken
8.4.1 Aufwandsschätzung 8.4.2 Ansätze der Aufwandsschätzung
Die Expertenschätzung Algorithmische Verfahren
8.4.3 COCOMO
Durchführung der COCOMO-Schätzung
8.4.4 COCOMO II 8.4.5 Das Function-Point-Verfahren
Die Suche nach einem Standard für die funktionale Größe Verfahren mit abweichender Grundlage der Schätzung
8.4.6 Risikomanagement
Definition und Beschreibung der Risiken Risikobewertung Prävention und Notfallmaßnahmen Risikoüberwachung
8.5 Projektkontrolle und -steuerung
8.5.1 Der Regelkreis der Projektdurchführung 8.5.2 Die Bewertung des Erreichten
Zeiterfassung Fertigstellungsgrad Earned Value Analysis
8.5.3 Termindrift-Diagramme (Meilenstein-Trend-Analyse)
8.6 Der Projektabschluss
8.6.1 Abschlussarbeiten 8.6.2 Rituale 8.6.3 Die Dokumentation der Erfahrungen
8.7 Projektmanagement als Führungsaufgabe
8.7.1 Die Wahl des Projektleiters 8.7.2 Woran scheitern Projekte? 8.7.3 Führungsprobleme 8.7.4 Regeln für das Projektmanagement
Auswahl und Tätigkeit der Projektleiter Kompetenz und Verteilung Kontrolle und Beurteilung Zeitlos gültige Regeln
9 Vorgehensmodelle
9.1 Code and Fix und der Software Life Cycle
9.1.1 Code and Fix 9.1.2 Der Software-Lebenslauf 9.1.3 Das Wasserfallmodell 9.1.4 Gliederung der Aktivitäten
9.2 Schwierigkeiten mit dem Wasserfallmodell
9.2.1 Die Interpretation des Wasserfallmodells 9.2.2 Kritik am Wasserfallmodell
9.3 Die Klassifikation der Programme nach Lehman
9.3.1 S-, P- und E-Programme 9.3.2 Zusammenhänge zwischen den Programmtypen und Folgerungen
9.4 Prototyping
9.4.1 Der Begriff des Prototyps 9.4.2 Prototypentwicklung 9.4.3 Spezielle Prototypen und verwandte Begriffe 9.4.4 Die Taxonomie von Floyd
9.5 Nichtlineare Vorgehensmodelle
9.5.1 Rapid Prototyping 9.5.2 Evolutionäre Entwicklung 9.5.3 Iterative Software-Entwicklung 9.5.4 Inkrementelle Software-Entwicklung 9.5.5 Das Treppenmodell
9.6 Das Spiralmodell
10 Prozessmodelle
10.1 Begriffe und Definitionen
10.1.1 Das Prozessmodell und seine Ausprägung im Prozess 10.1.2 Leichte und schwere Prozesse
10.2 Das Phasenmodell
10.2.1 Phasen und Meilensteine 10.2.2 Phasen und Meilensteine im Software-Projekt 10.2.3 Abgrenzung zum Wasserfallmodell 10.2.4 Vor- und Nachteile des Phasenmodells 10.2.5 Überlappende Phasen
10.3 Das V-Modell
10.3.1 Hintergrund und Geschichte 10.3.2 Eigenschaften des Modells 10.3.3 Projekttypen 10.3.4 Elemente des Modells
Aktivitäten, Produkte und Rollen Vorgehensbausteine Entscheidungspunkte und Projektdurchführungsstrategien Zusammenfassung
10.3.5 Entwicklungsstrategien 10.3.6 Tailoring 10.3.7 Projektdurchführung 10.3.8 Bewertung des V-Modells
10.4 Der Unified Process
10.4.1 Eigenschaften des Unified Process 10.4.2 Die Struktur des Unified Process
Rollen, Aktivitäten und Artefakte Phasen Arbeitsabläufe Iterationen
10.4.3 Der Rational Unified Process 10.4.4 Bewertung des Rational Unified Process
10.5 Cleanroom Development
10.5.1 Der Hintergrund des Cleanroom Development Process 10.5.2 Merkmale und Eigenschaften des Cleanroom Development Process
Die Situation vor dem Cleanroom-Ansatz Cleanroom-Konzepte Spezifikation und Entwurf mit Black, State und Clear Boxes Der statistische Test
10.5.3 Die Struktur des Modells 10.5.4 Bewertung des Cleanroom Development Process
10.6 Agile Prozesse
10.6.1 Die agile Bewegung 10.6.2 Das »Agile Manifesto« 10.6.3 Gemeinsamkeiten der agilen Prozesse 10.6.4 Extreme Programming
Grundlagen XP-Konzepte Bewertung des Extreme Programming
10.6.5 Crystal
Vorgehensweise, Regeln und Rollen in Crystal Bewertung von Crystal
10.6.6 Scrum
Rollen in Scrum Dokumente Der Scrum-Prozess Bewertung von Scrum
10.6.7 Zusammenfassung der agilen Prozesse
11 Bewertung und Verbesserung des Software-Prozesses
11.1 Voraussetzungen hoher Software-Qualität 11.2 CMMI, das Reifegradmodell für Software-Prozesse
11.2.1 Ziele und Annahmen des CMMI 11.2.2 Prozessbereiche 11.2.3 Varianten des Reifegradmodells
Die stufenförmige Variante Stufe 1 – Der ungeformte Prozess (initial) Stufe 2 – Der gesteuerte Prozess (managed) Stufe 3 – Der definierte Prozess (defined) Stufe 4 – Der geregelte Prozess (quantitatively managed) Stufe 5 – Der optimierende Prozess (optimizing) Einstufung Die kontinuierliche Variante
11.2.4 Prozessbewertung
Vorgehen bei der Begutachtung
11.2.5 Die Prozessreife-Profile des SEI
Untersuchungen und Kritik Schwächen der Prozessreife-Profile Negative Prozessreife Fazit
11.3 SPICE / ISO 15504
11.3.1 Die SPICE-Reifegrade 11.3.2 Die Bewertung der Prozesse
11.4 Prozessverbesserung
Teil III Daueraufgaben im Software-Projekt
12 Dokumentation in der Software-Entwicklung
12.1 Begriff und Einordnung 12.2 Ziele und Wirtschaftlichkeit der Dokumentation 12.3 Taxonomie der Dokumente 12.4 Die Benutzungsdokumentation 12.5 Die Qualität der Dokumente 12.6 Die Form der Dokumente, Normen 12.7 Dokumentation in der Praxis 12.8 Die gefälschte Entstehungsgeschichte
13 Software-Qualitätssicherung und -Prüfung
13.1 Software-Qualitätssicherung
13.1.1 Maßnahmen zur Hebung der Qualität 13.1.2 Schwerpunkte der Software-Qualitätssicherung 13.1.3 Aufgaben des Qualitätssicherungsingenieurs
13.2 Prüfungen
13.2.1 Sinn und Wirkung von Prüfungen
13.3 Mängel und Fehler
13.3.1 Definitionen 13.3.2 Kleine Theorie der Fehlersuche
13.4 Prüfungen im Überblick
13.4.1 Verifikation und Validierung 13.4.2 Positive und negative Prüfresultate 13.4.3 Möglichkeiten und Prinzipien der Software-Prüfung 13.4.4 Die Trennung der Korrektur von der Prüfung 13.4.5 Inspektionsverfahren
13.5 Reviews
13.5.1 Rollen im Technischen Review 13.5.2 Organisation und Ablauf 13.5.3 Review-Regeln 13.5.4 Das Review als soziales Experiment 13.5.5 Ein Erste-Hilfe-Kasten für die häufigsten Probleme mit Reviews 13.5.6 Gründe, die Einführung von Reviews zu verschieben
13.6 Varianten der Software-Inspektion
13.6.1 Durchsicht 13.6.2 Stellungnahme 13.6.3 Structured Walkthrough 13.6.4 Design and Code Inspection
14 Metriken und Bewertungen
14.1 Metriken, Begriff und Taxonomie
14.1.1 Metrik 14.1.2 Nutzen und Schaden durch Metriken 14.1.3 Anforderungen an Metriken 14.1.4 Arten von Metriken
14.2 Objektive Metriken, Messung
14.2.1 Die Motivation zur Messung 14.2.2 Die Sammlung von Basisdaten 14.2.3 Zusammenhänge zwischen den Basisdaten
14.3 Subjektive Metriken, Beurteilung
14.3.1 Feststellung, Bewertung und Benotung 14.3.2 Die systematische Beurteilung der Qualität 14.3.3 Ein Beispiel für die Qualitätsbewertung 14.3.4 Hinweise für die praktische Anwendung
14.4 Pseudometriken
14.4.1 Die Produktivität 14.4.2 Merkmale der Metriken 14.4.3 Die Bestimmung der Komplexität nach McCabe 14.4.4 Software Science nach Halstead 14.4.5 Metriken von Chidamber und Kemerer
14.5 Die Suche nach der geeigneten Metrik
14.5.1 Der Goal-Question-Metric-Ansatz 14.5.2 Die Entwicklung einer Pseudometrik
14.6 Ein Beispiel für die Entwicklung einer Metrik
14.6.1 Software-Zuverlässigkeit 14.6.2 Definition der Zuverlässigkeit 14.6.3 Quantifizierung der Zuverlässigkeit
14.7 Hinweise für die praktische Arbeit
14.7.1 Welche Metrik soll man einsetzen? 14.7.2 Standardisierte Metriken, Normen
15 Werkzeuge und Entwicklungsumgebungen
15.1 Bewertung von Methoden und Werkzeugen 15.2 Computer-Aided Software Engineering
15.2.1 Begriffe 15.2.2 Die Entwicklung von CASE 15.2.3 Klassifikationen von CASE-Systemen
15.3 Offene integrierte Software-Engineering-Umgebungen
15.3.1 Architekturen 15.3.2 Anforderungen zur horizontalen Integration 15.3.3 Das Problem der vertikalen Integration
15.4 Code-Generierung aus Modellen
15.4.1 Model-Driven Software Development 15.4.2 Model-Driven Architecture 15.4.3 Ein Beispiel für eine MDA
15.5 Die Auswahl eines Werkzeugs
Chancen Probleme
15.6 Ein Blick in die Praxis
Wahl und Auswahl von Werkzeugen Die Vorteile kleiner Werkzeuge Der Wert von Werkzeugen
Teil IV Techniken der Software-Bearbeitung
16 Analyse und Spezifikation
16.1 Die Bedeutung der Spezifikation im Entwicklungsprozess
16.1.1 Analyse und Spezifikation im Überblick 16.1.2 Der Nutzen der Spezifikation
16.2 Die Analyse
16.2.1 Grundbegriffe der Analyse 16.2.2 Dokumente der Analyse 16.2.3 Die Ist-Analyse 16.2.4 Die Soll-Analyse 16.2.5 Die Spielräume der Soll-Analyse 16.2.6 Techniken der Analyse 16.2.7 Die Schwierigkeiten der Analyse 16.2.8 Ein Praxisbericht
16.3 Begriffslexikon und Begriffsmodell 16.4 Anforderungen
16.4.1 Offene und latente Anforderungen, Entwickler-Optionen 16.4.2 Harte und weiche Anforderungen 16.4.3 Objektivierbare und vage Anforderungen 16.4.4 Funktionale und nichtfunktionale Anforderungen 16.4.5 Formulierung der nichtfunktionalen Anforderungen 16.4.6 Anforderungen zur Benutzbarkeit (Usability)
Methoden zur Verbesserung der Usability Personas
16.4.7 Der praktische Umgang mit den verschiedenen Anforderungen
16.5 Die Spezifikation im Überblick
16.5.1 Der Spezifikationsbegriff 16.5.2 Angestrebte Eigenschaften der Spezifikation 16.5.3 Die Abgrenzung der Spezifikation zum Entwurf
16.6 Die Darstellung der Spezifikation
16.6.1 Formale Spezifikation
Langsame Entwicklung oder Durchbruch?
16.6.2 Grafische Darstellungen der Spezifikation 16.6.3 Natürlichsprachliche Spezifikation
Sprachschablonen
16.7 Konzepte und Komponenten der Spezifikation
16.7.1 Die Ausrichtung auf die Anforderungen 16.7.2 Die Spezifikation der Funktion 16.7.3 Anwendungsfälle 16.7.4 Das Mengengerüst
16.8 Muster und Normen für die Spezifikation
16.8.1 Vorlagen und Standardstruktur 16.8.2 Normen
16.9 Regeln für Analyse und Spezifikation
17 Entwurf
17.1 Ziele und Bedeutung des Entwurfs
17.1.1 Die Gliederung in überschaubare Einheiten 17.1.2 Die Festlegung der Lösungsstruktur 17.1.3 Die hierarchische Gliederung 17.1.4 Die Entwicklungsrichtung 17.1.5 Der Entwurf in der Praxis
17.2 Begriffe
17.2.1 System 17.2.2 Komponente und Modul 17.2.3 Schnittstelle 17.2.4 Entwurf und Software-Architektur 17.2.5 Architekturbeschreibung 17.2.6 Zusammenfassung
17.3 Prinzipien des Architekturentwurfs
17.3.1 Modularisierung 17.3.2 Kopplung und Zusammenhalt 17.3.3 Information Hiding
Vor- und Nachteile des Information Hiding
17.3.4 Die Trennung von Zuständigkeiten 17.3.5 Die hierarchische Gliederung 17.3.6 Die Prinzipien im Zusammenhang
17.4 Der objektorientierte Entwurf
17.4.1 Das objektorientierte Metamodell 17.4.2 Ein Beispiel 17.4.3 Wie findet man fachliche Klassen? 17.4.4 Das Offen-geschlossen-Prinzip 17.4.5 Hinweise zur Codierung 17.4.6 Bewertung
17.5 Wiederverwendung von Architekturen
17.5.1 Architekturmuster
Das Architekturmuster der Software-Schichten Das Drei-Schichten-Architekturmuster Das Pipe-Filter-Architekturmuster Das Model-View-Controller-Architekturmuster Das Plug-in-Architekturmuster
17.5.2 Entwurfsmuster
Ein einführendes Beispiel Muster zum Verwalten von Objekten Muster zur Anbindung vorhandener Klassen oder Komponenten Muster zur Entkopplung von Komponenten Muster zur Trennung der unterschiedlichen von den gemeinsamen Merkmalen Die praktische Anwendung der Entwurfsmuster Bewertung
17.5.3 Bibliotheken und Rahmenwerke
Klassenbibliotheken Rahmenwerke Offene Rahmenwerke Geschlossene Rahmenwerke Bewertung
17.5.4 Produktlinien- und Referenzarchitekturen
Produktlinienarchitektur Referenzarchitektur
17.6 Die Qualität der Architektur
17.6.1 Qualitätskriterien 17.6.2 Die Bewertung und Prüfung einer Architektur
18 Codierung
18.1 Programmiersprachen als Werkstoffe 18.2 Regeln für die Codierung
18.2.1 Richtlinien 18.2.2 Ratschläge
18.3 Die Dokumentation des Codes
18.3.1 Der Feinentwurf 18.3.2 Integrierte Dokumentation
18.4 Realisierungen des Information Hiding
18.4.1 Kapselung
Ein Beispiel zur Kapselung Implementierung einer Kapsel in ADA Implementierung einer Kapsel in C
18.4.2 Abstrakte Datentypen
Implementierung eines Abstrakten Datentyps in ADA
18.4.3 Vergleich zwischen Kapselung und ADT
18.5 Robuste Programme 18.6 Das Vertragsmodell
18.6.1 Zusicherungen 18.6.2 Die Formulierung von Zusicherungen 18.6.3 Zusicherungen in Programmiersprachen 18.6.4 Bewertung
18.7 Werkzeuge zur Codierung
19 Programmtest
19.1 Begriffe und Grundlagen des Tests
19.1.1 Definition 19.1.2 Soll-Resultate 19.1.3 Der Regressionstest 19.1.4 Fehler und Fehlersymptome 19.1.5 Vollständiger Test und Stichprobe 19.1.6 Vor- und Nachteile des Testens
19.2 Einige spezielle Testbegriffe
19.2.1 Klassifikation nach den Grundlagen des Tests 19.2.2 Klassifikation nach dem Aufwand für Vorbereitung und Archivierung 19.2.3 Klassifikation nach der Komplexität des Prüflings 19.2.4 Klassifikation nach der getesteten Eigenschaft 19.2.5 Klassifikation nach den beteiligten Rollen
19.3 Die Testdurchführung
19.3.1 Der prinzipielle Testablauf 19.3.2 Testvorbereitung 19.3.3 Testausführung 19.3.4 Testauswertung 19.3.5 Das Testendekriterium 19.3.6 Werkzeuge für den Test
19.4 Die Auswahl der Testfälle
19.4.1 Der Testfall 19.4.2 Testkonzepte 19.4.3 Starke und schwache Äquivalenz 19.4.4 Anwendung der Äquivalenzklassen zur Testdatenauswahl
19.5 Der Black-Box-Test
19.5.1 Die Ziele des Black-Box-Tests 19.5.2 Die Testfallauswahl für die Funktionsüberdeckung 19.5.3 Der zustandsbasierte Test 19.5.4 Der Test auf Basis der Anwendungsfälle
19.6 Der Glass-Box-Test
19.6.1 Überdeckungskriterien für den Glass-Box-Test 19.6.2 Die Anweisungsüberdeckung 19.6.3 Die Zweig-, auch Entscheidungsüberdeckung 19.6.4 Die Termüberdeckung
Beispiel zur Ermittlung der Termüberdeckung MC/DC Coverage
19.6.5 Schwierigkeiten bei der Zweig- und Termüberdeckung 19.6.6 Die Pfadüberdeckung 19.6.7 Die Behandlung von Schleifen und die einfache Pfadüberdeckung 19.6.8 Überdeckungskriterien für Programmkomponenten
19.7 Testen mit Zufallsdaten 19.8 Beispiele zum Test
19.8.1 Demonstration der Teststrategien an einem konstruierten Beispiel
Zusammenfassung
19.8.2 Ein Beispiel zur Testfallauswahl 19.8.3 Spezifikation 19.8.4 Black-Box-Test
Eingabeüberdeckung Ausgabeüberdeckung Funktionsüberdeckung Grenzwerte Testsequenz
19.8.5 Glass-Box-Test 19.8.6 Schlussbemerkungen zum Test-Beispiel
19.9 Ausblick
20 Integration
20.1 Einbettung der Integration in die Software-Entwicklung 20.2 Integrationsstrategien
20.2.1 Integration in einem Schritt 20.2.2 Inkrementelle Integration
Top-down-Integration Bottom-up-Integration Kontinuierliche Integration
20.2.3 Ein Beispiel zur Integration
20.3 Probleme der Integration 20.4 Planung und Dokumentation der Integration 20.5 Grundsätze für die Integration
Teil V Verwaltung und Erhaltung von Software
21 Konfigurationsverwaltung
21.1 Grundlagen der Konfigurationsverwaltung
21.1.1 Software-Einheiten 21.1.2 Versionen 21.1.3 Varianten 21.1.4 Konfigurationen 21.1.5 Probleme mit Versionen und Varianten 21.1.6 Baselines und Releases 21.1.7 Konfigurationsverwaltung
21.2 Die Aufgaben der Konfigurationsverwaltung 21.3 Identifikation und Benennung von Software-Einheiten
21.3.1 Die Benennung von Software-Einheiten 21.3.2 Identität und Verwaltung von Software-Einheiten
21.4 Arbeitsbereiche für die Software-Verwaltung
21.4.1 Die Bereiche und ihr Zusammenspiel 21.4.2 Realisierung der Arbeitsbereiche
22 Software-Wartung
22.1 Begriff und Taxonomie der Software-Wartung
22.1.1 Verschleiß und Wartung 22.1.2 Definitionen des Wartungsbegriffs 22.1.3 Arten der Wartung 22.1.4 Die Kosten der Wartung
22.2 Inhalt und Ablauf der Wartung
22.2.1 Ein Modell der Wartung 22.2.2 Schritte der Wartung 22.2.3 Die Verteilung der geänderten Software
22.3 Risiken, Probleme und Grundsätze der Wartung
22.3.1 Risiken und Probleme 22.3.2 Grundsätze der Wartung
22.4 Die Wartungsorganisation
22.4.1 Problemmeldung und Änderungsantrag 22.4.2 Die Behandlung von Problemmeldungen 22.4.3 Die Wartungsingenieure 22.4.4 Der Änderungsausschuss
23 Reengineering
23.1 Software-Evolution 23.2 Reengineering
23.2.1 Begriffe 23.2.2 Vorgehensweise 23.2.3 Techniken 23.2.4 Varianten, Probleme, Erfahrungen
23.3 Refactoring
23.3.1 Code-Refactoring 23.3.2 Architektur-Refactoring
23.4 Erblasten, Legacy Software
23.4.1 Eigenschaften 23.4.2 Erneuern oder Ablösen einer Software-Erblast 23.4.3 Migration einer Software-Erblast 23.4.4 Die Ablösung auf einen Schlag
24 Wiederverwendung
24.1 Die alltägliche Wiederverwendung
24.1.1 Wiederverwendung außerhalb der Informatik 24.1.2 Die geläufige Wiederverwendung der Software
24.2 Terminologie und Taxonomie der Wiederverwendung
24.2.1 Der Begriff der Wiederverwendung 24.2.2 Wiederverwendbarkeit
24.3 Kosten und Nutzen der Wiederverwendung
24.3.1 Die Kosten der Wiederverwendung 24.3.2 Der Nutzen der Wiederverwendung
24.4 Chancen und Probleme der Wiederverwendung 24.5 Rahmenbedingungen für die Wiederverwendung 24.6 Entwicklungstechniken für die Wiederverwendung
Prozeduren Module, Information Hiding Objekte, Vererbung Programmgeneratoren Rahmenwerke Muster Komponenten Produktlinien Model Driven Architecture (MDA)
24.7 Von der Codierung zur Komposition
Teil VI Nachwort, Literatur und Index
25 Nachwort: Die Schule der Software-Ingenieure
25.1 Software Engineering in der Praxis 25.2 Stand der Technik und Stand der Praxis 25.3 Der Studiengang Softwaretechnik 25.4 Nachfrage und Angebot auf dem Ausbildungsmarkt
26 Literaturangaben
26.1 Hinweise zu den Literaturangaben 26.2 Literaturangaben, nach Verfassern geordnet 26.3 Verzeichnis der Normen und Standards
26.3.1 DIN-Normen 26.3.2 IEEE-Standards 26.3.3 ISO-Standards
Index Fußnoten
Kapitel 1 Kapitel 2 Kapitel 4 Kapitel 8 Kapitel 9 Kapitel 10 Kapitel 11 Kapitel 13 Kapitel 14 Kapitel 15 Kapitel 17 Kapitel 19 Kapitel 24 Kapitel 25
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion