Technology models for everyone

(C) 2016, Ralf Lämmel

Tutorial proposal


In our work on megamodeling, we have matured a vocabulary and corresponding language support which is specifically useful for modeling usage scenarios of software technologies such as those used in software development or generally in any IT context. The resulting models can be considered technology documentation useful to understand actual usage in actual systems or contexts and to provide guidance to using the technologies, e.g., in development.

In this tutorial, we describe the vocabulary, give many examples of technology models, and discuss the spectrum of language support. We have used technology models now in a number of university courses for students in computer science and business studies. In this manner, we also developed a guideline on how to author technology models and how to check them for correctness and completeness.

The following technologies will be discussed:

  • Language frontends with ANTLR
  • Metamodeling and MDE with EMF
  • The Angular web application framework
  • The Django web application framework
  • Object/relational mapping with Hibernate
  • XML data binding with JAXB
  • Microsoft Office compatibility pack
  • EDI with SAP ERP

We also hand out a simple megamodel checker that is easily used to check for syntactical correctness and well-formedness of megamodels.