-
Ritter
Den Thread hab ich glatt übersehen
. Nun, bei kleineren Sachen gibts im Großen und ganzen kaum Planung, vielleicht ein paar überlegen bzgl. logischer Strukur, das meiste wird aber on-the-fly entwickelt.
Bei ReVolTe, unserer Volume Rendering Funktionsbibliothek, die ich durchaus als größeres Projekt sehe, war der Ansatz da schon etwas anderer. Auf UML haben wir zwar verzichtet, weils ja im Grunde überhaupt nicht objektorientiert war, dafür haben wir aber das ganze API bereits im Vorhinein modelliert und die nötigen Funktionsköpfe zumindest mit Namen vorbereitet. Geholfen hat uns dabei unser Basis-Volume Renderer, den wir in lauter Einzelteile zerlegt hatten und in die nötigen Pakte untergebracht haben.
Resultat ist, dass man mit ReVolTe auf nahezu jeder Architektur (ab GeForce 4 und Radeon 8500) und jedem OpenGL-fähigen Windowing Toolkit einen Volume Renderer mit Transferfunktionen und Maussteuerung in knapp 100 Zeilen Code implementieren kann (und das schliesst den Window Toolkit spezifischen Code zur Fenstererstellung, etc. mit ein...).
ReVolTe wird gerade in ein paar größeren medizinischen Projekten eingesetzt, an zwei arbeite ich selbst mit. Hier ist natürlich der Umfang um einiges größer, und wir müssen uns noch ein ganzes Segmentierungs und Volumsberechnungs-API einfallen lassen, wo wir ganz, ganz sicher auf OOP setzen, und damit auch sicher unsere Struktur in Klassendiagrammen zeichnen (auch Use Case und Sequenzdiagramme, die machen sich in einer Diplomarbeit halt besonders gut).
Beim Entwickeln hätte ich mich nie erwischt, etwas anderes als Klassendiagramme zu benötigen. Sequenzdiagramme und Use-Case Diagramme sind zwar ziemlich klasse in einer Diplomschrift und veranschaulichen für einen Aussenstehenden die Abläufe besonders gut. Die Erfahrung hat aber gezeigt, dass die Dinger meistens erst nach Implementierung gemalt werden und somit in der Planung in den seltensten Fällen wirklich vorkommen (auch wenn jeder predigt, dass man sich unbedingt daran halten soll, es machen die wenigsten).
ER-Diagramme sind ja eher etwas für den Datenbank-Entwurf ... und da halt mich auch eher raus
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln