Lessons learned from developing mbeddr: a case study in language engineering with MPS

被引:14
|
作者
Voelter, Markus [1 ]
Kolb, Bernd [2 ]
Szabo, Tamas [2 ,3 ]
Ratiu, Daniel [5 ]
van Deursen, Arie [4 ]
机构
[1] Itemis, Stuttgart, Germany
[2] Itemis AG, Stuttgart, Germany
[3] Delft Univ Technol, Delft, Netherlands
[4] Delft Univ Technol, Software Engn, Delft, Netherlands
[5] Siemens AG, Munich, Germany
来源
SOFTWARE AND SYSTEMS MODELING | 2019年 / 18卷 / 01期
关键词
Language engineering; Language extension; Language workbenches; Domain-specific language; Case study; Languages; Experimentation; IMPLEMENTATION;
D O I
10.1007/s10270-016-0575-4
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Language workbenches are touted as a promising technology to engineer languages for use in a wide range of domains, from programming to science to business. However, not many real-world case studies exist that evaluate the suitability of language workbench technology for this task. This paper contains such a case study. In particular, we evaluate the development of mbeddr, a collection of integrated languages and language extensions built with the Jetbrains MPS language workbench. mbeddr consists of 81 languages, with their IDE support, 34 of them C extensions. The mbeddr languages use a wide variety of notations-textual, tabular, symbolic and graphical-and the C extensions are modular; new extensions can be added without changing the existing implementation of C. mbeddr's development has spanned 10 person-years so far, and the tool is used in practice and continues to be developed. This makes mbeddr a meaningful case study of non-trivial size and complexity. The evaluation is centered around five research questions: language modularity, notational freedom and projectional editing, mechanisms for managing complexity, performance and scalability issues and the consequences for the development process. We draw generally positive conclusions; language engineering with MPS is ready for real-world use. However, we also identify a number of areas for improvement in the state of the art in language engineering in general, and in MPS in particular.
引用
收藏
页码:585 / 630
页数:46
相关论文
共 50 条
  • [41] Dynamic Software Randomisation: Lessons Learned From an Aerospace Case Study
    Cros, Fabrice
    Kosmidis, Leonidas
    Wartel, Franck
    Morales, David
    Abella, Jaume
    Broster, Ian
    Cazorla, Francisco J.
    PROCEEDINGS OF THE 2017 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE), 2017, : 103 - 108
  • [42] Learned lessons from patients who take clozapine: A case study
    Lee, Heeyoung
    Scolieri, Britney B.
    Mullick, Prabir K.
    PERSPECTIVES IN PSYCHIATRIC CARE, 2018, 54 (04) : 457 - 461
  • [43] Lessons Learned from Developing Tailored Community Communication Campaigns in the HEALing Communities Study
    Stein, Michael D.
    Krause, Carol
    Rogers, Emma
    Silwal, Anita
    Helme, Donald
    Slater, Michael
    Beard, Dacia
    Lewis, Nicky
    Luster, Jamie
    Stephens, Kara
    Lefebvre, Craig
    JOURNAL OF HEALTH COMMUNICATION, 2023, 28 (10) : 699 - 705
  • [44] Computer-assisted learning in UK engineering degree programmes: lessons learned from an extensive case study programme
    Rothberg, S. J.
    Lamb, F. M.
    Willis, L.
    EUROPEAN JOURNAL OF ENGINEERING EDUCATION, 2006, 31 (04) : 395 - 406
  • [45] Lessons learned from the ckid study
    Furth, S.
    PEDIATRIC NEPHROLOGY, 2011, 26 (09) : 1733 - 1734
  • [46] Lessons Learned From the Application of Mixed Methods to an International Study of Prehospital Language Barriers
    Tate, Ramsey C.
    Hodkinson, Peter W.
    Sussman, Andrew L.
    JOURNAL OF MIXED METHODS RESEARCH, 2017, 11 (04) : 469 - 486
  • [47] Refining the usability engineering toolbox: Lessons learned from a user study on a visualization tool
    Javahery, Homa
    Seffah, Ahmed
    HCI AND USABILITY FOR MEDICINE AND HEALTH CARE, PROCEEDINGS, 2007, 4799 : 185 - 198
  • [48] Developing effective alliance partnerships -: Lessons from a case study
    Hipkin, Ian
    Naude, Pete
    LONG RANGE PLANNING, 2006, 39 (01) : 51 - 69
  • [49] LESSONS LEARNED FROM CASE HISTORIES ON LANDSLIDES
    Seco e Pinto, Pedro Simao
    Barradas, Joao
    Sousa, Arlindo
    GEOTECHNICAL ENGINEERING FOR DISASTER MITIGATION AND REHABILITATION 2011/GEOTECHNICAL AND HIGHWAY ENGINEERING - PRACTICAL APPLICATIONS, CHALLENGES AND OPPORTUNITIES, 2011, : 54 - 73
  • [50] LESSONS LEARNED FROM A SEVERE CASE OF MALARIA
    Smith, John
    Tasnif, Yasar
    CRITICAL CARE MEDICINE, 2009, 37 (12) : A514 - A514