Опубликована: Окт. 4, 2021
First and
Язык: Английский
Опубликована: Окт. 4, 2021
First and
Язык: Английский
IEEE Access, Год журнала: 2021, Номер 9, С. 145191 - 145211
Опубликована: Янв. 1, 2021
The automatic detection of Design Smells has evolved in parallel to the evolution refactoring tools. There was a huge rise research activity regarding Smell from 2010 present. However, it should be noted that adoption real software development practice is not comparable On basis assumption objectiveness operation as opposed subjectivity definition and identification makes difference, this paper, lack agreement between different evaluators when detecting empirically studied. To do so, series experiments studies were designed conducted analyse concordance persons tools, including comparison them. This work focuses on two well known Smells: God Class Feature Envy. Concordance analysis based Kappa statistic for inter-rater (particularly Kappa-Fleiss). results obtained show there no general, and, those cases where certain appears, considered fair or poor degree agreement, according Kappa-Fleiss interpretation scale. seems confirm subjective component which raters evaluate presence differently. study also raises question training experience Smells.
Язык: Английский
Процитировано
5Опубликована: Май 16, 2022
Code review is a mature practice for software quality assurance in development with which reviewers check the code that has been committed by developers, and verify of code. During discussions, developers might use snippets to provide necessary information (e.g., suggestions or explanations). However, little known about intentions impacts reviews. To this end, we conducted preliminary study investigate nature their purposes We manually collected checked 10,790 comments from Nova Neutron projects OpenStack community, finally obtained 626 contain further analysis. The results show that: (1) are not prevalently used reviews, most provided reviewers. (2) identified two high-level (i.e., Suggestion Citation) six detailed purposes, among which, Improving Implementation common purpose. (3) For reviews aim suggestion, around 68.1% was accepted developers. highlight promising research directions on using
Язык: Английский
Процитировано
3Опубликована: Сен. 7, 2022
Background: Technical Debt (TD) refers to the situation where developers make trade-offs achieve short-term goals at expense of long-term code quality, which can have a negative impact on quality software systems. In context review, such sub-optimal implementations chances be timely resolved during review process before is merged. Therefore, we could consider them as Potential (PTD) since PTD will evolve into TD when it injected systems without being resolved. Aim: To date, little known about extent identified in reviews. Many tools been provided detect TD, but these lack consensus and large amount are undetectable by while help verify that has committed identifying issues, PTD. this end, conducted an exploratory study attempt understand nature reviews track down resolution after identified. Method: We randomly collected 2,030 comments from Nova project OpenStack Qt Base Qt. then manually checked comments, obtained 163 PTD-related for further analysis. Results: Our results show that: (1) not prevalent. (2) Design, defect, documentation, requirement, test, reviews, documentation dominant. (3) 81.0% developers, 78.0% was within week. (4) Code refactoring main practice used resolve Conclusions: findings indicate review-based detection seen one trustworthy mechanisms development, there still significant proportion (19.0%) remaining unresolved Practitioners researchers should establish effective strategies manage development.
Язык: Английский
Процитировано
3Опубликована: Май 23, 2022
In pull-based development systems, code reviews and pull request comments play important roles in improving quality. such reviewers attempt to carefully check a piece of by different unit tests. Unfortunately, sometimes they miss bugs their review requests, which lead quality degradations the systems. other words, disastrous consequences occur when are observed after merging requests. The lack concrete understanding these led us investigate categorize them. this research, we try identify missed requests SmartSHARK dataset projects. Our contribution is twofold. First, hypothesized merged that have reviews, comments,or merging, may review. We considered as candidate having bugs. Based on our assumption, obtained 3,261 from 77 open-source GitHub After two rounds restrictive manual analysis, found 187 173 first step, 224 buggy containing Secondly, defined finalized taxonomy appropriate for then distribution bug categories analysing those all over again. distributions are: semantic (51.34%), build (15.5%), analysis checks (9.09%), compatibility (7.49%), concurrency (4.28%), configuration GUI (2.14%), API security memory (1.6%).
Язык: Английский
Процитировано
3Опубликована: Дек. 4, 2023
The low cost and rapid provisioning capabilities have made open-source cloud a desirable platform to launch industrial applications. However, as moves towards maturity, it still suffers from quality issues like code smells. Although, great emphasis has been provided on the economic benefits of deploying cloud, importance improve source itself ensure its maintainability in scenario. Code refactoring associated with improving maintenance understanding software by removing analyzing what smells are more prevalent environment designing tool define detect those require further attention. In this paper, we propose model called CloudScent which is an open mechanism cloud. We test our experiments real-life using OpenStack. Results show that capable accurately detecting 8 This will permit service providers advanced knowledge about platform, thus allowing for timely platforms.
Язык: Английский
Процитировано
1Empirical Software Engineering, Год журнала: 2024, Номер 29(4)
Опубликована: Июнь 3, 2024
Язык: Английский
Процитировано
0Software Quality Journal, Год журнала: 2024, Номер 32(4), С. 1375 - 1412
Опубликована: Июль 11, 2024
Язык: Английский
Процитировано
0European Journal of Information Technologies and Computer Science, Год журнала: 2024, Номер 4(3), С. 15 - 22
Опубликована: Авг. 19, 2024
Software code smells are regarded as signs of potential problems in design or implementation, they might not affect functionality but impact future maintenance and readability. However, refactoring is a process transformation that improves structure without changing behavior. This occurs the stage software where developers quality managers/engineers must work closely order to identify plan for refactoring. research aims investigate role managers creating smells.
Язык: Английский
Процитировано
0Research Square (Research Square), Год журнала: 2023, Номер unknown
Опубликована: Окт. 27, 2023
Abstract Context. Code smell is a symptom of decisions about the system design or code that may degrade its modularity. For example, they indicate inheritance misuse, excessive coupling and size. When two more smells occur in same snippet code, form agglomeration. Objective. Few studies evaluate how agglomerations impact In this work, we which aspects modularity are being hindered by agglomerations. This way, can support practitioners improving their refactoring involved with agglomeration was found as harmful to Method. We analyze composed four types smells: Large Class, Long Method, Feature Envy, Refused Bequest. then conduct comparison study between 20 systems mined from Qualita Corpus dataset 10 GitHub. total, analyzed 1,789 30 software projects, both repositories: rely on frequent itemset mining non-parametric hypothesis testing for our analysis. Results . Agglomerations formed Envy have significant frequency source repositories. different than classes only one type without smells. some metrics, when Class appears alone, it has large compared method-level type. Conclusion identified Consequently, provide supporting evidence developers should refactor improve
Язык: Английский
Процитировано
0Опубликована: Ноя. 21, 2023
Architecture erosion occurs when a software system's implemented architecture diverges from the intended over time. Studies show impacts development, maintenance, and evolution since it accumulates imperceptibly. Identifying early symptoms like architectural smells enables managing through refactoring. However, research lacks comprehensive understanding of erosion, unclear which are most common, detection methods. This thesis establishes an landscape, investigates symptoms, proposes identification approaches. A mapping study covers definitions, causes, consequences. Key findings: 1) "Architecture erosion" is used term, with four perspectives on definitions respective symptom types. 2) Technical non-technical reasons contribute to negatively impacting quality attributes. Practitioners can advocate addressing prevent failures. 3) Detection correction approaches categorized, consistency evolution-based commonly mentioned.An empirical explores practitioner communities, surveys, interviews. Findings reveal associated practices code review tools identify while collected measures address during implementation. Studying comments analyzes in practice. One reveals violations, duplicate functionality, cyclic dependencies frequent. Symptoms decreased time, indicating increased stability. Most were addressed after review. second violation projects, identifying 10 categories. Refactoring removing some disregarded.Machine learning classifiers using pre-trained word embeddings reviews. SVM word2vec achieved highest performance. fastText worked well. 200-dimensional outperformed 100/300-dimensional. 4) Ensemble classifier improved 5) found results valuable, confirming potential.An automated recommendation system identifies qualified reviewers for violations similarity file paths comments. Experiments common methods perform well, outperforming baseline approach. Sampling techniques impact
Язык: Английский
Процитировано
0