2012-03-26 5 views
0

Ich suche für meinen Kunden einige visuelle Statechart-Editor. Ich baue für ihn Server-Anwendung, und er benötigt Tool, um Statecarts zu erstellen und sie auf die Server hochzuladen. Natürlich muss das Werkzeug die Möglichkeit haben, in ein lesbares Format zu exportieren (zB SCXML), damit ich einen Leser dafür bauen kann.Visual Statechart-Editor für Nicht-Programmierer, mit begrenzten Bedingungen, Ereignissen und Aktionen

Ich sah einige Werkzeuge, wie fsm-editor. Aber sie können nicht gut für mich sein, weil ich meinen Kunden auf bestimmte parametrische Zustände, parametrisierte Ereignisse und parametrisierte Aktionen beschränken möchte.

Zum Beispiel werde ich definieren:

conditions: coIsDoorOpen, coIsThereNAppelsOnTheTree(n as uint[0..200]), ... 
    events: evLightOn, evLightOff, evTimeout(ms as uint[1..10,000]), ... 
    actions: acSetAlarmOn, acCloseWindowN(n as uint[1..10]), ... 

und mein Kunde konnte einige Dutzend Zustandsdiagramme mit den expliziten vordefinierten Attribute (conds, Ereignisse & Aktionen) bauen, und laden Sie den Export von ihnen zu den approperiate Orte .

Es ist nicht notwendig, einen Statechart-Standard oder einen anderen Standard einzuhalten. Aber ich brauche Unterstützung für diese Dinge:

  • parametrisierte Bedingungen/Veranstaltungen/Aktionen
  • vor dem Betreten/Verlassen Zustand Aktionen

keine Notwendigkeit innere Variablen zu unterstützen; Ich kann Aktionen & Bedingungen dafür verwenden.

Gibt es ein Werkzeug dafür (vorzugsweise frei)?

Wenn nicht - gibt es eine Open Source (C#/JS) Implementierung von Editor, der alle abpve ohne stricting von conds/Veranstaltungen/Aktionen unterstützt, dass ich leicht brechen in konnte und die Strict-Modus angefordert hinzufügen?

Antwort

1

Basierend auf Ihren Bedürfnissen, wäre meine reflexartige Reaktion der Empfehlung Visio oder Dia hier unangemessen. Sie scheinen ein Tool mit einer API oder einer beschreibenden Sprache zu benötigen, um Benutzer an einen eingeschränkten Satz von Komponenten zu binden, und Ihre Anforderungen würden am besten von etwas relativ Einfachem bedient, wenn dies möglich wäre.

Ich bin neugierig, warum die Änderung des Quellcodes auf SCXML-GUI (fsm-editor) oder Violet Ihre Bedürfnisse jedoch nicht lösen würde. Sie scheinen darauf hinzuweisen, dass ein Open-Source-Programm, das in C# oder JavaScript geschrieben ist, am wünschenswertesten ist, was ich nicht leicht finden kann.

Aber im Interesse der Vollständigkeit, hier ist a comparable question that may help your search. Am bemerkenswertesten, this appears to be exactly what you desire und möglicherweise einen Kauf wert.

Viel Glück mit Ihrem Projekt.