User Ratings

★★★★★
★★★★
★★★
★★
11
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

Rate This Project
Login To Rate This Project

User Reviews

  • SMC has been invaluable to me in more than a few projects to reduce code complexity. Thanks to SMC I have been able to simplify program state behavior for programs in C++ and Java at least. This allowed for relatively linear efforts & time (v/s exponential) as program complexity grew. After searching for similar solutions many years go and again recently, SMC seems by far seems most effective!
  • Great to have a complete tool that... - uses the UML notation. - has language for expressing state machines in a single .sm file. - ability to generate code for lots of programming languages based on a single .sm file. - generate a visual presentation using Graphviz. Keep up the great work with this tool! I really appreciate it. :-D
  • very good project, thanks!
  • thanks man, great soft!
  • This is the second Finite State Machine generator I have used, and the most flexible. The first was QP, which worked well on the Windows C++ platform I was developing on in 2006. But the number of target platforms for QP is small, and this licensing is complicated. I am now using SMC for some networking logic in my iOS App ( http://dr.edgemoor.com ) and plan to expand its use for other items. Advantages: 1) Simple to use and understand 2) Fairly easy to debug. If you make a mistake in you FSM definition, it will toss a nasty run time error that will point you to what is missing. 3) I want to port my App to Android and possibly Windows Phone, and SMC will work well for this. I plan to put the maximum amount of logic into state machine definitions to make porting simpler. 4) The state charts that SMC generates are really useful. I include them in my DOxygen project documentation, and can quickly look at them to remember how things are working. Disadvantages: 1) Needs more volunteers to add to the documentation. ( Of course, I could be one of those volunteers, so I can't complain. )
  • I've been using SMC to implement non blocking i/o protocols, as well as manage distributed coordination in process groups. I've been using hand written FSMs for this previously, and I was amazed at how much simpler, correct, and more importantly _understandable_ these systems have become after using SMC. Just having the FSM definition in one place, not to mention HTML and DOT generated documentation is a HUGE advantage. Most excellent stuff. And now that Javascript is supported... :)
  • good job
  • I use SMC state machines to manage stock orders posted on exchanges. These are real orders on real exchanges and SMC tracks the order life cycle without a hitch.
  • I have been using this tool for years (starting with Bob Martin's original implementation), and it has become absolutely indispensable.
  • Very good job. I used it because of gvSIG CAD tools and after the reading of the tutorial (very accurate) I was able to work with it and do very nice things!
  • SMC is very easy to learn and use. I'm sucessfully using it in industrial applications. It is extremely lightweight from deployment and runtime point of view.