dummies
 

Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur ebooks mit Firmenlizenz anzeigen:

 

Software Engineering - Architektur-Design und Prozessorientierung

Gustav Pomberger, Wolfgang Pree

 

Verlag Carl Hanser Fachbuchverlag, 2004

ISBN 9783446227880 , 278 Seiten

3. Auflage

Format PDF, OL

Kopierschutz Wasserzeichen

Geräte

23,99 EUR

Für Firmen: Nutzung über Internet und Intranet (ab 2 Exemplaren) freigegeben

Derzeit können über den Shop maximal 500 Exemplare bestellt werden. Benötigen Sie mehr Exemplare, nehmen Sie bitte Kontakt mit uns auf.

  • Du gibst das Leben - Das sich wirklich lohnt
    Der Bankräuber - Die wahre Geschichte des Farzad R.
    Den Himmel gibt's echt - Die erstaunlichen Erlebnisse eines Jungen zwischen Leben und Tod
    Der Geschmack des Wassers - Der Hexenprozess von Dillenburg
    Zeit der Vergebung
    Die Zehn Gebote - Mein Anspruch, meine Herausforderung
    Hurentaten - Die Erlebnisse eines Wiener Mädchen
    Mein Herz kennt die Antwort
  • Bleib cool, Papa - Guter Rat für viel beschäftigte Väter
    Arbeitspsychologie
    Handbuch Elektrotechnik - Grundlagen und Anwendungen für Elektrotechniker
    CAE-Methoden in der Fahrzeugtechnik
    Prozesse in Produktion und Supply Chain optimieren
    Organisationspsychologie - Gruppe und Organisation
    Elfenkind - Ein Vampir auf der Suche nach der Wahrheit. Und ein Elfenkind, das den Schlüssel zu allem in sich trägt ...
    Alphavampir (Alpha Band 2) - Fortsetzung der Paranormal Romance um eine Gruppe Gestaltwandler
 

 

Inhaltsverzeichnis

6

Vorwort

10

Dank

12

1 Gegenstandsbestimmung – Einführung und Überblick

14

1.1 Was ist Software?

14

1.2 Was ist Software Engineering?

16

1.3 Inhalt und Aufbau des Buches

18

Teil I Prozessorientierte Sicht – Organisation von Software-Projekten

22

2 Prozessmodelle

24

2.1 Das klassische sequenzielle Phasenmodell

24

2.2 Das V-Modell

31

2.3 Das Prototyping-orientierte Prozessmodell

39

2.3.1 Begriffe und Abgrenzung

39

2.3.2 Prozessmodell

42

2.4 Das Spiralmodell

45

2.4.1 Das Spiralmodell von Boehm

45

2.4.2 Das Spiralmodell von Pomberger und Pree

48

2.5 Der Unified Process

52

2.6 Ein objektorientiertes Phasenmodell

55

2.7 Leichtgewichtige (agile) Prozessmodelle

58

3 Software-Qualitätsmanagement

64

3.1 Was ist Softwarequalität?

64

3.2 Wo und wie entstehen Softwarequalität bzw. Qualitätsmängel

68

3.3 Grundzüge des Software- Qualitätsmanagements

70

3.3.1 Hauptaufgaben des Qualitätsmanagements

71

3.3.2 Objekte und Sichten des Qualitätsmanagements

71

3.3.3 Prinzipien des Qualitätsmanagements

73

3.3.4 Konstruktive und analytische Qualitätsmaßnahmen

74

Teil II Konstruktions- und Architektur-orientierte Sicht

78

4 Elementare Konzepte und Konstrukte

80

4.1 Der Algorithmenbegriff

80

4.2 Datenobjekte, Datentypen und elementare Aktionen

81

4.3 Schnittstellen und Aktivierung von Algorithmen

83

4.4 Systematischer Entwurf von Algorithmen

85

4.5 Grundlegende Konzepte der objektorientierten Programmierung

89

4.5.1 Klassen, Objekte (= Instanzen von Klassen), Instanzvariablen, Methoden

90

4.5.2 Vererbung, Polymorphismus, statischer Variablentyp, dynamischer Variablentyp und dynamische Bindung

92

5 Konstruktion anpassbarer Software

98

5.1 Konfigurationsparameter als Basis für anpassbare Software

98

5.1.1 Parametereinstellungen über globale, statische Variable

98

5.1.2 Callback-Style of Programming – Funktionen und Prozeduren als Parameter

100

5.2 Konzepte und Konstruktionsprinzipien für anpassbare, objektorientierte Produktfamilien

102

5.2.1 Das Konzept der abstrakten Kopplung

104

5.2.2 Das Konzept der Template- und Hook-Methoden

110

5.2.3 Das Hook-Method-Konstruktionsprinzip

113

5.2.4 Das Hook-Object-Konstruktionsprinzip

116

5.2.5 Das Composite-Konstruktionsprinzip

122

5.2.6 Das Decorator-Konstruktionsprinzip

129

5.2.7 Zusammenfassung der Merkmale der Konstruktionsprinzipien

138

5.3 Konstruktionsprinzipien und Entwurfsmuster

138

6 Modularisierung und Software-Architekturen

144

6.1 Software-Module

145

6.2 Erwünschte Eigenschaften von Modulen

147

6.2.1 Stabile und verständliche Modulschnittstellen durch Information Hiding

148

6.2.2 Balance zwischen Kopplung und Kohäsion

150

6.3 Ausprägungen von Modulen

153

6.3.1 Modul als Abstrakte Datenstruktur (ADS)

153

6.3.2 Modul als Abstrakter Datentyp (ADT)

154

6.3.3 Module und Komponentenstandards

158

6.4 Beispiele für ausgewogene Modularisierungen

160

6.4.1 Kohäsionsverbesserung durch Aufteilung von Modulen

160

6.4.2 Module für die Simulation diskreter Ereignisse

162

6.5 Beschreibung von Software-Architekturen

169

6.5.1 Datenzentrierung

170

6.5.2 Datenflussorientierung

171

6.5.3 Call&Return

172

6.5.4 Virtuelle Maschine

173

6.5.5 Unabhängige Komponenten

174

6.5.6 Vor- und Nachteile der Architekturmuster

175

6.6 Analyse von Software-Architekturen

175

6.6.1 Die Software-Architektur-Analyse-Methode (SAAM)

175

6.6.2 Beispiel einer Anwendung der SAAM

180

6.6.3 Was ist bei einer Anwendung der SAAM zu beachten? Was sind die Vorteile und Risiken?

185

6.7 Mehrdimensionale Modularisierung durch Aspektorientierte Programmierung (AOP)

186

6.7.1 Das Problem einer einzigen, statischen Modularisierung

187

6.7.2 Grundlegende Sprachkonzepte und -konstrukte von AOP

189

6.8 Zusammenfassung wichtiger Modularisierungsprinzipien

193

Teil III Ausgewählte Gebiete und Fallbeispiele

194

7 Transformationsorientierte Software1

196

7.1 Grundlegende Konzepte

196

7.1.1 Kontextfreie Grammatiken

197

7.1.2 Konstruktion eines Sprachanalysators (Scanner und Parser)

199

7.1.3 Attributierte Grammatiken

205

7.2 Fallbeispiel: Transformation strukturierter Texte

209

7.2.1 Entwurf einer attributierten Grammatik mit Coco/R

212

7.3 Zusammenfassung

228

8 Web-Service-basierte Software1

230

8.1 Was sind Web-Services

230

8.2 Vergleich mit anderen Technologien

232

8.2.1 CORBA

233

8.2.2 Java RMI

235

8.2.3 .NET Remoting Framework

235

8.3 Entwicklungsprozess für Web-Service-basierte Software

236

8.4 Grundlegende Konzepte und Standards

237

8.4.1 SOAP

237

8.4.2 Web-Service Description Language (WSDL)

239

8.5 Fallbeispiel: Elektronisches Telefonbuch

242

8.5.1 Ausgangssituation im Fallbeispiel

242

8.5.2 Beteiligte Komponenten

243

8.5.3 Schnittstelle des Web-Services

243

8.5.4 Implementierung des Web-Services mit Microsoft Visual Studio

244

8.5.5 Implementierung der Anwendungssoftware

245

8.5.6 Interaktionen zwischen Anwendungssoftware und Web-Service

247

8.6 Zusammenfassung

249

9 Eingebettete Echtzeitsoftware

250

9.1 Grundlegende Konzepte und Voraussetzungen

250

9.1.1 Charakteristika von Echtzeitsoftware

251

9.1.2 Logische versus tatsächliche Ausführungszeiten von Echtzeitsoftware

252

9.2 Fallbeispiel: Echtzeitsoftware eines autonom fliegenden Helikopters

254

9.2.1 Das OLGA-System

256

9.2.2 Die TDL-Spezifikation des Zeit- und Kommunikationsverhaltens

257

9.2.3 Die Übersetzung der TDL-Spezifikation in ein ausführbares Programm

260

9.2.4 Simulation eines TDL-basierten Regelungssystems

261

9.3 Zusammenfassung

263

Literaturverzeichnis

264

Stichwortverzeichnis

268