DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM

Software quality is one of the most important issues in software engineering that attracts attention from both practitioners and researchers. Efforts to ensure good software quality need to be carried out from the beginning of the development cycle, one of which has a major influence on the quali...

Full description

Saved in:
Bibliographic Details
Main Author: Widodo, Sigit
Format: Theses
Language:Indonesia
Online Access:https://digilib.itb.ac.id/gdl/view/66549
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Institut Teknologi Bandung
Language: Indonesia
id id-itb.:66549
spelling id-itb.:665492022-06-28T17:29:09ZDEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM Widodo, Sigit Indonesia Theses design smell, class diagram, tool, detection. INSTITUT TEKNOLOGI BANDUNG https://digilib.itb.ac.id/gdl/view/66549 Software quality is one of the most important issues in software engineering that attracts attention from both practitioners and researchers. Efforts to ensure good software quality need to be carried out from the beginning of the development cycle, one of which has a major influence on the quality is how developers design software. But carelessness and inexperience can make a design bad. The bad design can be interpreted as a design smell. Design smells can have a negative impact on software quality. The tools available for detecting design smells are generally found in the program code. While detecting a design smell as early as possible is something that needs to be done, detection usually occurs very late, and then the solution is very complex. Therefore we need a tool that can detect the design smell at the design stage. UML class diagram artifacts at the design stage can be used to detect design smells because they have class information and the relationship between classes on the system. In the development of tools, it is necessary to identify the characteristics of the design smell based on the UML class diagram. Identification is done based on the definition that has been put forward by previous researchers which is then analyzed according to the information available on the UML class diagram. The results of the analysis are then validated by software experts consisting of practitioners and academics. As a result, design smells can be identified by utilizing available software metrics, rules and thresholds that are determined based on the characteristics of each type of design smell. Of the 25 types of design smells, the detection in the UML class diagram can be classified into three, 12 smells that can be detected automatically, 7 smells that are detected automatically in part of their manifestations, and 6 smells that need to be detected by direct review or require program code information. The results of the design smell detection in the UML class diagram are still suspect, so it is still necessary to re-examine whether the smell should be avoided or not in certain circumstances. The design smell detection tool with class diagram (DECLAD) was developed by utilizing the XML file from the UML class diagram as input to the tool, to be further processed according to the characteristics obtained. DECLAD can detect 19 design smells which are classified as auto-detectable and some of their manifestations can be detected automatically, namely missing abstraction, imperative abstraction, multifaceted abstraction, unnecessary abstraction, unutilized abstraction, duplicate abstraction, deficient encapsulation, leaky encapsulation, broken modularization, insufficient modularization. , cyclically-dependent modularization, hub-like modularization, unnecessary hierarchy, unfactored hierarchy, wide hierarchy, speculative hierarchy, deep hierarchy, multipath hierarchy and cyclic hierarchy. DECLAD can speed up the detection process carried out by software developers at the design stage based on UML class diagrams and can detect design smells earlier. text
institution Institut Teknologi Bandung
building Institut Teknologi Bandung Library
continent Asia
country Indonesia
Indonesia
content_provider Institut Teknologi Bandung
collection Digital ITB
language Indonesia
description Software quality is one of the most important issues in software engineering that attracts attention from both practitioners and researchers. Efforts to ensure good software quality need to be carried out from the beginning of the development cycle, one of which has a major influence on the quality is how developers design software. But carelessness and inexperience can make a design bad. The bad design can be interpreted as a design smell. Design smells can have a negative impact on software quality. The tools available for detecting design smells are generally found in the program code. While detecting a design smell as early as possible is something that needs to be done, detection usually occurs very late, and then the solution is very complex. Therefore we need a tool that can detect the design smell at the design stage. UML class diagram artifacts at the design stage can be used to detect design smells because they have class information and the relationship between classes on the system. In the development of tools, it is necessary to identify the characteristics of the design smell based on the UML class diagram. Identification is done based on the definition that has been put forward by previous researchers which is then analyzed according to the information available on the UML class diagram. The results of the analysis are then validated by software experts consisting of practitioners and academics. As a result, design smells can be identified by utilizing available software metrics, rules and thresholds that are determined based on the characteristics of each type of design smell. Of the 25 types of design smells, the detection in the UML class diagram can be classified into three, 12 smells that can be detected automatically, 7 smells that are detected automatically in part of their manifestations, and 6 smells that need to be detected by direct review or require program code information. The results of the design smell detection in the UML class diagram are still suspect, so it is still necessary to re-examine whether the smell should be avoided or not in certain circumstances. The design smell detection tool with class diagram (DECLAD) was developed by utilizing the XML file from the UML class diagram as input to the tool, to be further processed according to the characteristics obtained. DECLAD can detect 19 design smells which are classified as auto-detectable and some of their manifestations can be detected automatically, namely missing abstraction, imperative abstraction, multifaceted abstraction, unnecessary abstraction, unutilized abstraction, duplicate abstraction, deficient encapsulation, leaky encapsulation, broken modularization, insufficient modularization. , cyclically-dependent modularization, hub-like modularization, unnecessary hierarchy, unfactored hierarchy, wide hierarchy, speculative hierarchy, deep hierarchy, multipath hierarchy and cyclic hierarchy. DECLAD can speed up the detection process carried out by software developers at the design stage based on UML class diagrams and can detect design smells earlier.
format Theses
author Widodo, Sigit
spellingShingle Widodo, Sigit
DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
author_facet Widodo, Sigit
author_sort Widodo, Sigit
title DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
title_short DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
title_full DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
title_fullStr DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
title_full_unstemmed DEVELOPMENT OF DESIGN SMELL DETECTION TOOLS WITH UML CLASS DIAGRAM
title_sort development of design smell detection tools with uml class diagram
url https://digilib.itb.ac.id/gdl/view/66549
_version_ 1822277654802333696