Hallo zusammen, folgende Frage hätte ich an euch. Ich arbeite mit einer Menge Quellcode im Bereich embedded und muss immer mal wieder Code einpflegen. Davor muss ich jedoch den Code verstehen sowie Funktionen etc. Jetzt würde ich gerne anfang alles in UML zu dokumentieren. Sehe jedoch das es eine Menge Darstellungsformen gibt. Welche bietet sich an wenn ich in 1-2 Jahren nochmals darüber schaue und den Zusammenhang zwischen Funktionen cases usw schnell wieder verstehen möchte. besten Dank
Hmm... es gibt 13 Darstellungsformen, wovon jede eine andere Aufgabe erfüllt. Welches du davon wählst hängt stark von der Software ab. Klassendiagramm und Paketdiagramm (ab einer bestimmten Größe) sind immer gut. Timingdiagramm, wenn's zeitkritisch wird. Objektdiagramme sind meist nur um Snapshots darzustellen. Für Zustandsautomaten gibt's auch 2-3 Diagramme. Für Algorithmen empfiehlt ein Aktivitätsdiagramm, für Dialogsysteme ein Sequenzdiagramm. Anwendungsfalldiagramme sind nützlich, wenn viele Schnittstellen existieren, usw. Des weiteren kannst du zu einem Projekt so viele Diagramme erstellen, wie du willst, um jeweils andere Aspekte zubeleuchten. Ein gutes Tool spart hier eine Menge Arbeit. Hoffe, das hilft dir ein wenig. Gruß Kai
Besten Dank. Gibt es ein tool das mir aus einer eingegeben Basis an Infos ein paar Diagramme automatisch entwickelt. Bei mir ist vorallem wichtig den Zustand von Variablen, Inhalt von Arrays und Aufruf von Funktionen wichtig.
>Bei mir ist vorallem wichtig den Zustand von Variablen, Inhalt von Arrays >und Aufruf von Funktionen wichtig. Öhm... kennst du dich mit OOP eigentlich aus? - Variablen sind meist Attribute - Arrays sind Collections, Bags, etc. - Funktionen sind Methoden Tools gibt es, hängt aber von deiner Sprache, Programmierpragmatik und dem Budget ab. Welche Diagramme würdest du den in der SA (strukturierten Analyse) verwenden? Dann kann ich dir auch sagen, was in der UML geeignet wäre.
Hi ich kenne mich nicht in der oop aus, da ich nur in C programmieren muss. Ich merke schon ich muss erst einmal Basis Wissen aufbauen, da ich dir leider keine Antwort auf deine Frage geben kann welches Diagramm ich in der SA verwende. In erster Linie sind die Diagramme für mich das ich nach ein paar Monaten schnell reinfinde. Das heisst ich benötige ein Diagramm für den groben èberblick und eines für bestimmte Zuständen. mh! vielleicht stellt sich ersteinmal die Frage wie man an die Sache prinzipiell herangeht. Dachte nur an UML jedoch bemerke ich zum zweiten mal das vielleicht ein Blick davor nicht verkehrt wäre.
>Das heisst ich benötige ein Diagramm für den >groben èberblick und eines für bestimmte Zuständen. Ist meist der beste Ansatz. Bei C wirst du mit UML nicht weit kommen, da es sich um eine rein strukturierte Programmiersprache handelt, und von der UML nicht sinnvoll abgedeckt wird. Schau die die strukturierte Analyse mal an: http://de.wikipedia.org/wiki/Strukturierte_Analyse
okay danke nochmals. Ich werde mir das mal genauer anschauen. Werde dann und wann mal wieder hier was schreiben, meine Erfahrungen etc. Vielleicht schaust du ja nochmals rein. ;-) THX
Anbei doch noch eine Frage: Warum genau kann ich mit UML kein C Code sinnvoll darstellen? Fehlt es UML an Begrifflichkeiten ?
Man kann schon C-Code abbilden, wenn er einigermaßen "objektorientiert" aufgebaut ist. Ne Klasse ist dann halt ne struct, ihre Methoden sind diejenigen Funktionen, die damit arbeiten usw. Nur erzwingt C halt beim Softwareentwurf diese Vorgehensweise nicht ("erzwingen" tun es die OO-Sprachen streng genommen auch nicht), deswegen ist vorhandene Software in C oft so strukturiert, daß die nachträgliche Modellierung in UML schwerfällt, z.B. wenn das Bearbeiten bestimmter Datenstrukturen eben nicht sauber in Funktionen gekapselt ist, sondern alle Funktionen ihrem jeweiligen Zweck nach "wild" auf sämtlichen Daten im Programm herumwurschteln. Umgekehrt wird aber ein Schuh draus: Auch wenn zur Implementierung nur eine prozedurale Sprache zur Verfügung steht, tut es gut, vorher eine Objektorientierte Analyse der Aufgabe durchzuführen, wobei dann UML durchaus hilfreich ist.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.