Miro Samek’s QM graphical modeling tool (http://www.state-machine.com/qm/) seems like a good tool for semi graphical editing of UML statecharts for the QP framework. I would however like to use eclipse papyrus for this task because I have some experience with it.
Does anyone feel in a position to compare papyrus to QM?
Can anyone point me to good literature on code generation from statecharts made with papyrus?
I have never used Papyrus, but I just went through a tutorial for it.
The biggest difference that I see is that Papyrus appears to be primarily a UML modeling tool. Code generation is a “side-component” (The exact term from the penultimate page of A slide-ware tutorial on Papyrus usage for starters (2010-10-01).) Here’s a StackOverflow question about code generation with Papyrus… it sounds complicated. I browsed Papyrus’ forum and tutorials and didn’t find anything immediately helpful related to code generation.
UML is traditionally considered a design phase technology in the Waterfall software development process, so once software is modeled in UML, implementation is a separate process. Not so with QM.
QM, unlike Papyrus, is not a general UML modeling tool; it’s for modeling UML Statecharts with the sole purpose of compiling them, within the tool, to traceable C or C++ code. As you know, QM is related to QP, a state machine framework. QM builds code that utilizes QP.
QM’s is your modeller and IDE. Your final source code, barring external libraries, is 100% generated by QM. As you graphically develop your UML Statecharts, you’re expected to write C or C++ code that runs on transitions to/from your states. When you compile, QM combines your written code with its own generated code to produce a source files that you can compile immediately without making any additional changes.