Why Does Mo+ Exist?

There are many tools out there that support modeling and/or code generation. So, why create another?

Hi, I am Dave Clemmer, and I am very passionate about model oriented development in general.  I have been directly involved in the development and/or use of modeling and code generation tools for nearly 30 years.

In the 1980s, I was inspired by parallel programming and computer language research at Rice University and UT Austin.  In particular, I was inspired by Dr. J.C. Browne’s work at UT, where I joined his startup company.  In the late 80s through the mid 90s, I was a key developer and contributor on some of the first modeling and code generation tools to hit the marketplace:

  • E/SP - This product was geared for the parallel computation marketplace.  It read in sequential FORTRAN code, modeled that code for parallelism, and generated parallel FORTRAN to run on parallel supercomputing architectures.
  • SES/Workbench - This product supported modeling and simulation to validate a wide variety of hardware and software architectures.
  • SES/Objectbench - This product supported modeling in the Shlaer-Mellor methodology, and supported generating C++ code and documents based on Shlaer-Mellor models.

Throughout my career I have always risen to key leadership positions in development organizations.  Managers have thought of me as a great programmer, but actually my effectiveness (as merely an average to good programmer) was primarily a result of applying various forms of model oriented development, anywhere from requirements analysis to code generation, which resulted in very effective personal and team productivity.

After leaving the modeling/code generation startup in the mid-90s, I have continuously been on the hunt for a tool that completes the loop for effective model oriented development.  In subsequent jobs, after using quite a number of other tools that quickly fell short on quantity and quality of auto managed code, I would often write my own tools to get the job done in order to meet company requirements and productivity.

Finally in 2011 after not finding a suitable technology, I embarked on the vision from these past experiences and additional ideas that resulted in Mo+.

So, here we are on the Mo+ journey.  What makes Mo+ different, powerful, and unique is that it combines the power of modeling, template based code generation, and object oriented programming into a truly model oriented approach for effective model oriented development.  I hope you join us on this journey.