I am currently designing a solution about IVR's (Interactive Voice Solution) system that should enable user design their own flows according to their needs. In this solution, user should need to arrange questions, answers, messages and their relationship with keypad or with voice commands according to their business flow.
After taking some time about researching about options, we conclude that visual programming interfaces can be a good option. According to my research, I found some libraries related to show flows:
NoFlo- http://noflojs.org/
Meemoo- http://meemoo.org/
jsPlumb- http://jsplumbtoolkit.com/home/jquery.html
ThreeNodes-http://idflood.github.io/ThreeNodes.js/
Dynamo-http://autodeskvasari.com/dynamo
mxGraph- http://www.jgraph.com/mxgraph.html
Node-RED- http://nodered.org/
GoJS- http://gojs.net/latest/index.html (paid)
My own experience with MAX MSP,Grasshoper (generative modelling plug-in works for Rhino), Visual programming interfaces can be really complicated while building complex structures. On the other hand, it is easier since it creates a better feedback loop compared to text based programming.
There are also some visual programming tools like, a popular example at these days, Scratch, http://scratch.mit.edu/ developed for learning how to code.
A favourite subject for Ph.D. dissertations in software engineering is graphical, or visual programming. […] Nothing even convincing, much less exciting, has yet emerged from such efforts. I am persuaded that nothing will. (Frederick Brooks The Mythical Man Mont)
There are games that are also using visual programming elements like (Drag-drop, rubber connections, clustering several elements into one, input and output parts - ex: jigsaw)
After collecting these all information, instead of being more clear about the way, I feel that I am lost in many different views and could not find solid information about whether they are working good for non-tech users. Can you please your knowledge or experience if you already worked on such a project?
Thank you,