The Model Is the Code
The use of models in the software development community has been very slow to take hold over the last few decades. There are many reasons for this slow uptake of a very powerful approach, but perhaps two of the most obstinate impediments are these: the learning curve is widely seen as very steep, and even if a model is produced before coding begins, that model becomes obsolete rather quickly as the "real work" of writing and debugging code progresses.
The aim of this presentation is to take the audience through an existing fault management system that was developed for use on a surgical robot. This simple application was developed entirely through an information model and accompanying state models following the Executable UML philosophy and using a set of supporting tools that will soon be made available in the public domain. Without diving into the modeling techniques used (there are books available that will help interested audience members learn those aspects of the approach) the emphasis here will be to illustrate just how the model can be transformed into running code.
By the end of the presentation, it will hopefully be clear that this approach is not as daunting as it first appears. By putting the tools we have demonstrated to use (all of them freely available through a Git repository on the web) most of the development necessary to solve some other particular problem would be limited to creating good models rather than writing hundreds of lines of code.