Skip to Main Content
 

Global Search Box

 
 
 
 

ETD Abstract Container

Abstract Header

UNDERSTANDING AND IDENTIFYING LARGE-SCALE ADAPTIVE CHANGES FROM VERSION HISTORIES

Abstract Details

2013, PHD, Kent State University, College of Arts and Sciences / Department of Computer Science.
A systematic study of the adaptive maintenance process is undertaken. The research aims to better understand how developers adapt and migrate systems in response to such things as large API changes. The ultimate goal is to support the construction of automated methods and tools to support the adaptive maintenance process. The main case study involves an exhaustive manual investigation of a number of open source systems (e.g., KOffice, Extragear/graphics, and OpenGL) during a time when a large adaptive maintenance task was taking place. In each case the adaptive maintenance task involved a substantial API migration (e.g., Qt3 to Qt4) that took place over multiple years. Additionally, the systems were also undergoing other modifications (perfective and corrective) such as bug fixing and the addition of new features. The main goal of the study was to identify and distinguish the adaptive maintenance changes from the other types of changes. These adaptive maintenance commits are then analyzed to identify common characteristics and trends. The analysis examines the amount of change taking place for each commit, the vocabulary of the commit messages, the authorship of the changes, and the stereotype of modified methods. The data provides a point of reference for the study of these types of changes. This is also the first published in-depth and systematic examination of large adaptive maintenance tasks. The results show that adaptive maintenance tasks involve a relatively few number of large changes. There are also few developers involved in this task and they use a somewhat standard vocabulary in describing the associated commits. This information is they used as a means to automatically identify adaptive changes. An information retrieval technique, namely Latent Semantic Analysis, is used to retrieve relevant adaptive commits when querying the commits available in the version control system. The approach was found to have good accuracy. Our results show that the approach accurately retrieves relevant adaptive commits, with nearly 90% recall. Additionally, a means to uncover a set of traceability links between source code files and other artifacts resulting from adaptive maintenance tasks is developed. The validation results show highly precision predictions using TraceLab components.
Jonathan Maletic, Professor (Advisor)
205 p.

Recommended Citations

Citations

  • Meqdadi, O. M. (2013). UNDERSTANDING AND IDENTIFYING LARGE-SCALE ADAPTIVE CHANGES FROM VERSION HISTORIES [Doctoral dissertation, Kent State University]. OhioLINK Electronic Theses and Dissertations Center. http://rave.ohiolink.edu/etdc/view?acc_num=kent1374791564

    APA Style (7th edition)

  • Meqdadi, Omar. UNDERSTANDING AND IDENTIFYING LARGE-SCALE ADAPTIVE CHANGES FROM VERSION HISTORIES. 2013. Kent State University, Doctoral dissertation. OhioLINK Electronic Theses and Dissertations Center, http://rave.ohiolink.edu/etdc/view?acc_num=kent1374791564.

    MLA Style (8th edition)

  • Meqdadi, Omar. "UNDERSTANDING AND IDENTIFYING LARGE-SCALE ADAPTIVE CHANGES FROM VERSION HISTORIES." Doctoral dissertation, Kent State University, 2013. http://rave.ohiolink.edu/etdc/view?acc_num=kent1374791564

    Chicago Manual of Style (17th edition)