Skip to Main content Skip to Navigation
Theses

Cloning beyond source code : a study of the practices in API documentation and infrastructure as code.

Abstract : When developing a software, maintenance and evolution represents an important part of the development's life-cycle, making up to 80% of the overall cost and effort.During the maintenance effort, it happens that developers have to resort to copying and pasting source code fragments in order to reuse them.Such practice, seemingly harmless is more frequent than we expect.Commonly referred to as ``clones'' in the literature, these source code duplicates are a well-known and studied topic in software engineering.In this thesis, we aim at shedding some light on copy-paste practices on software artifacts. In particular, we chose to focus our contributions on two specific types of software artifacts: API documentation and build files (i.e. Dockerfiles).For both contributions, we follow a common empirical study methodology. First, We show that API documentations and software build files (i.e. Dockerfiles) actually face duplicates issues and that such duplicates are frequent.Secondly, we identify the reasons behind the existence of such duplicates.Thirdly, We perform a survey on experimented developers and find that they're aware of such duplicates, frequently face them. But still have a mixed opinion regarding them.Finally, We show that both software artifacts lack reuse mechanisms to cope with duplicates, and that some developers even resort to ad-hoc tools to manage them.
Document type :
Theses
Complete list of metadatas

Cited literature [136 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-02879899
Contributor : Abes Star :  Contact
Submitted on : Wednesday, June 24, 2020 - 1:50:37 PM
Last modification on : Thursday, June 25, 2020 - 3:33:21 AM

File

OUMAZIZ_MOHAMED_2020.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-02879899, version 1

Collections

Citation

Mohamed Ameziane Oumaziz. Cloning beyond source code : a study of the practices in API documentation and infrastructure as code.. Software Engineering [cs.SE]. Université de Bordeaux, 2020. English. ⟨NNT : 2020BORD0007⟩. ⟨tel-02879899⟩

Share

Metrics

Record views

62

Files downloads

90