Hallo Forum,
ich übernehme ein Softwareprojekt, welches in einer grafischen
Programmierumgebung, ähnlich MatLab erstellt wurde.
Nun suche ich nach Tools oder Anwendungen, welche zur eigenen
Verdeutlichung des ganzen hilfreich sind.
Mir ist dabei klar, dass ich die einzelnen Makros annähernd abzeichnen
muss und deren Inhalt durch Prosa ersetzen - nun such ich dafür
geeignete Tools.
Mein Hauptaugenmerk soll ja auf dem Inhalt liegen, nicht auf Kästchen
mit Anschlüssen zeichnen.
Wer hat Ideen? Wer kann was empfehlen?
Danke für Eure Hilfe
RevEngSof
Danke, für deine Antwort - aber ich hab es wohl wirklich zu schlecht
erklärt.
Mir liegt alles vor - Entwicklungsumgebung mit Debugger sowie Quellcode
(falls man grafische Konstrukte so nennen kann)
Mir gehts nun darum, aus aus meiner Sicht sehr spärlich dokumentierten
Makros und nur ansatzweise deutbareb Signalnamen eine programmbezogene
Doumentation zu erstellen - so dass ich mir selbst, an die
Programmstruktur angelehnt, Sinn und Berechnungen nachvollziehen kann.
Zeig doch mal, wie sowas aussieht.
Das Problem an derart proprietären Dingen: Es gibt kaum allgemein
verfügbare Tools dafür. Ich schätze mal, da wird dir nichts anderes
übrig bleiben, als dich reinzuknien.
hast du den "Sourcecode", also die Grafik noch?
du suchst scheinbar ein "Software-Reverse-Documentating" Tool
Das dir die Dokumentation, die Vorher "vergessen" wurde, im Nachhinein
erstellt. Und zwar in verständlichen deutschen Sätzen, mit ein paar
Skizzen dass man es besser versteht. ?
Und dann bist du aufgewacht.. ;-)
Ernsthaft: man "programmiert" doch mit solchen grafischen
Programmierumgebung, weil man(n) eben glaubt, es wäre verständlicher als
Sourcecode...
(so kann man sich täuschen ;-) )
nicht "Gast" schrieb:> handelt es sich dabei um iCon-L ?
Ja, es geht wirklich um ein iCon-L-Projekt.
Der "Quellcode" an sich ist verständlich, mir geht es um das
nachvollziehen der Berechnungen und Lösungsansätze des Erstellers -
welche über Makros und Untermakros verteilt sind.
Aktuell verfolge ich einzelne Signale wie in einem Schnittmusterbogen -
finde aber kein "ordentliches" System, meine gewonnen Informationen
einfach, deutlich und auch für andere so abzubilden, dass deren Herkunft
und Veränderungen in Bezug zu den Makros gebracht werden können, aber
trotzdem auf schnellen Blick nachvollziehbar bleiben.
Erste Versuche so etwas darzustellen habe ich mit Smartdraw unternommen
- aber auch hier, bin ich mehr damit beschäftigt "blackboxes" mit Ein-
und Ausgängen zu zeichnen und weniger sie einfach aneinanderzureihen und
mit Signalen zu verknüpfen.
> Mir liegt alles vor - Entwicklungsumgebung mit Debugger sowie Quellcode
Dann brauchst du kein reverse-engineering.
Du möchtest nur Überblick.
Den hatte der ursprüngliche Programmierer auch nicht...
RevEngSof schrieb:> Erste Versuche so etwas darzustellen habe ich mit Smartdraw unternommen
Das wird dir nicht gefallen.
Meiner Erfahrung nach sind hier elektronische bzw. programmtechnische
Hilfsmittel nicht wirklich verfügbar.
Das einzige was bei mir tatsächlich und wirklich funktioniert ist Papier
unf Bleistift. Wobei der Prozess ein iterativer ist. Du fängst einfach
mal damit an, so wie du dir denkst, dass es in weiterer Folge hilfreich
sein könnte. Im Laufe des Analyseprozesses stellt sich dann raus, dass
du gewisse Dinge falsch verstanden hast, oder das man die anders
dokumentieren müsste. Und genau da schlägt dann die Stunde von Papier
und Bleistift. Mit einem Radiergummi ausradieren, bzw. durchstreichen
und daneben noch mal neu skizzieren geht um Größenordnungen schneller
als alles was du mit einem Programm erreichen kannst. Erst dann, wenn du
so einigermassen durch bist und das Komplettsystem überschaust und deine
Einblicke gewonnen hast, erst dann lohnt es sich, das ganze mit einem
Programm noch einmal reinzuzeichnen. Aber vorher ist das vergebliche
Liebesmühe, weil du dich mehr mit dem Tool an sich beschäftigst als
produktiv damit zu arbeiten.
Das ist meine persönliche Erfahrung und andere mögen zu anderen
Schlüssen gekommen sein. Allerdings hat sich diese Erfahrung bei vielen
Meetings bestätigt, in denen der Meetingleiter mit irgendwelchen Tools
das Brainstorming bzw. die Analyse begleitend dokumentieren wollte. 70%
der Zeit gehen dafür drauf, dass er irgendwelche Programmoptionen sucht
bzw. unbedingt und sofort wahre Formatierorgien durchzieht. Dinge, die
zu diesem Zeitpunkt keinen Menschen interessieren. Mit einer einfachen
großen Schultafel und Kreide ist man in dieser Phase 3 mal so schnell.
Und es unterbricht auch nicht dauernd den Denkprozess, wenn er wieder
mal Files sucht, Farben ändert, eine Abstimmung darüber gemacht wird, ob
das Blau nicht doch zu sehr Türkis ist, Überschriften statt 24 Punkt
doch besser 26 Punkt gemacht werden, ständig hin und her gescrollt wird
damit Tabellen alle gleich aussehen (die dann sowieso 10 Minuten später
wieder komplett umgekrempelt werden) etc.
Da du ein grafisches Programm hast, würde ich mir erst mal Ausdrucke
davon machen. Möglichst groß, damit Platz bleibt um Anmerkungen dazu zu
machen, erkannte Funktionsblöcke einzukreisen, Dinge dazuzuschreiben die
mir wichtig erscheinen, etc.
Das ist das, was zumindest bei mir noch am Allerbesten und Schnellsten
funktioniert. Ganz banal und ohne großen Aufwand. Und es sscheint auch
so zu sein, dass die manuelle Arbeit, die Tätigkeit an sich, den ganzen
Vorgang unterstützt.
Full ACK!
Wobei ich sagen muss, dass ich von Papier&Bleistift, nun zu Convertible
mit Digitizer-Stift umgestiegen bin...
nachteil ist halt, man hat nur 1ne seite vor sich...
Übrigends sollte man sich vor so einer nachdokumentationsorgie uml usw
kurz anschaun... hilft ungemein wenn man ideen hat, wie man was
darstellen kann...