2009-05-26 12 views
2

Ich bin auf der Suche nach einem Diagramm-Programm, das bei der Entwicklung von Software helfen kann, von den High-Level-Anforderungen bis hin zu den Low-Level-Klassen und Funktionen.Diagramm-Programm, um beim Entwerfen von Software zu helfen?

Ich habe viele UML-Programme gesehen, aber sie lassen Sie nicht auf mehreren Detailebenen in derselben Karte entwerfen, als ob Sie "zoomen" und die Details eines Teils entwerfen könnten.

Gibt es Programme, die bei einem solchen Entwurf helfen? Programme, mit denen Sie auf der gleichen Karte auf hoher und niedriger Ebene entwerfen können?

+0

Dupe von http://stackoverflow.com/questions/324037/what-tools-do-you-use-make-architecture-diagrams, unter anderem. –

Antwort

3

Die meisten UML-Produkte von großen Anbietern lassen Sie tun, was Sie wollen. "Rational Rose" und "Enterprise Architect" sind nur zwei Beispiele, die ich benutzt habe. Mit ihnen können Sie Komponenten-, Paket- und Klasseninformationen in derselben Ansicht mischen. Beide bieten eine Möglichkeit, Anforderungen als Teil der Metadaten einer Klasse zu spezifizieren, und ich glaube, dass sie auch funktioniert.

Bearbeiten 23.08.2009 Ich habe gerade Topcased gefunden. Es ist kostenlos und macht viele der gleichen Dinge wie Rose & EA. Ich bin mir nicht sicher, ob man verschiedene Diagrammtypen in einer Ansicht mischen könnte, aber vielleicht möchten Sie es mal ausprobieren. Ich werde definitiv nachforschen, um es für meine persönlichen Projekte zu benutzen.

+1

Enterprise Architect ist genial, speziell die Funktion zum Erstellen von Sequenzdiagrammen aus Code :) – Kishork

+0

Solange Sie auf Windows-Plattform sind, natürlich –

+0

Enterprise Architect läuft auch auf Linux. http://www.sparxsystems.com/products/ea/sysreq.html – nathan

1

Ich habe Rational Rose verwendet und sieht aus wie es Ihren Bedürfnissen entspricht.

+0

Links bei IBM: http://www-01.ibm.com/software/awdtools/developer/rose/ und http://www.ibm.com/developerworks/rational/products/rose/ –

1

Sie könnten versuchen, BOUML, die, obwohl es Ihnen nicht erlaubt, "hineinzuzoomen", deckt alle Aspekte von UML, und ermöglicht es Ihnen, verschiedene Teile des Designs auf einmal (in mehreren Fenstern) zu sehen. Es ist auch kostenlos, was es für Sie möglicherweise wünschenswerter macht oder nicht und es ist ziemlich plattformübergreifend.

0

Zunächst einmal gibt es verschiedene Diagramme für verschiedene Dinge, die Sie ausdrücken möchten. Während des Software-Designs benutzt man nicht nur UML, sondern auch HTML-Skizzen und ähnliches. So wählen Sie das richtige Werkzeug für die richtige Aufgabe ist mein Rat. Erstellen Sie je nach Granularität eine Ordnerstruktur, eine für Frontend-Skizzen (Sie können sie hiracial platzieren), eine für Klassendiagramme und so weiter. Versuchen Sie also, einen Prozess zu etablieren, der alle Ihre Bedürfnisse erfüllt. Oft existiert das heilige Gral-Programm nur oder ist nicht gut, nur weil es versucht, viele Kunden zu befriedigen.

2

Ich empfehle BOUML. Es ist eine Anwendung Modellierung freier UML, die:

  • eine große SVG-Export Unterstützung hat, was wichtig ist, da sieht große Graphen im Vektor-Format, das schnell skaliert in z.B. Firefox, ist sehr praktisch (Sie können schnell zwischen "Vogelperspektive" Ansicht und Klasse Detailansicht),
  • dies kann als die Funktion "Zoom", die Sie fragen (ich benutze solche SVG-Exporte mein Selbst, in der Lage sein können) schnell Überblick Beziehung Gruppe von Klassen, und dann zoomen in Details von ausgewählten)
  • extrem schnell ist (schnellstes UML-Tool jemals geschaffen wird,) benchmarks Check-out,
  • hat rock solid C++, Java, PHP und andere importieren Unterstützung,
  • ist Multiplattform (Linux, Windows, andere Betriebssysteme),
  • ist voll funktionsfähig, beeindruckend intensiv entwickelt (siehe development history, es ist schwer zu glauben, dass so schnelle Fortschritte möglich sind).
  • unterstützt Plugins, hat modulare Architektur (diese user contributions erlaubt, sieht aus wie BOUML Gemeinschaft bildet oben)

Die „Zoom“ -Funktion können Sie sind gefragt durch SVG-Export erhalten werden. Ich benutze solche Exporte selbst in der Art, wie du fragst.