Applying Template Meta-Programming Techniques for a Domain-Specific Visual Language--An Industrial Experience Report

  • Authors:
  • Mika Karaila;Tarja Systa

  • Affiliations:
  • Metso Automation Inc., Finland;Tampere University of Technology, Finland

  • Venue:
  • ICSE '07 Proceedings of the 29th international conference on Software Engineering
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Template meta-programming techniques can be used to increase efficiency in software development. These techniques have traditionally been used with textual programming languages, such as C++. In this paper, we discuss how corresponding techniques can be used with visual languages. The visual language under study in this paper is Function Block Language (FBL). FBL is used in Metso Automation for writing automation control programs that are executed in real-time distributed environments. Efficient development of high quality programs and easy customizability of existing programs are key requirements in practical customer projects. These requirements have been one of the main motivations to develop template meta-programming support in FBL discussed. In this paper, we focus both on the technical aspects and on the lessons learnt from programmers' experiences and ways to work with templates. FBL and the programming techniques proposed have been used in hundreds of real-world projects at Metso Automation.