Design defects affect project quality and hinder development and maintenance. Consequently, experts need to minimize these defects in software systems. A promising approach is to apply the concepts of refactoring at higher level of abstraction based on UML diagrams instead of code level. Unfortunately, we find in literature many defects that are described textually and there is no consensus on how to decide if a particular design violates model quality. Defects could be quantified as metrics based rules that represent a combination of software metrics. However, it is difficult to find manually the best threshold values for these metrics. In this paper, we propose a new approach to identify design defects at the model level using the ID3 decision tree algorithm. We aim to create a decision tree for each defect. We experimented our approach on four design defects: The Blob, Data class, Lazy class and Feature Envy defect, using 15 Object-Oriented metrics. The rules generated using decision tree give a very promising detection results for the four open source projects tested in this paper. In Lucene 1.4 project, we found that the precision is 67% for a recall of 100%. In general, the accuracy varies from 49%, reaching for Lucene 1.4 project 80%.
Innovative technological solutions are required to improve patients’ quality of life and deliver suitable treatment. Healthcare workers may be able to watch patients from a distance using the Internet of Things (IoT) by using big data algorithms to analyze instrument outputs. Therefore, it is essential to gather information on use and health problems in order to improve the remedies. To ensure seamless incorporation for use in healthcare institutions, senior communities, or private homes, these technological tools must first and foremost be easy to use and implement. We provide a network cluster-based system known as smart patient room usage in order to achieve this. As a result, nursing staff or caretakers can use it efficiently and swiftly. This work focuses on the exterior unit that makes up a network cluster, a cloud storage mechanism for data processing and storage, as well as a wireless or unique radio frequency send module for data transfer. In this article, a spatio-temporal cluster mapping system is presented and described. This system creates time series data using sense data collected from various clusters. The suggested method is the ideal tool to use in a variety of circumstances to improve medical and healthcare services. The suggested model’s ability to anticipate moving behavior with high precision is its most important feature. The time series graphic displays a regular light movement that continued almost the entire night. The last 12 h’ lowest and highest moving duration numbers were roughly 40% and 50%, respectively. When there is little movement, the model assumes a normal posture. Particularly, the moving duration ranges from 7% to 14%, with an average of 7.0%.
Object-oriented programming (OOP) is prone to defects that negatively impact software quality. Detecting defects early in the development process is crucial for ensuring high-quality software, reducing maintenance costs, and increasing customer satisfaction. Several studies use the object-oriented metrics to identify design flaws both at the model level and at the code level. Metrics provide a quantitative measure of code quality by analyzing specific aspects of the software, such as complexity, cohesion, coupling, and inheritance. By examining these metrics, developers can identify potential defects in OOP, such as design defects and code smells. Unfortunately, we cannot assess the quality of an object-oriented program by using a single metric. Identifying design-defect-metric-based rules in an object-oriented program can be challenging due to the number of metrics. In fact, it is difficult to determine which metrics are the most relevant for identifying design defects. Additionally, multiple thresholds for each metric indicates different levels of quality and increases the difficulty to set clear and consistent rules. Hence, the problem of object-oriented metrics selection can be ascribed to a multi-criteria decision-making (MCDM) problem. Based on the experts’ judgement, we can identify the most appropriate metric for the detection of a specific defect. This paper presents our approach to reduce the number of metrics using one of the MCDM methods. Therefore, to identify the most important detection rules, we apply the fuzzy decision-making trial and evaluation laboratory (Fuzzy DEMATEL) method. We also classify the metrics into cause-and-effect groups. The results of our proposed approach, applied on four open-source projects, compared to our previous published results, confirm the efficiency of the MCDM and especially the Fuzzy DEMATEL method in selecting the best rules to identify design flaws. We increased the defect detection accuracy by the selection of rules containing important and interrelated metrics.
6 January 2022 in IEEE Transactions on Engineering Management
The expansion of software development industry has led to having team members distributed across different geographical areas. While using agile development by distributed teams has many benefits, it raises many challenges and difficulties as well. Managing remote customer involvement is one of the difficulties faced by distributed agile teams. This article aims to 1) identify the key activity dependencies existing during remote customer involvement in distributed agile development, and 2) design a computer-based system capable of providing coordination support through managing these dependencies. In order to achieve these objectives, two case studies are carried out. Our findings revealed 16 dependencies existing in seven types of activity. In addition, the participatory design approach used in the design shows that a computer-based system to manage the dependencies is capable to manage 14 dependencies existing in five types of activity. This article contributes to understanding the inter-relationships between customer and agile teams and contributes also to developing advanced systems supporting remote customer involvement in distributed agile development.
The objective of cross-project defect prediction (CPDP) is to develop a model that trains bugs on current source projects and predicts defects of target projects. Due to the complexity of projects, CPDP is a challenging task, and the precision estimated is not always trustworthy. Our goal is to predict the bugs in the new projects by training our model on the current projects for cross-projects to save time, cost, and effort. We used experimental research and the type of research is explanatory. Our research method is controlled experimentation, for which our independent variable is prediction accuracy and dependent variables are hyper-parameters which include learning rate, epochs, and dense layers of neural networks. Our research approach is quantitative as the dataset is quantitative. The design of our research is 1F1T (1 factor and 1 treatment). To obtain the results, we first carried out exploratory data analysis (EDA). Using EDA, we found that the dataset is multi-class. The dataset contains 11 different projects consisting of 28 different versions of all the projects in total. We also found that the dataset has significant issues of noise, class imbalance, and distribution gaps between different projects. We pre-processed the dataset for experimentation by resolving all these issues. To resolve the issue of noise, we removed duplication from the dataset by removing redundant rows. We then covered the data distribution gap between different sources and target projects using the min-max normalization technique. After covering the data distribution gap, we generated synthetic data using a CTGANsynthesizer to solve class imbalance issues. We solved the class imbalance issue by generating an equal number of instances, as well as an equal number of output classes. After carrying out all of these steps, we obtained normalized data. We applied the hybrid feature selection technique on the pre-processed data to optimize the feature set. We obtained significant results of an average AUC of 75.98%. From the empirical study, it was demonstrated that feature selection and hyper-parameter tuning have a significant impact on defect prediction accuracy in cross-projects.