Prinzipien des Software Engineering - PowerPoint PPT Presentation

About This Presentation
Title:

Prinzipien des Software Engineering

Description:

... Hierarchisierung Prinzip der Modularisierung Modulbildung 1 Modulbildung 2 Modulare Struktur berblick ber die internen Bindungsarten Kopplung ... – PowerPoint PPT presentation

Number of Views:63
Avg rating:3.0/5.0
Slides: 16
Provided by: SOFT159
Category:

less

Transcript and Presenter's Notes

Title: Prinzipien des Software Engineering


1
Prinzipien des Software Engineering
  • Strukturierung
  • Hierarchisierung
  • Abstraktion
  • Modularisierung
  • Lokalität
  • Mehrfachverwendbarkeit
  • Standardisierung
  • integrierte Dokumentation

2
Prinzip der Abstraktion
Abstraktion bedeutet die Verringerung der
Komplexität durch Vernachlässigung von
Nebenaspekten und Details
synonym Modellbildung
Ziel der Abstraktion Herleitung eines Modells
des
betrachteten Systems aus einer
spezifischen Sicht
Beispiele
- modellhafte Darstellung der Informations-
beziehungen eines Systems - modellhafte
Darstellung der Aufbauorganisation eines
Systems (Unternehmens) - modellhafte Darstellung
der Geschäftsprozesse eines Systems
(Unternehmens)
3
Prinzip der Strukturierung
Strukturieren bedeutet, für ein komplexes System
eine reduzierte Darstellung zu finden, die den
Charakter des Ganzen mit seinen spezifischen
Merkmalen wiedergibt
Strukturierung von Systemen erfolgt durch
- Hierarchisierung und
- Modularisierung
Strukturierung von Programmen erfolgt durch die
ausschließliche Verwendung der Grundstrukturen
- Sequenz, - Selektion
und - Iteration
4
Prinzip der Hierarchisierung
Ein System besitzt eine Hierarchie, wenn seinen
Elementen eine Rangordnung zugeordnet ist.
Elemente gleicher Rang- ordnung bilden eine
Hierarchieebene.
Kriterien für die Bildung von Rangordnungen
- organisatorische Zusammenhänge - vergleichbare
Eigenschaften der Elemente - zeitliche
Zusammenhänge
Hierarchisierung bildet die Grundlage für die
Strukturierung von Systemen
5
Prinzip der Modularisierung
Modularisieren bedeutet, ein (Software-) Produkt
aus einzelnen Bausteinen (Modulen)
zusammen- zusetzen, die die folgenden
Eigenschaften besitzen
- eine feste Bindung, d.h. in einem Modul werden
Dinge realisiert, die einen unmittelbaren
Zusammenhang besitzen - Kontextunabhängigkeit,
d.h. ein Modul ist unab- hängig von seiner
Umgebung entwickelbar, übersetzbar, prüfbar,
wartbar und verständlich - es existiert eine
Schnittstellenbeschreibung in Form einer
Spezifikation diese Beschreibung muss die
Parameter bzw. alle importierten und
exportierten Größen enthalten
- alle Internas des Moduls sind dem Anwender
verborgen, d.h. es weiß nicht, wie ein Modul
seine Aufgabe erledigt, er weiß nur, welche
Aufgabe durch ein Modul gelöst wird - alle für
die Anwendung eines Moduls relevanten
Informationen befinden sich an einer Stelle
(Lokalitätsprinzip) - eine geringe Datenkopplung,
d.h. die Menge und die Vielfalt der Daten,
die zwischen den Modulen eines Systems
ausgetauscht werden, ist auf ein Minimum zu
reduzieren
6
Modulbildung 1
Ein Modul ist eine softwaretechnische Einheit,
die eine funktionale und/oder eine
Datenabstraktion realisiert
  • Ein Modul besitzt einen eigenen Namen.
  • Von einem Modul ist (nach 'außen') bekannt, was
    es ausführt (nicht wie es ausgeführt wird).
  • Ein Modul ist unter seinem Namen aufrufbar, d.h.
    die im Modul enthaltenen Anweisungen werden zur
    Ausführung gebracht.
  • Ein Modul besitzt eine Eingabeschnittstelle, d.h.
    dem Modul werden vom rufenden Programm Daten
    (Inputs) übergeben.
  • Ein Modul besitzt eine Ausgabeschnittstelle, d.h.
    es werden i.d.R. Daten (Outputs) an das rufende
    Programm zurückgegeben.

7
Modulbildung 2
  • Abgeschlossenheit
  • Jeder Modul verkörpert eine Entwurfsentscheidung,
    d.h. eine in sich geschlossene Aufgabe
  • Wohldefinierte Schnittstellen
  • Vollständige und eindeutige Spezifikation der
    Schnittstellen
  • Geheimnisprinzip
  • Jeder Modul kennt eine saubere Trennung von
    Spezifikation und Konstruktion, d.h. eine
    Trennung von 'was' und 'wie'
  • Gegenseitige Nicht-Beeinflussung
  • Änderungen in der Konstruktion eines Moduls
    ziehen keine Änderungen in den anderen Modulen
    nach sich
  • Handhabbarkeit
  • Jeder Modul ist gut überschaubar, also nicht zu
    groß und kann von einer Person bearbeitet und
    verstanden werden
  • Prüfbarkeit
  • Jeder Modul ist so beschaffen, dass sein
    korrektes Funktionieren unter Beachtung der
    Schnittstellenspezifikation geprüft werden kann
  • Integrierbarkeit
  • Module müssen zu einem Ganzen - ohne Schaffung
    neuer Probleme - integrierbar sein
  • Planbarkeit
  • Ein Modul muss planbar und kontrollierbar sein.
    Bei der Konstruktion müssen sich Meilensteine
    festlegen lassen

8
Modulare Struktur
Bindung
Kopplung
Kopplung
Kopplung
Bindung Bindung
Bindung
Kopplung
Kopplung
Kopplung
Kopplung
Bindung
Bindung
Bindung intramodulare BeziehungKopplung
intermodulare Beziehung
9
Überblick über die internen Bindungsarten
a) zufällig b) logisch c) zeitlich d)
prozedural e) kommunikativ f) sequentiell g)
funktional
schwache Bindung starke Bindung
Modul führt genau eine problem- bezogene
Funktion aus
ja
nein
Wodurch hängen die Aktivitäten des Moduls
zusammen ?
Daten Kontrollfluß weder
noch
Reihenfolge Reihenfolge
alle Aktivitäten wesentlich
wesentlich derselben

Kategorie
ja nein ja
nein ja nein
funk- tional
sequen- kommuni- tiell kativ
prozdural zeitlich logisch zufällig
10
Kopplung
Die Kopplung von Modulen ist der Grad der
Abhängigkeit zwischen den Modulen eines Systems
Kopplungsmechanismus
Auf welche Art und Weise werden die Module
aufgerufen ?
Schnittstellenbreite
In welchem Umfang werden Daten zwischen den
Modulen übergeben und wie sind sie strukturiert ?
Kommunikationsart
In welcher Art und Weise beeinflussen
die übergebenen Daten den Ablauf eines Moduls ?
11
Prinzip der Lokalität
Optimale Lokalität liegt vor, wenn alle zur
Lösung eines Problems oder zur Einarbeitung in
einen Bereich benötigten Informationen an einer
Stelle zu finden sind
Nicht benötigte Informationen sind an dieser
Stelle nicht vorhanden !
Für den Bereich der Implementierung gilt der
Grundsatz, dass rund 30 Anweisungen (Befehle)
die obere Grenze dessen darstellen, was beim
Lesen eines Listings, einer Modulbeschreibung,
etc. ohne größere Probleme bewältigt werden kann
12
Prinzip der Mehrfachverwendbarkeit
Um Zeit und Kosten bei der Systementwicklung zu
sparen, ist es sinnvoll und wirtschaftlich, erstel
lte Softwarekomponenten nicht nur in einem
Produkt zu verwenden, sondern mehrfach einzusetzen
!
Gründe, die für die Wiederverwendbarkeit sprechen
- Zeiterparnis - Kostenersparnis -
Fehlerreduktion - Erhöhung der Stabilität
13
Prinzip der Standardisierung
Standardisierung erfolgt durch die Anwendung
von Richtlinien, Normen, Regeln etc. und betrifft
die unterschiedlichsten Bereiche
- Namensvergabe - Pflichtenheftgestaltung -
Verwendung von Standardgliederungen bei der
Dokumenterstellung - Einhaltung von
Programmierstandards - Oberflächenstandards
(Masken, Listen, etc.) - einheitliches
Fehlermanagement - einheitliche Help -
Gestaltung - einheitliche Verwendung von
Funktionstasten etc.
14
Prinzip der integrierten Dokumentation
Ein Softwareprodukt besteht aus
Programmcode Dokumentation
These
Ein Softwareprodukt ist höchstens so gut wie
seine Dokumentation
Dokumentation
Produktdokumentation Projektdokumentation
Zielgruppen Entwickler und Benutzer
15
Zusammenfassung
Abstraktion
Strukturierung
Hierarchisierung Modularisierung
Lokalität
Mehrfachverwendbarkeit
Standardisierung integr. Dokumentation
a b a entsteht aus b b
ergibt a a b a steht in
Wechselwirkung mit b a b
a setzt b voraus
Write a Comment
User Comments (0)
About PowerShow.com