Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
teaching:reverse:2018:references [2018/12/13 11:21]
blay [Etudes]
teaching:reverse:2018:references [2018/12/16 17:40]
blay [Généralités]
Line 14: Line 14:
 by Robert C. Martin by Robert C. Martin
           - [[http://​www.allitebooks.com/​your-code-as-a-crime-scene/​|Your Code as a Crime Scene ; Use Forensic Techniques to Arrest Defects, Bottlenecks,​ and Bad Design in Your Programs (The Pragmatic Programmers)]] ​  Adam Tornhill           - [[http://​www.allitebooks.com/​your-code-as-a-crime-scene/​|Your Code as a Crime Scene ; Use Forensic Techniques to Arrest Defects, Bottlenecks,​ and Bad Design in Your Programs (The Pragmatic Programmers)]] ​  Adam Tornhill
 +          - https://​empear.com/​docs/​CodeSceneBook.pdf
 </​panel>​ </​panel>​
  </​accordion>​  </​accordion>​
Line 27: Line 28:
  <​accordion ​ collapsed="​false">​  <​accordion ​ collapsed="​false">​
 <​panel ​ title="​Sélection d'​articles présentant des études de rétro-ingénierie">​ <​panel ​ title="​Sélection d'​articles présentant des études de rétro-ingénierie">​
 +     ​- ​ [[https://​www.researchgate.net/​publication/​325176682_Architectural_Technical_Debt_Identification_the_Research_Landscape|Architectural Technical Debt Identification:​ the Research Landscape]],​ 
 +         * author = {Verdecchia,​ Roberto and Malavolta, Ivano and Lago, Patricia},​ 
 +         * year = {2018}, 
 +         * month = {05}, 
 +         * doi = {10.1145/​3194164.3194176} 
 +         * Architectural Technical Debt (ATD) regards sub-optimal design decisions that bring short-term benefits to the cost of long-term gradual deterioration of the quality of the architecture of a software system. The identification of ATD strongly influences the technical and economic sustainability of software systems and is attracting growing interest in the scientific community. During the years several approaches for ATD identification have been conceived, each of them addressing ATD from different perspectives and with heterogeneous characteristics. In this paper we apply the systematic mapping study methodology for identifying,​ classifying,​ and evaluating the state of the art on ATD identification from the following three perspectives:​ publication trends, characteristics,​ and potential for industrial adoption. Specifically,​ starting from a set of 509 potentially relevant studies, we systematically selected 47 primary studies and analyzed them according to a rigorously-defined classification framework. The analysis of the obtained results supports both researchers and practitioners by providing (i) an assessment of current research trends and gaps in ATD identification,​ (ii) a solid foundation for understanding existing (and future) research on ATD identification,​ and (iii) a rigorous evaluation of its potential for industrial adoption. 
 +         * From the same author :   ​{{:​teaching:​reverse:​2017:​mobilesoft_2018.pdf|}}
   -[[ https://​research.google.com/​pubs/​pub45794.html|Who broke the build?: automatically identifying changes that induce test failures in continuous integration at Google scale]]   -[[ https://​research.google.com/​pubs/​pub45794.html|Who broke the build?: automatically identifying changes that induce test failures in continuous integration at Google scale]]
        * Auteurs : Celal Ziftci, Jim Reardon        * Auteurs : Celal Ziftci, Jim Reardon
Line 114: Line 121:
   - Hebig, R., Quang, T. H., Chaudron, M. R. V., Robles, G., & Fernandez, M. A. (2016). The quest for open source projects that use UML. In Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems - MODELS ’16. https://​doi.org/​10.1145/​2976767.2976778   - Hebig, R., Quang, T. H., Chaudron, M. R. V., Robles, G., & Fernandez, M. A. (2016). The quest for open source projects that use UML. In Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems - MODELS ’16. https://​doi.org/​10.1145/​2976767.2976778
   - [[http://​salt.ece.ubc.ca/​publications/​docs/​icse18-sabalan.pdf|Inferring Hierarchical Motifs from Execution Traces]]   - [[http://​salt.ece.ubc.ca/​publications/​docs/​icse18-sabalan.pdf|Inferring Hierarchical Motifs from Execution Traces]]
-  ​- {{:​teaching:​reverse:​2017:​mobilesoft_2018.pdf|}}+       * author = {Alimadadi, Saba and Mesbah, Ali and Pattabiraman,​ Karthik}, 
 +       * booktitle = {Proceedings of the 40th International Conference on Software Engineering  ​ICSE '​18},​ 
 +       * doi = {10.1145/​3180155.3180216},​ 
 +       * isbn = {9781450356381},​ 
 +       * issn = {02705257},​ 
 +       * year = {2018}, 
 +       * Program comprehension is a necessary step for performing many software engineering tasksDynamic analysis is effective in producing execution traces that assist comprehension. Traces are rich sources of information regarding the behaviour of a program. However, it is challenging to gain insight from traces due to their over-whelming amount of data and complexity. We propose a generic technique for facilitating comprehension by inferring recurring execution motifs. Inspired by bioinformatics,​ motifs are patterns in traces that are flexible to small changes in execution, and are captured in a hierarchical model. The hierarchical nature of the model provides an overview of the behaviour at a high-level, while preserving the execution details and intermediate levels in a struc-tured manner. We design a visualization that allows developers to observe and interact with the model. We implement our approach in an open-source tool, called Sabalan, and evaluate it through a user experiment. The results show that using Sabalan improves developers'​ accuracy in performing comprehension tasks by 54{\%}.},
   - "​Reverse engineering reusable software components from object-oriented APIs",   - "​Reverse engineering reusable software components from object-oriented APIs",
           * journal = "​Journal of Systems and Software",​           * journal = "​Journal of Systems and Software",​
Line 126: Line 139:
           * keywords = "​Software reuse, Software component, Object-oriented,​ API, Reverse engineering,​ Frequent usage pattern",​           * keywords = "​Software reuse, Software component, Object-oriented,​ API, Reverse engineering,​ Frequent usage pattern",​
           * Object-oriented Application Programing Interfaces (APIs) support software reuse by providing pre-implemented functionalities. Due to the huge number of included classes, reusing and understanding large APIs is a complex task. Otherwise, software components are accepted to be more reusable and understandable entities than object-oriented ones. Thus, in this paper, we propose an approach for reengineering object-oriented APIs into component-based ones. We mine components as a group of classes based on the frequency they are used together and their ability to form a quality-centric component. To validate our approach, we experimented on 100 Java applications that used four APIs."           * Object-oriented Application Programing Interfaces (APIs) support software reuse by providing pre-implemented functionalities. Due to the huge number of included classes, reusing and understanding large APIs is a complex task. Otherwise, software components are accepted to be more reusable and understandable entities than object-oriented ones. Thus, in this paper, we propose an approach for reengineering object-oriented APIs into component-based ones. We mine components as a group of classes based on the frequency they are used together and their ability to form a quality-centric component. To validate our approach, we experimented on 100 Java applications that used four APIs."
-     ​- ​ [[https://​www.researchgate.net/​publication/​325176682_Architectural_Technical_Debt_Identification_the_Research_Landscape|Architectural Technical Debt Identification:​ the Research Landscape]],​ 
-         * author = {Verdecchia,​ Roberto and Malavolta, Ivano and Lago, Patricia}, 
-         * year = {2018}, 
-         * month = {05}, 
-         * doi = {10.1145/​3194164.3194176} 
-         * Architectural Technical Debt (ATD) regards sub-optimal design decisions that bring short-term benefits to the cost of long-term gradual deterioration of the quality of the architecture of a software system. The identification of ATD strongly influences the technical and economic sustainability of software systems and is attracting growing interest in the scientific community. During the years several approaches for ATD identification have been conceived, each of them addressing ATD from different perspectives and with heterogeneous characteristics. In this paper we apply the systematic mapping study methodology for identifying,​ classifying,​ and evaluating the state of the art on ATD identification from the following three perspectives:​ publication trends, characteristics,​ and potential for industrial adoption. Specifically,​ starting from a set of 509 potentially relevant studies, we systematically selected 47 primary studies and analyzed them according to a rigorously-defined classification framework. The analysis of the obtained results supports both researchers and practitioners by providing (i) an assessment of current research trends and gaps in ATD identification,​ (ii) a solid foundation for understanding existing (and future) research on ATD identification,​ and (iii) a rigorous evaluation of its potential for industrial adoption. 
    - [[ https://​www.cs.drexel.edu/​~lx52/​LuXiao/​papers/​FSE-TD-14.pdf|Titan:​ A Toolset That Connects Software Architecture with Quality Analysis]] ​    - [[ https://​www.cs.drexel.edu/​~lx52/​LuXiao/​papers/​FSE-TD-14.pdf|Titan:​ A Toolset That Connects Software Architecture with Quality Analysis]] ​
       * Lu Xiao, Yuanfang Cai, and Rick Kazman. ​       * Lu Xiao, Yuanfang Cai, and Rick Kazman. ​
Line 137: Line 144:
       * ACM SIGSOFT International Symposium on Foundations of Software Engineering. ​       * ACM SIGSOFT International Symposium on Foundations of Software Engineering. ​
       * 763–766 ​       * 763–766 ​
-  - [[http://​aircconline.com/​ijsea/​V9N5/​9518ijsea01.pdf|[INVESTIGATE,​IDENTIFY AND ESTIMATE THE TECHNICAL DEBT: A SYSTEMATIC MAPPING STUDY]] ​+  - [[http://​aircconline.com/​ijsea/​V9N5/​9518ijsea01.pdf|INVESTIGATE,​IDENTIFY AND ESTIMATE THE TECHNICAL DEBT: A SYSTEMATIC MAPPING STUDY]] ​
        ​* ​ Benidris, M., Ammar, H., & Dzielski, D.         ​* ​ Benidris, M., Ammar, H., & Dzielski, D. 
        * 2018        * 2018