Flexible Generators for Software Reuse and Evolution (NIER Track)

被引:0
|
作者
Jarzabek, Stan [1 ]
Ha Duy Trung [1 ]
机构
[1] Natl Univ Singapore, Sch Comp, Dept Comp Sci, Singapore, Singapore
关键词
Generators; Domain-Specific Languages; Software Reuse; Software Product Lines;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Developers tend to use models and generators during initial development, but often abandon them later in software evolution and reuse. One reason for that is that code generated from models (e. g., UML) is often manually modified, and changes cannot be easily propagated back to models. Once models become out of sync with code, any future re-generation of code overrides manual modifications. We propose a flexible generator solution that alleviates the above problem. The idea is to let developers weave arbitrary manual modifications into the generation process, rather than modify already generated code. A flexible generator stores specifications of manual modifications in executable form, so that weaving can be automatically re-done any time code is regenerated from modified models. In that way, models and manual modification can evolve independently but in sync with each other, and the generated code never gets directly changed. As a proof of concept, we have already built a flexible generator prototype by a merger of conventional generation system and variability technique to handle manual modifications. We believe a flexible generator approach alleviates an important problem that hinders wide spread adoption of MDD in software practice.
引用
收藏
页码:920 / 923
页数:4
相关论文
共 50 条
  • [21] Data Analytics for Game Development (NIER Track)
    Hullett, Kenneth
    Nagappan, Nachiappan
    Schuh, Eric
    Hopson, John
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 940 - 943
  • [22] Perspectives of Delegation in Team-Based Distributed Software Development over the GENI Infrastructure (NIER Track)
    Tiako, Pierre F.
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 796 - 799
  • [23] Systems Evolution and Software Reuse in OOP and AOP
    Przybylek, Adam
    EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2011, 230 : 221 - 235
  • [24] Architectural Stability and Evolution Measurement for Software Reuse
    Constantinou, Eleni
    Stamelos, Ioannis
    30TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, VOLS I AND II, 2015, : 1580 - 1585
  • [25] Managing software evolution through reuse contracts
    Lucas, C
    Steyaert, P
    Mens, K
    FIRST EUROMICRO CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS, 1997, : 165 - 168
  • [26] Toward a Better Understanding of Tool Usage (NIER Track)
    Sillitti, Alberto
    Succi, Giancarlo
    Vlasenko, Jelena
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 832 - 835
  • [27] Model-based Performance Testing (NIER Track)
    Barna, Cornel
    Litoiu, Marin
    Ghanbari, Hamoun
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 872 - 875
  • [28] A Combination Approach for Enhancing Automated Traceability (NIER Track)
    Chen, Xiaofan
    Hosking, John
    Grundy, John
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 912 - 915
  • [29] Blending Freeform and Managed Information in Tables (NIER Track)
    Mangano, Nicolas
    Ossher, Harold
    Simmonds, Ian
    Callery, Matthew
    Desmond, Michael
    Krasikov, Sophia
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 840 - 843
  • [30] Tracking Data Structures for Postmortem Analysis (NIER Track)
    Xiao, Xiao
    Zhou, Jinguo
    Zhang, Charles
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 896 - 899