und Komponenten-Technologien in der Modellierung ... - CES - KIT
und Komponenten-Technologien in der Modellierung ... - CES - KIT
und Komponenten-Technologien in der Modellierung ... - CES - KIT
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
2.5.1 Konzepte zum strukturierten Softwareentwurf<br />
2 Gr<strong>und</strong>lagen 33<br />
In Abb. 2.5.1.1 s<strong>in</strong>d die wichtigsten <strong>der</strong> heute existierenden Konzepte zum strukturierten Softwareentwurf<br />
aufgeführt <strong>und</strong> h<strong>in</strong>sichtlich <strong>der</strong> Kriterien Eigenständigkeit <strong>und</strong> Abstraktionsniveau<br />
bewertet. Eigenständigkeit ist dabei e<strong>in</strong> Maß für den Grad <strong>der</strong> Unabhängigkeit von den umgebenden<br />
Strukturen <strong>in</strong>nerhalb e<strong>in</strong>er Gesamtanwendung. Das Abstraktionsniveau bezeichnet die<br />
Nähe zum Anwendungskontext bzw. die Entfernung zur programmiertechnischen Systemebene.<br />
Eigenständig-<br />
keit<br />
hoch<br />
mittel<br />
ger<strong>in</strong>g<br />
ger<strong>in</strong>g<br />
Module<br />
Objekte<br />
mittel<br />
Agenten<br />
<strong>Komponenten</strong><br />
hoch<br />
Abstraktions-<br />
niveau<br />
Abb. 2.5.1.1: Konzepte zum strukturierten Softwareentwurf im Vergleich<br />
Die Bereichsüberschneidungen <strong>in</strong> Abb. 2.5.1.1 deuten an, dass <strong>in</strong> <strong>der</strong> Fachwelt über die Begriffe<br />
Modul, Objekt, Komponente <strong>und</strong> Agent noch längst ke<strong>in</strong> allgeme<strong>in</strong>er Konsens besteht.<br />
Vielmehr ist gerade beim Begriff <strong>der</strong> Softwarekomponente häufig e<strong>in</strong>e Vermischung mit den<br />
Begriffen Objekt <strong>und</strong> Agent festzustellen. Mit Softwarekomponenten werden meist die Eigenschaften<br />
Verteilung <strong>und</strong> Wie<strong>der</strong>verwendbarkeit assoziiert. Softwareagenten werden dagegen<br />
Eigenschaften wie Reaktivität 12 , Proaktivität 13 , kommunikative Kompetenz 14 , Mobilität <strong>und</strong><br />
Unabhängigkeit (Autonomie) zugesprochen, wobei sich letztere nach dem an den Agenten<br />
übertragenen Verantwortungsgrad bemessen lässt. Unter Softwaremodulen versteht man i.a.<br />
Strukturen <strong>der</strong> nicht-objektorientierten Programmierung, während Objekte als gekapselte Datenstrukturen<br />
die Gr<strong>und</strong>bauste<strong>in</strong>e objektorientierter Programme darstellen. Je nach verwendeter<br />
Sprache <strong>und</strong> Vorgehensweise können jedoch sehr unterschiedliche Aspekte mit dem Objektbegriff<br />
verb<strong>und</strong>en se<strong>in</strong>, so dass es auch hier häufig zu Vermischungen mit den an<strong>der</strong>en <strong>in</strong> Abb.<br />
12 Fähigkeit auf Verän<strong>der</strong>ungen wie beispielsweise externe Ereignisse zu reagieren<br />
13 Fähigkeit von sich aus Än<strong>der</strong>ungen zielorientiert zu <strong>in</strong>itiieren<br />
14 Fähigkeit mit an<strong>der</strong>en Agenten zu kommunizieren