Prinzipien des Software Engineering
aus www.iwiki.de, der freien Wissensdatenbank
Prinzipien sind GrundsĂ€tze, die einem Handeln zugrundegelegt werden. Prinzipien sind allgemeingĂŒltig und abstrakt, denn sie werden aus der Erfahrung hergeleitet und durch sie bestĂ€tigt. Der Softwaretechnik liegen folgende Prinzipien zugrunde:
Inhaltsverzeichnis |
Prinzip der Abstraktion
Abstraktion bedeutet die Verringerung der KomplexitĂ€t durch VernachlĂ€ssigung von Nebenaspekten und Details. Ein Synonym hierfĂŒr ist Modellbildung. Ziel der Abstraktion ist die Herleitung eines Modells eines betrachteten Systems aus einer spezifischen Sicht. Beispiele sind die modellhafte Darstellung von Informationsbeziehungen eines Systems, die modellhafte Darstellung der Aufrufbeziehungen eines Systems und die modellhafte Darstellung der DialogablĂ€ufe eines Systems. Ein Modell ist eine vereinfachte Dastellung der RealitĂ€t. Die Entscheidung darĂŒber, was in einem Modell dargestellt werden sollte, hĂ€ngt von der Zielsetzung des Modells und der Zielgruppe ab. Modelle dienen die VerstĂ€ndlichkeit zu erhöhen, da ein komplexes System nicht in seiner Gesamtheit erfasst und verstanden werden kann. Abstrahieren ist das Gegenteil von Konkretisieren.
Funktionale Abstraktion
Das âWasâ steht im Vordergrund, nicht das âWieâ
Beim Top-Down Entwurf definiert man abstrakte Funktionen, die fĂŒr die jeweils betrachtete Abstraktionsebene problemangepasst sind. Beim Bottom-Up Entwurf werden bereits vorhandene Funktionen zu neuen, abstrakteren Funktionen zusammengefasst.
Datenabstraktion
Die einfache Datenabstraktion besteht aus logisch zusammengehörenden Zugriffsoperationen, die selbst funktionale Abstraktionen darstellen. Die einfache Datenabstraktion beschreibt ein Datenobjekt nicht mehr durch seine Struktur (z.B. Feldtyp), sondern charakterisiert es durch die auf dem Datenobjekt ausfĂŒhrbaren Operationen. Hiervon unterscheiden sich noch die abstrakten Datentypen, welche eine Verallgemeinerung einer einfachen Datenabstraktion darstellen. In einem System können mehrere AusprĂ€gungen von einem abstrakten Datentyp existieren. Der abstrakte Datentyp wird duch seine Zugriffsoperationen definiert, welche selbst zu programmieren sind.
Prinzip der Strukturierung
Strukturieren bedeutet, fĂŒr ein komplexes System eine reduzierte Darstellung zu finden, die den Charakter des Ganzen mit seinen spezifischen Merkmalen widergibt. Strukturierung von Sytemen erfolgt duch Modularisierung und Hirarchisierung. Strukturierung von Programmen erfolgt durch die ausschliessliche Verwendung der Grundstrukturen, wie Sequenz, Selektion und Iteration.
Prinzip der Hirarchisierung
Ein System besitzt eine Hierarchie, wenn seinen Elementen eine Rangordnung zugeordnet ist. Elemente gleicher Rangordnung bilden eine Hirarchieebene. Kriterien fĂŒr die Bildung von Rangordnungen sind einheitliche Bedeutung, vergleichbare Eigenschaften der Elemente und zeitlicher Zusammenhang.
Prinzip der Modularisierung
Madularisieren bedeutet, ein Softwareprodukt aus einzelnen Bausteinen (Modulen) zusammenzusetzen, die die feste Bindung und die KontextunabhÀngigkeit als Eigenschaften besitzen. Ein Modul kapselt eine Entwurfsentscheidung.
Geheimnisprinzip
Das Geheimnisprinzip bedeutet, dass es fĂŒr den Benutzer einer funktionalen Abstraktion oder einer Datenabstraktion nicht ersichtlich ist, welche implentierungsabhĂ€ngigen Internas verwandt worden sind.
Prinzip 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.
Prinzip der Wiederverwendbarkeit
Um Zeit und Kosten bei der Systementwicklung zu sparen, ist es wirtschaftlich sinnvoll, erstellte Softwarekomponenten nicht nur in einem Produkt zu verwenden, sondern mehrfach einzusetzen. GrĂŒnde, die fĂŒr die Wiederverwendbarkeit sprechen sind Zeit und Kostenersparnis, Fehlerreduktion und ProduktivitĂ€tssteigerung.
Prinzip der Standardisierung
Standardisierung erfolgt durch die Anwendung von Richtlinien, Normen, Guidelines, etc. und betrifft die unterschiedlichsten Bereiche. Dazu gehören Namensvergabe, Pflichtenheftgestaltung, Einhaltungen von Programmierstandards, OberflĂ€chenstandards, Fehlermanagement. Standardisierung ist notwendig fĂŒr die Erstellung personenunabhĂ€ngiger Produkte, um die Mitarbeit mehrerer Personen an einem Projekt zu gewĂ€hrleisten, den Wartungsaufwand zu reduzieren und die QualitĂ€tskontrolle zu erleichtern.
Prinzip der Integrierten Dokumentation
Ein Softwareprodukt ist höchstens so gut wie seine Dokumentation. Eine Dokumentation sollte aktuell, adressatengerecht, umfangsgerecht, formgerecht und vollstÀndig sein.
Prinzip der Verbalisierung
Verbalisierung bedeutet, Gedanken und Vorstellungen in Worten auszudrĂŒcken und damit ins BewuĂtsein zu bringen. Gute Verbalisierung erreicht man durch aussagetechnische und einprĂ€gsame Namensgebung, geeigneten Kommentaren und selbstdokumentierende Konzepte.
