2009-07-27 5 views
-1

Leider bin ich nicht vertraut mit UML (noch nicht) und ich weiß nicht, welche Validierungen in den Standardwerkzeugen vorhanden sind. Aber nach dem Lesen this scheint es Validierung fehlt, so dass ich SO um Rat fragen.Kann jemand UML-Tools mit Validierung empfehlen

Ich will es Sachen zu finden, wie

  • logische Inkonsistenzen
  • getrennte Teile (Inseln)
  • unerreichbaren Teile (zum Beispiel einen Zustand mit nur Transitionen)
  • fehlende Fälle (ein Punkt ist mit 3 Übergängen definiert, aber nur 2 wird verwendet)
  • Andere Dinge, über die ich nicht weiß, aber jemand gewohnt an UML würde wollen.

Antwort

1

Wenn Sie Visual Studio verwenden, können Sie die RC-Version von VS 2010 Ultimate versuchen. Sie können Abhängigkeitsgraphen für .NET-Code generieren, um nicht verbundenen oder nicht erreichbaren Code zu finden. Sie können Layer-Diagramme aus Abhängigkeitsgraphen oder aus vorhandenen Artefakten erstellen, die zulässigen Abhängigkeiten zeichnen und dann mithilfe der Layer-Überprüfung sicherstellen, dass keine ungültigen Abhängigkeiten eingeführt werden. Diese Version enthält auch 5 UML-Diagramme: Klasse, Komponente, Sequenz, Anwendungsfall und Aktivität.

Gewusst wie: Generieren Graph Dokumente aus-Code: http://msdn.microsoft.com/en-us/library/dd409453%28VS.100%29.aspx#SeeSpecificSource

Sie können von Visual Studio Ultimate verwenden, um die Beziehungen und Organisation in vorhandenen Code durch Erzeugungs gerichteten Graphen Dokumente zu erkunden. Diese Diagramme stellen Codeelemente und ihre Beziehungen als eine Gruppe von Knoten dar, die durch Links oder Kanten verbunden sind. Sie können diese Diagramme verwenden, um den Code zu visualisieren, zu untersuchen und zu analysieren.

Gewusst wie: Information Architecture Explorer Mit: http://msdn.microsoft.com/en-us/library/dd409431%28VS.100%29.aspx

Sie können vertikale Schnitte oder "Scheiben" des Codes wählen, die Sie mit Architecture Explorer visualisieren möchten. Sie können Quellcode in einer Visual Studio-Lösung oder kompilierten verwalteten Code in DLL-Dateien oder.exe Dateien. Sie können den Architecture Explorer verwenden, um andere Domänen zu durchsuchen, indem Sie weitere Anbieter installieren. Wenn Sie den Code finden, den Sie visualisieren möchten, können Sie Diagramme generieren, um die Beziehungen in diesem Code zu untersuchen.

Gewusst wie: Erstellen Layer-Diagramme von Artifacts: http://msdn.microsoft.com/en-us/library/dd465141%28VS.100%29.aspx

... Diagramme Nutzschicht die High-Level-Architektur des Systems zu visualisieren und zu überprüfen, ob den Code mit diesem entspricht Design. Ordnen Sie die Artefakte aus einer Visual Studio-Lösung in logischen, abstrakten Gruppen oder Layern zu und ordnen Sie sie dieser Aufgabe zu. Diese Schichten beschreiben die Hauptaufgaben, die diese Artefakte ausführen, oder die Hauptkomponenten Ihres Systems. Pfeile zwischen den Layern repräsentieren die Interdependenzen, die zwischen diesen Artefakten existieren oder existieren sollten. Um Architekturbeschränkungen für den Code zu erzwingen, beschreiben Sie die beabsichtigten Abhängigkeiten von dem Diagramm und validieren Sie dann den Code anhand des Diagramms. Mithilfe von Layer-Diagrammen in dieser Weise können Sie dazu beitragen, dass der Code leichter zu verstehen, wiederzuverwenden und zu pflegen ist.

Layer Diagram http://i.msdn.microsoft.com/Dd465141.UML_LayerRefReading(en-us,VS.100).png

Gewusst wie: Validieren Kodex gegen Layer-Diagramme: http://msdn.microsoft.com/en-us/library/dd409395%28VS.100%29.aspx

Validieren Code gegen ein Schichtdiagramm hilft Ihnen auf dem Code architektonischen Einschränkungen durchzusetzen, wie es sich entwickelt. Wenn Sie diese Aufgabe ausführen, werden die Abhängigkeiten im Code mit den Abhängigkeiten im Diagramm verglichen.

RC Download: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=457bab91-5eb2-4b36-b0f4-d6f34683c62a.

Visual Studio 2010 Architectural Entdeckung & Modellierungstools Forum: http://social.msdn.microsoft.com/Forums/en-US/vsarch/threads

1

Nein, mir sind keine UML-Tools bekannt, die diese Dinge tun. Ich habe kürzlich eine Umfrage über Tools für meinen Arbeitgeber durchgeführt, und ich habe keine solchen Funktionen gesehen.

Sie wissen natürlich genau, was für ein hohes Maß an Funktionalität Sie erwarten. Sie schreiben, als ob Sie erwarten, dass diese häufig vorkommen.

+0

Man kann hoffen ... – Nifle

0

ich einige Forschungsprototypen Tools zeigen könnte, speziell für die Verifikation und Validierung von Klassendiagrammen mit oder ohne OCL-Einschränkungen (zB mein eigenes Prüfinstrument http://gres.uoc.edu/UMLtoCSP/ oder http://www.db.informatik.uni-bremen.de/projects/USE/), aber diese Tools sind genau das: Forschungswerkzeuge (mit alle damit verbundenen Einschränkungen).

Mir ist kein kommerzielles CASE-Tool bekannt, das erweiterte Verifizierungs-/Validierungsfunktionen bietet.