• Title/Summary/Keyword: object-oriented metrics

Search Result 65, Processing Time 0.023 seconds

Coupling Metrics Including Indirect Dependency for Object-Oriented Systems (객체지향 시스템에서 간접 의존성을 포함한 결합도 메트릭)

  • Yoo, Moon Sung
    • Journal of Korea Society of Digital Industry and Information Management
    • /
    • v.7 no.3
    • /
    • pp.37-42
    • /
    • 2011
  • Nowadays software developers are moving from conventional software process technologies to the object-oriented paradigm. To develope the object-oriented softwares efficiently, various software metrics have been suggested. Coupling refers to the degree of independence between components of the system. It has long been well known that good software practice calls for minimizing coupling interaction. Many researches have been studied coupling metrics of the object- oriented systems. We review Chidamber and Kemerer's work & Li's work. In this paper, we study the coupling of the overall structures of object-oriented systems by analyzing the class diagram of UML. We propose four coupling metrics for object-oriented softwares. First, we use an established coupling metric for object- oriented systems as a basic coupling metric. Then we modify the basic coupling metric by including indirect coupling between classes, We also suggest two relative coupling metrics to measure coupling between subsystems. We investigate the theoretical soundness of the proposed metrics by the axioms of Briand et al. Finally, we apply the presented metrics to a practical case study. This coupling metric will be helpful to the software developers for their designing tasks by evaluating the coupling metric of the structures of object-oriented system and redesigning tasks of the system.

Analysis of Object-Oriented Metrics to Predict Software Reliability (소프트웨어 신뢰성 예측을 위한 객체지향 척도 분석)

  • Lee, Yangkyu
    • Journal of Applied Reliability
    • /
    • v.16 no.1
    • /
    • pp.48-55
    • /
    • 2016
  • Purpose: The purpose of this study is to identify the object-oriented metrics which have strong impact on the reliability and fault-proneness of software products. The reliability and fault-proneness of software product is closely related to the design properties of class diagrams such as coupling between objects and depth of inheritance tree. Methods: This study has empirically validated the object-oriented metrics to determine which metrics are the best to predict fault-proneness. We have tested the metrics using logistic regressions and artificial neural networks. The results are then compared and validated by ROC curves. Results: The artificial neural network models show better results in sensitivity, specificity and correctness than logistic regression models. Among object-oriented metrics, several metrics can estimate the fault-proneness better. The metrics are CBO (coupling between objects), DIT (depth of inheritance), LCOM (lack of cohesive methods), RFC (response for class). In addition to the object-oriented metrics, LOC (lines of code) metric has also proven to be a good factor for determining fault-proneness of software products. Conclusion: In order to develop fault-free and reliable software products on time and within budget, assuring quality of initial phases of software development processes is crucial. Since object-oriented metrics can be measured in the early phases, it is important to make sure the key metrics of software design as good as possible.

A Study: UML for OOA and OOD

  • Rajagopal, D.;Thilakavalli, K.
    • International Journal of Knowledge Content Development & Technology
    • /
    • v.7 no.2
    • /
    • pp.5-20
    • /
    • 2017
  • The notion of object oriented analysis and design in software engineering has many rewards that aid the programmer to have an understanding of and improve the program efficaciously. Object oriented metrics helps rather a lot to a programmer or developer to comprehend and unravel the thing-oriented trouble readily and exactly. Object oriented metrics helps in examining the usefulness of object oriented applied sciences or in simple phrases Object-oriented metrics depict characteristics of object-oriented programming. The intention of this paper is to have an understanding of concerning the UML, Object oriented evaluation and design and the way it plays in UML.

Evaluation Metrics for Class Hierarchy in Object-Oriented Databases: Concurrency Control Perspectives

  • Jun Woo-Chun
    • Journal of Korea Multimedia Society
    • /
    • v.9 no.6
    • /
    • pp.693-699
    • /
    • 2006
  • Object-oriented databases (OODBs) have been adopted for managing non-standard applications such as computer-aided design (CAD), office document management and many multimedia applications. One of the major characteristics of OODBs is class hierarchy where a subclass is allowed to inherit the definitions defined on its superclasses. In this paper, I present the evaluation metrics for class hierarchy quality in OODBs. These metrics are developed to determine if a concurrency control scheme can achieve good performance or not on a given class hierarchy. I first discuss the existing concurrency control schemes for OODBs. Then I provide evaluation metrics based on structural information and access frequency information in class hierarchies. In order to discuss significance of the proposed performance metrics, an analytical model is developed. Analysis results show that the performance metrics are important factor in concurrency control performance. I consider both single inheritance and multiple inheritance. The proposed metrics can be used to provide guidelines on how to design class hierarchy of an OODB for maximizing the performance of concurrency control technique.

  • PDF

Evolutionary Computing Driven Extreme Learning Machine for Objected Oriented Software Aging Prediction

  • Ahamad, Shahanawaj
    • International Journal of Computer Science & Network Security
    • /
    • v.22 no.2
    • /
    • pp.232-240
    • /
    • 2022
  • To fulfill user expectations, the rapid evolution of software techniques and approaches has necessitated reliable and flawless software operations. Aging prediction in the software under operation is becoming a basic and unavoidable requirement for ensuring the systems' availability, reliability, and operations. In this paper, an improved evolutionary computing-driven extreme learning scheme (ECD-ELM) has been suggested for object-oriented software aging prediction. To perform aging prediction, we employed a variety of metrics, including program size, McCube complexity metrics, Halstead metrics, runtime failure event metrics, and some unique aging-related metrics (ARM). In our suggested paradigm, extracting OOP software metrics is done after pre-processing, which includes outlier detection and normalization. This technique improved our proposed system's ability to deal with instances with unbalanced biases and metrics. Further, different dimensional reduction and feature selection algorithms such as principal component analysis (PCA), linear discriminant analysis (LDA), and T-Test analysis have been applied. We have suggested a single hidden layer multi-feed forward neural network (SL-MFNN) based ELM, where an adaptive genetic algorithm (AGA) has been applied to estimate the weight and bias parameters for ELM learning. Unlike the traditional neural networks model, the implementation of GA-based ELM with LDA feature selection has outperformed other aging prediction approaches in terms of prediction accuracy, precision, recall, and F-measure. The results affirm that the implementation of outlier detection, normalization of imbalanced metrics, LDA-based feature selection, and GA-based ELM can be the reliable solution for object-oriented software aging prediction.

A Prediction Model for Software Change using Object-oriented Metrics (객체지향 메트릭을 이용한 변경 발생에 대한 예측 모형)

  • Lee, Mi-Jung;Chae, Heung-Seok;Kim, Tae-Yeon
    • Journal of KIISE:Software and Applications
    • /
    • v.34 no.7
    • /
    • pp.603-615
    • /
    • 2007
  • Software changes for various kinds of reasons and they increase maintenance cost. Software metrics, as quantitative values about attributes of software, have been adopted for predicting maintenance cost and fault-proneness. This paper proposes relationship between some typical object-oriented metrics and software changes in industrial settings. We used seven metrics which are concerned with size, complexity coupling, inheritance and polymorphism, and collected data about the number of changes during the development of an Information system on .NET platform. Based on them, this paper proposes a model for predicting the number of changes from the object-oriented metrics using multiple regression analysis technique.

Cohesion and Coupling Metric for Classes in Object - Oriented System (객체 지향 시스템에서의 클래스 응집도와 결합도 메트릭)

  • Lee, Jong-Seok;Wu, Chi-Su
    • Journal of KIISE:Software and Applications
    • /
    • v.27 no.6
    • /
    • pp.595-606
    • /
    • 2000
  • Software metrics evaluate the development process, measure the software development effort, and control the software quality effectively. Moreover in a current status to emphasize reusability, it is necessary to study of cohesion and coupling that plays an important role in evaluating reusability. Object oriented methodology to use the concept like encapsulation, inheritance, and polymorphism demands metrics that are different from existing procedural methodology, so a study for object oriented metrics is in progress at the present time. In this paper, we propose cohesion and coupling metrics for object oriented program, evaluate the proposed metrics by using the complexity properties proposed by Weyuker and Briand, and extract cohesion and coupling from C++ code.

  • PDF

Metrics Measurement System Supporting Quality Evaluation of Java Program (Java 프로그램의 품질평가를 지원하는 메트릭 측정 시스템)

  • Park, Ok-Cha;Yoo, Cheol-Jung;Chang, Ok-Bae
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.7 no.2
    • /
    • pp.151-164
    • /
    • 2001
  • Java, used as the most representative object-oriented language, isil becoming the popular language for Internet/Intranet based program development. Moreover, it is used for development language in a variety of areas such as component based development language. In the view of reuse and maintenance of developed program, quality evaluation of program is becoming a more important issue. So, metrics measurement for quality evaluation of program that is developed at present including existing Java application is necessary. However, it is necessary that whether existing object-oriented software metrics is suitable on Java program is to be validated So, in this paper, we build an automated metrics measurement system that needs to validate on object-oriented software metrics and wish to support metrics measurement that is to determine it. The purpose of this system is to support a precise quality evaluation tool. In this system, we apply the metrics classified by Briand. Briand classified the metrics by formalizing mathematically them to verify feasibility of existing object-oriented software metrics. Using the proposed system, we can make comparison and analysis of validation on existing object-oriented metrics by calculating quantitative information more rapidly from Java source program. If there is any problem in feasibility of the metrics, we can establish a suitable metrics on Java program by considering reiJ,1forcement of the existing metrics or proposing new metrics.

  • PDF

Fault Prediction Using Statistical and Machine Learning Methods for Improving Software Quality

  • Malhotra, Ruchika;Jain, Ankita
    • Journal of Information Processing Systems
    • /
    • v.8 no.2
    • /
    • pp.241-262
    • /
    • 2012
  • An understanding of quality attributes is relevant for the software organization to deliver high software reliability. An empirical assessment of metrics to predict the quality attributes is essential in order to gain insight about the quality of software in the early phases of software development and to ensure corrective actions. In this paper, we predict a model to estimate fault proneness using Object Oriented CK metrics and QMOOD metrics. We apply one statistical method and six machine learning methods to predict the models. The proposed models are validated using dataset collected from Open Source software. The results are analyzed using Area Under the Curve (AUC) obtained from Receiver Operating Characteristics (ROC) analysis. The results show that the model predicted using the random forest and bagging methods outperformed all the other models. Hence, based on these results it is reasonable to claim that quality models have a significant relevance with Object Oriented metrics and that machine learning methods have a comparable performance with statistical methods.

Development of Performance Evaluation Metrics of Concurrency Control in Object-Oriented Database Systems

  • Jun, Woochun;Hong, Suk-Ki
    • Journal of Internet Computing and Services
    • /
    • v.19 no.5
    • /
    • pp.107-113
    • /
    • 2018
  • Object-oriented databases (OODBs) canbe used for many non-traditional database application areas such as computer-aided design, etc. Usually those application areas require advanced modeling power for expressing complicated relationships among data sets. OODBs have more distinguished features than the traditional relational database systems. One of the distinguished characteristics of OODBs is class hierarchy (also called inheritance hierarchy). A class hierarchy in an OODB means that a class can hand down the definitions of the class to the subclass of the class. In other words, a class is allowed to inherit the definitions of the class from the superclass. In this paper, we present performance evaluation metrics for class hierarchy in OODBs from a concurrency control perspective. The proposed performance metrics are developed to determine which concurrency control scheme in OODBs can be used for a given class hierarchy. In this study, in order to develop performance metrics, we use class hierarchy structure (both of single inheritance and multiple inheritance), and data access frequency for each class. The proposed performance metrics will be also used to compare performance evaluation for various concurrency control techniques.