Graph transformations and software engineering: Success stories and lost chances

被引:2
|
作者
Toffetti, Giovanni [1 ]
Pezze, Mauro [1 ,2 ]
机构
[1] Univ Lugano, Lugano, Switzerland
[2] Univ Milano Bicocca, Milan, Italy
来源
关键词
Graph transformation; Software engineering; Model; Model transformation; Visual language; Dynamic system; Evolving system;
D O I
10.1016/j.jvlc.2012.10.003
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Textual as well as visual and diagrammatic notations are essential in software engineering, and are used in many different contexts. Chomsky grammars are the key tool to handle textual notations, and find many applications for textual languages. Visual and diagrammatic languages add spatial dimensions that reduce the applicability of textual grammars and call for new tools. Graph transformation systems have been studied for over 40 years and are a powerful tool to deal with syntax, semantics and transformation of diagrammatic notations. The enormous importance of visual and diagrammatic languages and the strong support that graph transformation provide to the manipulation of diagrammatic notations would suggest a big success of graph transformation in software engineering. Graph transformation systems find their application both as language generating devices and specification means for system evolution, and thus can have many applications in software engineering. In this paper we discuss the main features of graph transformation and how they can help software engineers. We look back to the many attempts to use graph transformations in software engineering in the last 15 years, identify some success stories, and discuss to what extent graph transformation succeeded, when they have not succeeded yet, what are the main causes of failures, and how they can help software engineering in the next 15 years. (C) 2012 Elsevier Ltd. All rights reserved.
引用
收藏
页码:207 / 217
页数:11
相关论文
共 50 条
  • [21] Agile Requirements Engineering: From User Stories to Software Architectures
    Dalpiaz, Fabiano
    Brinkkemper, Sjaak
    29TH IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE (RE 2021), 2021, : 504 - 505
  • [22] PERFORMANCE MODELING AND ANALYSIS OF SOFTWARE ARCHITECTURES SPECIFIED THROUGH GRAPH TRANSFORMATIONS
    Naddaf, Mahdi Rahimi
    Rafe, Vahid
    COMPUTING AND INFORMATICS, 2013, 32 (04) : 797 - 826
  • [23] Graph transformations on CDFG for granularity selection in hardware-software partitioning
    Wu, Q
    Wang, YF
    Bian, JN
    Xue, HX
    CAD/ GRAPHICS TECHNOLOGY AND ITS APPLICATIONS, PROCEEDINGS, 2003, : 303 - 308
  • [24] Deriving software performance models from architectural patterns by graph transformations
    Petriu, DC
    Wang, X
    THEORY AND APPLICATION TO GRAPH TRANSFORMATIONS, 2000, 1764 : 475 - 488
  • [25] Guest editorial to the special issue on Success Stories in Model Driven Engineering
    Di Ruscio, Davide
    Paige, Richard F.
    Pierantonio, Alfonso
    SCIENCE OF COMPUTER PROGRAMMING, 2014, 89 : 69 - 70
  • [26] Chances and Risks of Using Clicker Software in XL Engineering Classes - From Theory to Practice
    Stehling, Valerie
    Bach, Ursula
    Vossen, Rene
    Jeschke, Sabina
    PROCEEDINGS OF THE 2013 THIRD INTERDISCIPLINARY ENGINEERING DESIGN EDUCATION CONFERENCE (IEDEC 2013), 2013, : 23 - 27
  • [27] SUCCESS STORIES AND LOW CAPITAL-INVESTMENT ATTRACT ENTREPRENEURS TO SOFTWARE INDUSTRY
    ASBRAND, D
    EDN, 1985, 30 (16) : 327 - 328
  • [28] Measuring dimensions of Software Engineering projects' success in Academic context
    Wlodarski, Rafal
    Poniszewska-Maranda, Aneta
    PROCEEDINGS OF THE 2017 FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION SYSTEMS (FEDCSIS), 2017, : 1207 - 1210
  • [29] Success and Failure in Software Engineering: A Followup Systematic Literature Review
    Tamburri, Damian A.
    Palomba, Fabio
    Kazman, Rick
    IEEE TRANSACTIONS ON ENGINEERING MANAGEMENT, 2021, 68 (02) : 599 - 611
  • [30] Guest editorial for special section on success and failure in software engineering
    Mika V. Mäntylä
    Magne Jørgensen
    Paul Ralph
    Hakan Erdogmus
    Empirical Software Engineering, 2017, 22 : 2281 - 2297