• DocumentCode
    2745722
  • Title

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

  • Author

    Karaila, Mika ; Systa, Tarja

  • Author_Institution
    Finland Energy & Process Autom., Res. & Technol. Dept., Metso Autom. Inc., Tampere
  • fYear
    2007
  • fDate
    20-26 May 2007
  • Firstpage
    571
  • Lastpage
    580
  • 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 realtime 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.
  • Keywords
    control engineering computing; metacomputing; visual languages; visual programming; Metso Automation; automation control programs; domain-specific visual language; function block language; template meta-programming techniques; Application software; Automatic control; Automatic programming; Automation; Computer industry; Computer languages; Programming profession; Software engineering; Software systems; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2007. ICSE 2007. 29th International Conference on
  • Conference_Location
    Minneapolis, MN
  • ISSN
    0270-5257
  • Print_ISBN
    0-7695-2828-7
  • Type

    conf

  • DOI
    10.1109/ICSE.2007.16
  • Filename
    4222618