QM ist für Windows, Linux und macOS verfügbar.Die Hauptziele des QM ™ -Modellierungswerkzeugs sind: - Unterstützung beim Aufteilen Ihrer Software in ereignisgesteuerte Komponenten, die als aktive Objekte bezeichnet werden;- um Ihnen das grafische Entwerfen der hierarchischen Zustandsautomaten zu erleichtern, die diesen aktiven Objekten zugeordnet sind, und - um automatisch Code zu generieren, der produktionsqualitativ ist und vollständig von Ihrem Entwurf aus nachvollziehbar ist.Die wichtigsten Konstruktionsziele für QM ™ sind die Einfachheit und die Minimierung des "Kampfes gegen das Werkzeug".Im Vergleich zu den meisten anderen "High Ceremony" -Modellierungswerkzeugen, die derzeit auf dem Markt sind, ist QM ™ viel einfacher, codezentrierter und relativ einfach.Diese Charakterisierung ist nicht abwertend.Es bedeutet einfach, dass QM ™ das Design eindeutig und direkt auf C- oder C ++ - Code abbildet, ohne Zwischenschichten aus "Plattformunabhängigen Modellen" (PIMs), "Plattformspezifischen Modellen" (PSMs), komplexen "Modelltransformationen" oder"Aktionssprachen".Alle von Zustandsautomaten ausgeführten Aktionen werden direkt in C oder C ++ in das Modell eingegeben. Wie die meisten anderen Tools, die zur Codegenerierung in der Lage sind, basieren die mit QM ™ erstellten Modelle auf einem ereignisgesteuerten Framework.Dies liegt daran, dass ein solches Framework genau definierte "Framework-Erweiterungspunkte" bereitstellt, mit denen das Framework in Anwendungen angepasst werden kann, die wiederum genau definierte Regeln für die Codegenerierung bereitstellen.Ein Großteil der Einfachheit von QM ™ beruht jedoch auf der Tatsache, dass es mit der integrierten Familie von QP ™ -Frameworks (QP / C, QP / C ++ und QP-nano) geliefert wird, anstatt eine unbegrenzte Anzahl zu unterstützenvon noch zu definierenden Frameworks und Programmiersprachen.Hinweis QM ™ setzt eine bestimmte Gesamtarchitektur Ihrer Anwendung voraus, die die Objektorientierung mit dem bestimmten Modell der Nebenläufigkeit kombiniert, die als aktive Objekte (auch als "Akteure" bezeichnet) bezeichnet wird.In dieser Architektur besteht die Softwareanwendung aus zusammenarbeitenden, ereignisgesteuerten aktiven Objekten, die gemeinsam das gewünschte Verhalten liefern.
qm-state-machine-modeling-and-code-generation-for-embedded-systems