Refactoring Towards a Layered Architecture

被引:2
|
作者
Cornelio, Marcio [1 ]
Cavalcanti, Ana [2 ]
Sampaio, Augusto [3 ]
机构
[1] Univ Pernambuco, Escola Politecn, Dept Sistemas Computac, Recife, PE, Brazil
[2] Univ York, Dept Comp Sci, York, N Yorkshire, England
[3] Univ Fed Pernambuco, Ctr Informat, Recife, PE, Brazil
关键词
Refactoring; Formal Refinement; Refinement Calculus;
D O I
10.1016/j.entcs.2005.03.015
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In this paper we present how refactoring of object-oriented programs can be accomplished by using formal refinement. Our approach is based on the use of refactoring rules designed for a sequential object-oriented language of refinement (rool) similar to Java. We define a strategy that aims at structuring programs according to a layered architecture that involves the application of refactoring rules, object-oriented programming laws, and data and algorithm refinement. As the laws are proved in a weakest precondition semantics of rool, correctness of refactoring is ensured by construction.
引用
收藏
页码:281 / 300
页数:20
相关论文
共 50 条
  • [21] A Feature Model Based Framework for Refactoring Software Product Line Architecture
    Tanhaei, Mohammad
    Habibi, Jafar
    Mirian-Hosseinabadi, Seyed-Hassan
    JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2016, 31 (05) : 951 - 986
  • [22] Multi-objective Software Architecture Refactoring driven by Quality Attributes
    Di Pompeo, Daniele
    Tucci, Michele
    2023 IEEE 20TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE COMPANION, ICSA-C, 2023, : 175 - 178
  • [23] Refactoring and Migration of Cascading Style Sheets Towards Optimization and Improved Maintainability
    Mazinanian, Davood
    FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 1057 - 1059
  • [24] Towards a Difference Detection Algorithm aware of Refactoring-related Changes
    Silva, Fernanda
    Borel, Eraldo
    Lopes, Evandro
    Murta, Leonardo
    2014 28TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING (SBES 2014), 2014, : 111 - +
  • [25] Poster: Towards Safe Refactoring for Intelligent Parallelization of Java']Java 8 Streams
    Tang, Yiming
    Khatchadourian, Raffi
    Bagherzadeh, Mehdi
    Ahmed, Syed
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION, 2018, : 206 - 207
  • [26] Unifying Clone Analysis and Refactoring Activity Advancement towards C# Applications
    Sarala, S.
    Deepika, M.
    2013 FOURTH INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATIONS AND NETWORKING TECHNOLOGIES (ICCCNT), 2013,
  • [27] Towards Safe Automated Refactoring of Imperative Deep Learning Programs to Graph Execution
    Khatchadourian, Raffi
    Velez, Tatiana Castro
    Bagherzadeh, Mehdi
    Jia, Nan
    Raja, Anita
    2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE, 2023, : 1800 - 1802
  • [28] Refactoring Inspection Support for Manual Refactoring Edits
    Alves, Everton L. G.
    Song, Myoungkyu
    Massoni, Tiago
    Machado, Patricia D. L.
    Kim, Miryung
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2018, 44 (04) : 365 - 383
  • [29] Refactoring Graphs: Assessing Refactoring over Time
    Brito, Aline
    Hora, Andre
    Valente, Marco Tulio
    PROCEEDINGS OF THE 2020 IEEE 27TH INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER '20), 2020, : 367 - 377
  • [30] Manual Refactoring Changes with Automated Refactoring Validation
    Ge, Xi
    Murphy-Hill, Emerson
    36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), 2014, : 1095 - 1105