Analyzing Variability in 25 Years of Industrial Legacy Software: An Experience Report

被引:1
|
作者
Rosiak, Kamil [1 ]
Urbaniak, Oliver [1 ]
Schlie, Alexander [1 ]
Seidl, Christoph [1 ]
Schaefer, Ina [1 ]
机构
[1] TU Braunschweig, Braunschweig, Germany
关键词
Software Prodct Line; Legacy Software; Variability; Clone-and-Own;
D O I
10.1145/3307630.3342410
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In certain domains, safety-critical software systems may remain operational for decades. To comply with changing requirements, new system variants are commonly created by copying and modifying existing ones. Typically denoted clone-and-own, software quality and overall maintainability are adversely affected in the long-run. With safety being pivotal, a fault in one variant may require the entire portfolio to be assessed. Thus, engineers need to maintain legacy systems dating back decades, implemented in programming languages such as Pascal. Software product lines (SPLs) can be a remedy but migrating legacy systems requires their prior analysis and comparison. For industrial software systems, this remains a challenge. In this paper, we introduce a comparison procedure and customizable metrics to allow for a fine-grained comparison of Pascal modules to the level of individual expressions. By that, we identify common parts of while also capturing different parts between modules as a basis for a transition towards anSPLs practice. Moreover, we demonstrate the feasibility of our approach using a case study with seven Pascal modules totaling 13,271 lines of code with an evolution-history of 25 years and show our procedure to be fast and precise. Furthermore, we elaborate on the case study and detail peculiarities of the Pascal modules, which are characteristic for an evolution-history of a quarter century.
引用
收藏
页码:65 / 72
页数:8
相关论文
共 50 条
  • [1] Refactoring of Legacy Software Using Model Learning and Equivalence Checking: An Industrial Experience Report
    Schuts, Mathijs
    Hooman, Jozef
    Vaandrager, Frits
    [J]. INTEGRATED FORMAL METHODS (IFM 2016), 2016, 9681 : 311 - 325
  • [2] An Experience Report on Analyzing Industrial Software Systems Using Code Clone Detection Techniques
    Yoshida, Norihiro
    Higo, Yoshiki
    Kusumoto, Shinji
    Inoue, Katsuro
    [J]. 2012 19TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), VOL 1, 2012, : 310 - 313
  • [3] Analyzing PL/1 Legacy Ecosystems: An Experience Report
    Aeschlimann, Erik
    Lungu, Mircea
    Nierstrasz, Oscar
    Worms, Carl
    [J]. 2013 20TH WORKING CONFERENCE ON REVERSE ENGINEERING (WCRE), 2013, : 441 - 448
  • [4] Automatically analyzing software processes: Experience report
    Podorozhny, RM
    Perry, DE
    Osterweil, LJ
    [J]. UNIFYING THE SOFTWARE PROCESS SPECTRUM, 2005, 3840 : 482 - 497
  • [5] Evaluating Usefulness of Software Metrics: An Industrial Experience Report
    Bouwers, Eric
    van Deursen, Arie
    Visser, Joost
    [J]. PROCEEDINGS OF THE 35TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2013), 2013, : 921 - 930
  • [6] Generative programming for embedded software: An industrial experience report
    Czarnecki, K
    Bednasch, T
    Unger, P
    Eisenecker, U
    [J]. GENERATIVE PROGRAMMING AND COMPONENT ENGINEERING 2002, PROCEEDINGS, 2002, 2487 : 156 - 172
  • [7] Legacy Software Restructuring: Analyzing a Concrete Case
    Anquetil, Nicolas
    Laval, Jannik
    [J]. 2011 15TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR), 2011, : 279 - 286
  • [8] 25 Years of Software
    Erdogmus, Hakan
    [J]. IEEE SOFTWARE, 2008, 25 (06) : 2 - 5
  • [9] An industrial experience report on legacy data-intensive system migration
    Henrard, Jean
    Roland, Didier
    Cleve, Anthony
    Hainaut, Jean-Luc
    [J]. 2007 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2007, : 487 - +
  • [10] Evaluating an embedded software reference architecture - Industrial experience report
    Graaf, B
    van Dijk, H
    van Deursen, A
    [J]. NINTH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS, 2005, : 354 - 363