scholarly journals Design and Implementation of a Web-Based Application for Code Smells Repository

2021 ◽  
Vol 15 (3) ◽  
pp. 371-380
Author(s):  
Lida Bamizadeh ◽  
Binod Kumar ◽  
Ajay Kumar ◽  
Shailaja Shirwaikar

Pitfalls in software development process can be prevented by learning from other people's mistakes. Software practitioners and researchers document lessons learned and the knowledge about best practices is spread over literature. Presence of code smells does not indicate that software won’t work, but it will reveal deeper problems and rising risk of failure in future. Software metrics are applied to detect code smells whereas refactoring can remove code smells, improve code quality and make it simpler and cleaner. Detection tools facilitate management of code smells. Knowledge about code smells and related concepts can assist the software maintenance process. Exploratory analysis of code smells carried out in this paper, covers collecting data about code smells, identifying related concepts, categorizing and organizing this knowledge into a code smell repository, which can be made available to software developers. A detailed literature survey is carried out to identify code smells and related concepts. An initial list of 22 code smells proposed in 1999 has grown over the years into 65 code smells. The relationship between code smells, software metrics, refactoring methods and detection tools available in literature is also documented. Templates are designed that capture knowledge about code smells and related concepts. A code smell repository is designed and implemented to maintain all the information gathered about code smells and related concepts and is made available to software practitioners. All the knowledge about code smells found in literature is collected, organized and made accessible.

2021 ◽  
Vol 15 (1) ◽  
pp. 121-126
Author(s):  
Lida Bamizadeh ◽  
Binod Kumar ◽  
Ajay Kumar ◽  
Shailaja Shirwaikar

Software development process involves developing, building and enhancing high-quality software for specific tasks and as a consequence generates considerable amount of data. This data can be managed in a systematic manner creating knowledge repositories that can be used to competitive advantage. Lesson's learned as part of the development process can also be part of the knowledge bank and can be used to advantage in subsequent projects by developers and software practitioners. Code smells are a group of symptoms which reveal that code is not good enough and requires some actions to have a cleansed code. Software metrics help to detect code smells while refactoring methods are used for removing them. Furthermore, various tools are applicable for detecting of code smells. A Code smell repository organizes all the available knowledge in the literature about code smells and related concepts. An analytical study of code smells is presented in this paper which extracts useful, actionable and indicative knowledge.


Software development phase is very important in the Software Development Life Cycle. Software maintenance is a difficult process if code smells exist in the code. The poor design of code development is called code smells. The code smells are identified by various tools using various approaches. Many code smell approaches are rule based. The rule based approaches are based on trial and error method. Genetic Algorithm is a heuristic Algorithm by Darwin’s Theory. This paper presents a metric based code smell detection approach by Genetic Algorithm with particle swarm optimization based on Euclidean data distance. The Euclidean data distance gives best proximity value between two points. Our approach is evaluated on the three open source projects like JFreeChart v1.0.9, Log4J v1.2.1 and Xerces-J for identifying the eight types of code smells namely Functional Decomposition, Feature Envy, Blob, Long Parameter List, Spaghetti Code, Data Class, Lazy Class, Shotgun Surgery.


2017 ◽  
Vol 27 (09n10) ◽  
pp. 1529-1547 ◽  
Author(s):  
Zadia Codabux ◽  
Kazi Zakia Sultana ◽  
Byron J. Williams

It is important to maintain software quality as a software system evolves. Managing code smells in source code contributes towards quality software. While metrics have been used to pinpoint code smells in source code, we present an empirical study on the correlation of code smells with class-level (micro pattern) and method-level (nano-pattern) traceable code patterns. This study explores the relationship between code smells and class-level and method-level structural code constructs. We extracted micro patterns at the class level and nano-patterns at the method level from three versions of Apache Tomcat, three versions of Apache CXF and two J2EE web applications namely PersonalBlog and Roller from Stanford SecuriBench and then compared their distributions in code smell versus noncode smell classes and methods. We found that Immutable and Sink micro patterns are more frequent in classes having code smells compared to the noncode smell classes in the applications we analyzed. On the other hand, LocalReader and LocalWriter nano-patterns are more frequent in code smell methods compared to the noncode smell methods. We conclude that code smells are correlated with both micro and nano-patterns.


2020 ◽  
Vol 8 (2S7) ◽  
pp. 2223-2232

Long-term evolution and maintenance of the software system result in the introduction of different kinds of code smell in the underlying source code of the software system. These code smells are the direct indication of degraded quality and increased understandability and maintainability efforts at the developer’s end. Identification of these symptoms (code smells) that affects quality is an important aspect of software maintenance. Therefore, this paper targets identifying two key code smells, namely Long Method and Long Parameter List. The presence of these code smells directly affects the understandability and reusability of the underlying code. The proposed Long Method code smell detection technique depends on four main criteria, the size aspect of the method, Cyclomatic complexity of the method, functional relatedness of the method, and the semantic relatedness among different statements of the method. The proposed functional relatedness aspect at the method level is based on the idea of usage patterns present in the method. These usage patterns help in predicting functionality of the method and are a direct indicator of the fact whether the method is uni- functional (performs a single task) or multifunctional (performs more than one task). The proposed semantic relatedness is based on the tokens extracted at the method level and represents the importance of semantic (underlying concept) aspects at the method level. The proposed approach for Long Parameter List smell detection is also based on two important aspects, namely the size of the parameter list and the complexity of the data types used in the parameter list. The proposed approaches of this paper are experimentally validated and tested against state of the art existing approaches/ tools. The obtained experimental results point to the accuracy and relevance of the proposed approaches.


Author(s):  
Venkatesh Podugu

Software maintenance is one of the main phase in software evaluation. This paper presents the relation between software metrics and maintainability. This paper explains about the concept of Software code readability and its relation to software quality. The quality of code is very essential for the future and for the reuse purpose. Here generated a code readability model to calculate the readability of the code by selecting the snippets and these snippets are to be given to the expert to rate them. Collecting the features of code and combing the judgments generated the readability model. This paper focus on providing the graphical user interface (GUI),to the code readability model to improve the understanding of software code readability. By providing the readability of code to the many open source projects, automatically informing the existed code quality to improve the quality of code. It show that this readability model developed is correlates strongly with three measures of software quality: code changes in software, defect log messages and automated defect reports. It measures correlations over many releases of selected projects.


Author(s):  
Amandeep Kaur ◽  
Sushma Jain ◽  
Shivani Goel ◽  
Gaurav Dhiman

Context: Code smells are symptoms, that something may be wrong in software systems that can cause complications in maintaining software quality. In literature, there exists many code smells and their identification is far from trivial. Thus, several techniques have also been proposed to automate code smell detection in order to improve software quality. Objective: This paper presents an up-to-date review of simple and hybrid machine learning based code smell detection techniques and tools. Methods: We collected all the relevant research published in this field till 2020. We extracted the data from those articles and classified them into two major categories. In addition, we compared the selected studies based on several aspects like, code smells, machine learning techniques, datasets, programming languages used by datasets, dataset size, evaluation approach, and statistical testing. Results: Majority of empirical studies have proposed machine- learning based code smell detection tools. Support vector machine and decision tree algorithms are frequently used by the researchers. Along with this, a major proportion of research is conducted on Open Source Softwares (OSS) such as, Xerces, Gantt Project and ArgoUml. Furthermore, researchers paid more attention towards Feature Envy and Long Method code smells. Conclusion: We identified several areas of open research like, need of code smell detection techniques using hybrid approaches, need of validation employing industrial datasets, etc.


2021 ◽  
pp. 004723952110160
Author(s):  
Kristen L. Granger ◽  
Maureen A. Conroy ◽  
Kevin S. Sutherland ◽  
Edward G. Feil ◽  
Jessica Wright ◽  
...  

The purpose of this article is to describe the adaptation process of an evidence-based early childhood Tier-2 intervention program, BEST in CLASS-Prekindergarten, from a face-to-face format to a web-based delivery format called BEST in CLASS-Web. We describe the three-phase iterative development process used to adapt the parent program for delivery via the web. Activities in these phases included focus groups, interviews, an expert panel review, alpha and beta testing (Phase 1), feasibility testing (Phase 2), and a pilot promise study (Phase 3). Each phase included a series of refinements and improvements to materials based on data and stakeholder feedback. Lessons learned and implications for developing and implementing professional development services via online platforms are discussed.


2019 ◽  
Vol 3 (Supplement_1) ◽  
pp. S71-S71
Author(s):  
Eleanor S McConnell ◽  
Kirsten Corazzini ◽  
T Robert Konrad

Abstract Although the impact of dementia on the health and well-being of those living with Alzheimer’s Disease and related Disorders (ADRD) and their care partners has been widely studied, less attention has been paid to how the disease impacts individuals within the context of their larger social networks. This symposium presents findings from a series of integrated studies aimed at strengthening measurement of health and well-being among older adults with living with dementia and well-being among members of their social networks. Findings will be presented from five studies: (1) a scoping review of social network measurement in older adults in chronic illness, including dementia, that emphasizes the use of technology in measuring older adults’ social networks; (2) a simulation study to evaluate the feasibility and reliability of sensor technology to measure social interaction among a person living with dementia and others in their immediate surroundings; (3) development of a web-based application that allows older adults to map and activate their social networks; (4) a qualitative analysis of interviews from persons living with dementia, their unpaid caregivers, and paid caregivers from an adult day health program concerning well-being focused outcomes; and (5) a mixed methods analysis of the feasibility of using both traditional and novel measures of health and well-being deployed among networks of people living with dementia. Emerging technologies for measuring social networks health and well-being hold promise for advancing the study of the relationship-based nature of care for people living with dementia.


Author(s):  
Mikael Hallenius

Faith-based organizations and professional development: A case for practical theology? The question discussed in this article is: “in what ways can perspectives from practical theology  contribute to the study of professional development within faith-based organizations? To an swer this question, I present my critical reading of the report, När tilliten prövas: En studie av  studieförbundet Ibn Rushd samhällsbidrag (2019) and the results are analyzed utilizing per spectives from practical theology. My method is theory-testing critical reading where I search  for and present concepts in the report concerning 1) What is said of religion in the relationship  between religion and society in the report? 2) Which perspectives are raised in the report con cerning stakeholders, staff, and visitors/participants behavior? Finally, using perspectives from  practical theology, I outline two answers addressing what professional development in faith based organizations is and how practical theology can contribute in this field. Firstly, I propose  that professional development in faith-based professions occurs when one’s own and other’s  expression of intentional religion is perceived as one of many positive assets from the onset.  Practical theology has the resources to both study and develop knowledge in these processes.  Secondly, I claim that practical theology has resources to identify and utilize lessons learned  from other professions with clear religious identities. Their experiences should be of interest  for actors dealing with similar challenges and for society in general. Professional development  in faith-based organizations is a case for practical theology.  


2005 ◽  
Vol 24 (2) ◽  
pp. 111-126 ◽  
Author(s):  
Doune Macdonald ◽  
Lisa Hunter

The knowledge, skills, and attitudes manifested in health and physical education school curricula are an arbitrary selection of that which is known and valued at a particular place and time. Bernstein’s (2000) theories of the social construction of knowledge offer a way to better understand the relationship between the production, selection, and reproduction of curricular knowledge. This article overviews contemporary knowledge in the primary field (production) upon which curriculum writers in the recontextualizing field may draw. It highlights tensions in the knowledge generated within the primary field and, using a case of the USA’s National Standards for Physical Education (NASPE), demonstrates how particular discourses become privileged when translated into curriculum documents in the recontextualizing field.


Sign in / Sign up

Export Citation Format

Share Document