# Master thesis
## Finding a test case names
Every test can be different by names, I want to check if there is correlation between test name and approach TDD or TLD.
The util will get repo url and commit hash and return list of testnames
## Is choosen framework impact code quality?
### 11.01.2023 formalize topic
RQ: Czy wybór frameworka wpływa na jakość kodu?
RQ1: Czy badano zależności między wyborem frameworku a jakością kodu?
innych języków (niż JS)
jakie frameworki były porównywane
RQ2 w jaki sposób ocenić jakość kodu w JS
#### Data extraction table
RQ1:
jaki język programowania
jakie frameworki
źródło danych (github)
czy wykryto wpływ
RQ2:
nazwa metryki
narzędzie
zasady interpretacji metryki
### 19.01.2023 7:00 find answer for RQ1
try to find related works:
found the most relevant: [Evaluating the Lifespan of Code Smells using Software Repository Mining](https://ieeexplore.ieee.org/document/6178888)
found with query ["impact code quality"](https://ieeexplore.ieee.org/search/searchresult.jsp?newsearch=true&queryText=%22impact%20code%20quality%22)
also tried those queries:
"("All Metadata":framework) AND ("All Metadata": impact code quality)"
"("All Metadata":code quality) OR ("All Metadata":React) OR ("All Metadata":Angular)"
[("All Metadata":framework) AND ("All Metadata":code quality), impact](https://ieeexplore.ieee.org/search/searchresult.jsp?action=search&matchBoolean=true&queryText=(%22All%20Metadata%22:framework)%20AND%20(%22All%20Metadata%22:code%20quality)&highlight=true&returnType=SEARCH&matchPubs=true&returnFacets=ALL&searchWithin=impact)
[("All Metadata":framework) AND ("All Metadata":code quality), maintainability](https://ieeexplore.ieee.org/search/searchresult.jsp?action=search&matchBoolean=true&queryText=(%22All%20Metadata%22:framework)%20AND%20(%22All%20Metadata%22:code%20quality)&highlight=true&returnFacets=ALL&returnType=SEARCH&matchPubs=true&searchWithin=maintainability)
Web of Sience, Scopus
Backend, frameworks, code quality
framework And code quality,
Metrics
ProgramIng language
Comparation
Evaluation
### 19.01.2023 12:32 try to find papers on scopus
#### backend AND "code quality"
##### Found one interesting paper
[To Type or Not to Type? A Systematic Comparison of the Software Quality of JavaScript and TypeScript Applications on GitHub](https://www.scopus.com/record/display.uri?eid=2-s2.0-85134078066&origin=resultslist&sort=plf-f&src=s&sid=686b2ccff32f98f4ea4af09ab5a1b87d&sot=b&sdt=b&s=TITLE-ABS-KEY%28backend+AND+%22code+quality%22%29&sl=61&sessionSearchId=686b2ccff32f98f4ea4af09ab5a1b87d)
using sonarqube on 604 github projects
###### References
[JSNOSE: Detecting javascript code smells](https://www.scopus.com/record/display.uri?eid=2-s2.0-84891132526&origin=reflist&sort=plf-f&src=s&sid=686b2ccff32f98f4ea4af09ab5a1b87d&sot=b&sdt=b&sl=41&s=TITLE-ABS-KEY%28backend+AND+%22code+quality%22%29)
[The road ahead for mining software repositories](https://www.scopus.com/record/display.uri?eid=2-s2.0-57849119318&origin=reflist&sort=plf-f&src=s&sid=686b2ccff32f98f4ea4af09ab5a1b87d&sot=b&sdt=b&sl=41&s=TITLE-ABS-KEY%28backend+AND+%22code+quality%22%29)
[An empirical study of code smells in JavaScript projects](https://www.scopus.com/record/display.uri?eid=2-s2.0-85018444565&origin=reflist&sort=plf-f&src=s&sid=686b2ccff32f98f4ea4af09ab5a1b87d&sot=b&sdt=b&sl=41&s=TITLE-ABS-KEY%28backend+AND+%22code+quality%22%29)
[How good are code smells for evaluating software maintainability? Results from a comparative case study](https://www.scopus.com/record/display.uri?eid=2-s2.0-84891720206&origin=reflist&sort=plf-f&src=s&sid=686b2ccff32f98f4ea4af09ab5a1b87d&sot=b&sdt=b&sl=41&s=TITLE-ABS-KEY%28backend+AND+%22code+quality%22%29)
#### ( TITLE ( {frameworks} AND compa* ) AND ABS ( code ) ) AND ( LIMIT-TO ( SUBJAREA , "COMP" ) )
[Comparative evaluation of JavaScript frameworks](https://www.scopus.com/record/display.uri?eid=2-s2.0-84861058488&origin=resultslist&sort=cp-f&src=s&sid=04f4788f7f30ac3b70ce7e0850df5f54&sot=a&sdt=b&cluster=scosubjabbr%2C%22COMP%22%2Ct&s=%28TITLE%28%7Bframeworks%7D+AND+compa*%29+AND+ABS%28code%29%29&sl=210&sessionSearchId=04f4788f7f30ac3b70ce7e0850df5f54)
### 20.01.2023 18:00
looking in scopus
#### TITLE ( {frameworks} AND ( evaluation OR comp* ) ) AND TITLE-ABS-KEY ( {frameworks} AND {metrics} AND code )
found 4 papers only 1 relevant
#### TITLE ( {frameworks} AND ( metrics OR smell OR quality ) AND ( code OR software ) )
found 10 papers, 9 relevant
#### KEY ( {frameworks} AND ( metrics OR smell OR quality ) AND ( code OR software ) ) AND TITLE ( compar* OR evaluation ) AND NOT TITLE ( {framework} ) AND ( LIMIT-TO ( SUBJAREA , "COMP" ) )
24 documents found
[Comparing the accumulation of technical debt between two applications developed with Spring Web MVC and Apache Struts 2](https://www.scopus.com/record/display.uri?eid=2-s2.0-85016119323&origin=resultslist&sort=plf-f&src=s&sid=05daf7a69fd51f8c226d07c81a493579&sot=a&sdt=cl&cluster=scosubjabbr%2C%22COMP%22%2Ct&s=KEY%28%7Bframeworks%7D+AND+%28metrics+OR+smell+OR+quality%29+AND+%28code+OR+software%29%29+AND+TITLE%28compar*+OR+evaluation%29+AND+NOT+TITLE%28%7Bframework%7D%29&sl=134&sessionSearchId=05daf7a69fd51f8c226d07c81a493579)
[Comparison and evaluation of code clone detection techniques and tools: A qualitative approach](https://www.scopus.com/record/display.uri?eid=2-s2.0-64549135034&origin=resultslist&sort=plf-f&src=s&sid=05daf7a69fd51f8c226d07c81a493579&sot=a&sdt=cl&cluster=scosubjabbr%2C%22COMP%22%2Ct&s=KEY%28%7Bframeworks%7D+AND+%28metrics+OR+smell+OR+quality%29+AND+%28code+OR+software%29%29+AND+TITLE%28compar*+OR+evaluation%29+AND+NOT+TITLE%28%7Bframework%7D%29&sl=134&sessionSearchId=05daf7a69fd51f8c226d07c81a493579)
[Comparative evaluation of JavaScript frameworks](https://www.scopus.com/record/display.uri?eid=2-s2.0-84861058488&origin=resultslist&sort=plf-f&cite=2-s2.0-84861058488&src=s&imp=t&sid=5a55bec426c16138cd982d725d787b3a&sot=cite&sdt=a&sl=0)
###### Cited by
- [Jact: A Playground Tool for Comparison of JavaScript Frameworks](https://www.scopus.com/record/display.uri?eid=2-s2.0-85078158568&origin=resultslist&sort=plf-f&cite=2-s2.0-84861058488&src=s&imp=t&sid=5a55bec426c16138cd982d725d787b3a&sot=cite&sdt=a&sl=0&relpos=9&citeCnt=2&searchTerm=)
- [A code quality metrics model for react-based web applications](https://www.scopus.com/record/display.uri?eid=2-s2.0-85027885917&origin=resultslist&sort=plf-f&cite=2-s2.0-84861058488&src=s&imp=t&sid=5a55bec426c16138cd982d725d787b3a&sot=cite&sdt=a&sl=0&relpos=16&citeCnt=2&searchTerm=)
looking in dl.acm.org
#### [AllField:({frameworks} AND (code OR software) AND (quality OR sonar OR metrics OR smell)) AND Title:("frameworks" AND (compar* OR evaluat*))](https://dl.acm.org/action/doSearch?fillQuickSearch=false&target=advanced&expand=dl&AllField=AllField%3A%28%7Bframeworks%7D+AND+%28code+OR+software%29+AND+%28quality+OR+sonar+OR+metrics+OR+smell%29%29+AND+Title%3A%28%22frameworks%22+AND+%28compar*+OR+evaluat*%29%29)
#### [7 Results for: [All: "metrics"] AND [All: "quality"] AND [Title: "frameworks"] AND [[Title: compar*] OR [Title: evaluat*]]](https://dl.acm.org/action/doSearch?fillQuickSearch=false&target=advanced&expand=dl&AllField=AllField%3A%28%22metrics%22+AND+%22quality%22%29+AND+Title%3A%28%22frameworks%22+AND+%28compar*+OR+evaluat*%29%29&sortBy=cited)
### 24.01.2023
#### [({frameworks} OR {applications}) AND code AND quality AND repositor*](https://www.scopus.com/results/results.uri?sort=plf-f&src=s&sid=731663d51166cf781b615aeed0be71cd&sot=a&sdt=a&cluster=scosubjabbr%2c%22COMP%22%2ct&sl=65&s=TITLE-ABS-KEY%28%28%7bframeworks%7d%29+AND+code+AND+quality+AND+repository%29&origin=searchadvanced&editSaveSearch=&txGid=85cfe5d460010c231abfa52640bfc0b6)
- [Code smells for Model-View-Controller architectures](https://www.scopus.com/record/display.uri?eid=2-s2.0-85029144713&origin=resultslist&sort=plf-f&src=s&sid=731663d51166cf781b615aeed0be71cd&sot=a&sdt=a&cluster=scosubjabbr%2c%22COMP%22%2ct&sl=65&s=TITLE-ABS-KEY%28%28%7bframeworks%7d%29+AND+code+AND+quality+AND+repository%29&relpos=9&citeCnt=43&searchTerm=)
-- [Detecting code smells in React-based Web apps](https://www.scopus.com/record/display.uri?eid=2-s2.0-85143515852&origin=resultslist&sort=plf-f&cite=2-s2.0-85029144713&src=s&imp=t&sid=383324236e2e63dad4bb6fbd9037456f&sot=cite&sdt=a&sl=0&relpos=0&citeCnt=0&searchTerm=)
### SLR
|title| languages |frameworks | data source|impact|
|---|---|---|---|---|
|[Code smells for Model-View-Controller architectures](https://www.scopus.com/record/display.uri?eid=2-s2.0-85029144713&origin=resultslist&sort=plf-f&src=s&sid=731663d51166cf781b615aeed0be71cd&sot=a&sdt=a&cluster=scosubjabbr%2c%22COMP%22%2ct&sl=65&s=TITLE-ABS-KEY%28%28%7bframeworks%7d%29+AND+code+AND+quality+AND+repository%29&relpos=9&citeCnt=43&searchTerm=)|Java, C++, Python, JavaScript, C#, PHP, Ruby, Swift, Go, Rust|Ruby on Rails, Spring MVC, ASP.NET MVC, Java VRaptor, and Scala Play!, Spring MVC, ASP.NET MVC, Ruby on Rails, Django, React, Angular, Node.js, Express.js, Vue.js, Spring, .NET, Django, Flask,|github|no, it was no checked|
|[Detecting code smells in React-based Web apps](https://www.scopus.com/record/display.uri?eid=2-s2.0-85143515852&origin=resultslist&sort=plf-f&cite=2-s2.0-85029144713&src=s&imp=t&sid=383324236e2e63dad4bb6fbd9037456f&sot=cite&sdt=a&sl=0&relpos=0&citeCnt=0&searchTerm=)|javascript|react|github| no, it was only about react|
|[To type or not to type?: a systematic comparison of the software quality of JavaScript and typescript applications on GitHub](https://dl.acm.org/doi/10.1145/3524842.3528454)|javascript, typescript|Node.js, Electron.js|github|no frameworks were compared|
|[Evaluating Maintainability Prejudices with a Large-Scale Study of Open-Source Projects](https://link.springer.com/chapter/10.1007/978-3-030-05767-1_10)|C, C++, C#, Java, Javascript||github|no frameworks, only languages coparation and there is impact on code quality|
|[A large scale study of programming languages and code quality in github](https://dl.acm.org/doi/abs/10.1145/2635868.2635922)|C, C++, C#, Objective-C, Go, Java, CoffeeScript, JavaScript, TypeScript, Ruby, PHP, Python, Perl, Clojure, Erlang, Haskell, Scala||github
|[To Type or Not to Type: Quantifying Detectable Bugs in JavaScript](https://ieeexplore.ieee.org/abstract/document/7985711)|typescript, javascript||github|
|[On the Impact of Programming Languages on Code Quality: A Reproduction Study](https://dl.acm.org/doi/abs/10.1145/3340571)|C, C++, C#, Objective-C, Go, Java, CoffeeScript, JavaScript, TypeScript, Ruby, PHP, Python, Perl, Clojure, Erlang, Haskell, Scala||github|
|[Studying the evolution of PHP web applications](https://www.sciencedirect.com/science/article/pii/S0950584915002062)|PHP|Breeze, Laravel,Symfony,Zendframework2|SourceForge,github|no, it was focused on projects written in php, they checked source code of frameworks|
|[A Study On The Accumulation Of Technical Debt On Framework-based Web Applications](https://www.cs.rug.nl/search/uploads/Publications/sattose2016.pdf)|java|Spring, Struts|
## Interesting
- H. Borges, A. Hora, M.T. Valente, Understanding the factors that impact the popularity of GitHub repositories, in: 32nd IEEE International Conference on Software Maintenance and Evolution, ICSME, 2016, pp. 334–344.
- H. Silva, M.T. Valente, What’s in a GitHub star? Understanding repository starring practices in a social coding platform, J. Syst. Softw. 146 (1) (2018)
# Related work
| Citation name | similarities | diff |
|:------------------------------------------------------------------------:|:-----------------------------------------------------------------------:|:-----------------------------------------------------------------------:|
| js-vs-ts | code-quality, sonar qube, javascript projects, frontend projects | didn't group by frontend frameworks |
| slr-code-smells-mvc | code quality | backend-frameworks, defined code smells with interviewing 53 developers |
| slr-code-smells-react | code-quality, javascript, react | defining code smells with interview developers |
| slr-maintainability-large-scale-open-source-10.1007/978-3-030-05767-1_10 | code-quality, repo-mining, open-source projects, maintainability focus | only programming languages |
| slr-large-scale-programming-languages-10.1145/2635868.2635922 | open-source, code-quality | programming languages, focused on bugs, |
| slr-type-or-not-quantifying-detectable-bugs | open-source, code-quality | checking how many bugs could be found if using static typing |
| slr-impact-of-programing-languages-on-code-quality-10.1145/3340571 | code-quality | reproduction-study |
| slr-evolution-of-php-web-applicaions-AMANATIDIS201648 | maintainability, open-source | php, Lehman laws |
| slr-framework-based-web-apps-digkas2016study | code-quality, | they check cohesion, coupling, spring vs struts |
| slr-measuring-code-maintainability-deep-neural-network | maintainability | proposed new approach to calculate maintainability DeepM, |
| slr-practical-model-for-maintainability | maintainability | proposed own metric to calculate matainability |