Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...
Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...
Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
5.7. RICHTLINIEN FÜR DIE BENUTZUNG 127<br />
5.7.3 Vorgehen bei Änderung eines Dienstes<br />
Änderungen innerhalb des variablen Anteils eines Dienstes sind möglich,<br />
sofern geeignete Adaptionsstellen bei der Entwicklung des Frameworks<br />
eingeplant worden sind. Angenommen, dass diese Voraussetzungen erfüllt<br />
sind, sind folgende Schritte vom Klienten auszuführen:<br />
1. Anforderungen an adaptierten Framework-Code erfassen.<br />
2. Test, ob es bereits eine Adaption mit ähnlichen Anforderungen gibt.<br />
Falls es solche gibt, können diese evtl. nach geeigneten Modifikationen<br />
wiederverwendet werden.<br />
3. Zielcode mit Hilfe des aktiven API’s des aktuellen Kontextes erarbeiten.<br />
4. Zielcode testen.<br />
5. Variable Teile des Zielcodes identifizieren.<br />
6. Test, ob es bereits Spezifikationsdaten gibt, aus denen die variablen<br />
Teile des Zielcodes erzeugbar sind.<br />
7. Falls keine Spezifikationsdaten existieren, sind solche zu schaffen.<br />
Dabei ist zu unterscheiden, welcher Kategorie (Netz oder Bausteine)<br />
die Spezifikation zuzuordnen ist.<br />
5.7.4 Erweiterung des Frameworks<br />
Weitere Dienste lassen sich am Framework nur dann einfügen, wenn der<br />
Klient in dem bestehenden Framework neue Adaptionsstellen hinzufügt.<br />
Dazu muss er für den neuen Dienst:<br />
• eine zusätzliche Methode und evtl. Attribute in der Klasse “Netz”<br />
ergänzen. Falls diese Methode einen variablen Anteil hat, muss auch<br />
eine Adaptionsstelle ergänzt werden.<br />
• Virtuelle Methoden in einer gemeinsamen Oberklasse der Bausteine<br />
vereinbaren.<br />
• Adaptionsstellen für die Baustein-Beteiligung ergänzen.<br />
<strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-E