Zobrazit minimální záznam

Analyzing Large Code Repositories



dc.contributor.advisorJanoušek Jan
dc.contributor.authorPetr Máj
dc.date.accessioned2023-06-30T11:19:08Z
dc.date.available2023-06-30T11:19:08Z
dc.date.issued2023-06-30
dc.identifierKOS-721734990705
dc.identifier.urihttp://hdl.handle.net/10467/110736
dc.description.abstractSoftwarové inženýrství těží z poznatků získaných z velkých softwarových repozitářů, které nabízejí bezkonkurenční vhled do vývojového procesu. Jejich rozsah sám o sobě je příslibem široké použitelnosti výsledků. Tento rozsah však také představuje výzvy pro škálovatelnost. Jednou z odpovědí na tyto výzvy je omezení analýzy na reprezentativní vzorky a zobecnění pozorovaných jevů na celou populaci. Najít tento reprezentativní vzorek je však často nemožné. Výzkumníci musí dělat kompromisy jako je použítí menších souborů dat s nepřesným vzor- kováním nebo obětování reprodukovatelnosti jejich výsledků. Tato práce analyzuje výzvy pro výběr projektů v rámci vytěžování velkých softwarových úložišt a poskytuje nástroj, který podporuje přesné, škálovatelné a reprodukovatelné vzorkování softwarových projektů podle jejich atributů. Přínosy této práce jsou podrobně popsány v těchto čtyřech článcích:- A Map of Code Duplicates on GitHub analyzuje klony ve zdrojových kódech GitHub projeků. Naše práce ověřila existenci jednoho z nejběžnějších zkreslení v rámci datových souborů a ukazuje jeho rozsah. Naše zjištění potvrzují nutnost specializovaného výběru projektů a jejich pečlivému filtrování v analýzých velkých repozitářů.- On the Impact of Programming Languages on Code Quality je reprodukční studie se zaměřením na filtrování dat, reproducibilitu a statistickou interpretaci výsledků z velkých datasetů. Článek dokazuje, že problémy, na které tato práce upozorňuje existují v současném výzkumu a že ovlivňují jeho výsledky.- Reproducible Queries over Large-Scale Software Repositories představuje infrastrukturu, která tvoří jádro této práce: škálovatelnou, přesný a reprodukovatelný výběr projektů.- How to Design Reproducible Large-scale Code Analysis Experiments pak prezentuje design pečlivého a explicitního výběru projektů pro analýzy velkých repozitářů kódu a ukazuje jak je možné takový výběr realizovat za pomoci nástroje prezentovaného v předchozím článku.cze
dc.description.abstractSoftware engineering benefits from insights gleaned from large-scale software repositories as they offer an unmatched window into the development process. Their sheer size holds the promise of broadly applicable results. Yet, that very size presents scalability challenges. One answer to such challenges is to limit studies to representative samples and generalize observations to the entire population. But finding such a representative sample is often impossible and researchers must compromise by using smaller datasets with imprecise sampling, or sacrifice reproducibility of their results. This thesis analyzes the challenges in project selection for mining large software repositories and provides a tool that supports precise, scalable and reproducible sampling of software projects based on their attributes. Its contributions are detailed in four papers: 1. A Map of Code Duplicates on GitHub [A.3] analyses source code clones present in GitHub projects. It verifies the existence of one of the most common biases and shows its scale. Our findings signify the necessity for dedicated project selection and filtering steps in big code analyses. 2. On the Impact of Programming Languages on Code Quality [A.2] is a reproduction study focusing on the data filtering, reproducibility, and statistical interpretation of large corpora analyses. The paper shows the problems pointed out by this thesis are present in contemporary research and that they affect our results. 3. Reproducible Queries over Large-Scale Software Repositories [A.1] introduces the infrastructure that forms the statement of this thesis: a scalable, precise, deterministic, up-to-date and reproducible project selection pipeline. 4. How to Design Reproducible Large-scale Code Analysis Experiments [A.4] then devises and argues for an explicit and rigorous project filtering step and demonstrates how it can be done with the tool presented in the previous paper.eng
dc.publisherČeské vysoké učení technické v Praze. Vypočetní a informační centrum.cze
dc.publisherCzech Technical University in Prague. Computing and Information Centre.eng
dc.rightsA university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmleng
dc.rightsVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.htmlcze
dc.subjectvytěžování repozitářůcze
dc.subjectbig codecze
dc.subjectduplikace kóducze
dc.subjectvzorkovánícze
dc.subjectselection biascze
dc.subjectRepository miningeng
dc.subjectbig codeeng
dc.subjectcode duplicationeng
dc.subjectselection biaseng
dc.subjectsamplingeng
dc.titleAnalýza velkých repozitářů kóducze
dc.titleAnalyzing Large Code Repositorieseng
dc.typedisertační prácecze
dc.typedoctoral thesiseng
dc.date.accepted2023-06-30
dc.contributor.refereePetříček Tomáš
theses.degree.disciplineInformatikacze
theses.degree.grantorkatedra teoretické informatikycze
theses.degree.programmeInformatikacze


Soubory tohoto záznamu


Tento záznam se objevuje v následujících kolekcích

Zobrazit minimální záznam