• Title/Summary/Keyword: Cohesion Metric

Search Result 12, Processing Time 0.02 seconds

Identification of Business Component based on Independence Metric (독립척도 기반의 비즈니스 컴포넌트 식별)

  • Choi, Mi-Sook;Cho, Eun-Sook
    • The KIPS Transactions:PartD
    • /
    • v.11D no.3
    • /
    • pp.625-634
    • /
    • 2004
  • When constructing a component based system, It is understood that identifying reusable and independent business components is of utmost importance. However, according to conventional component based developing methodologies, most of developers depend on their experience and/or intuition for identification of business components. Furthermore, there are no criteria to evaluate whether the identified business components are more independently defined or not. Therefore, we propose a component identification metrics to apply to component properties In order to complement the difficulties of identifying business components through developers' experience and/or intuition. The metrics defined are the criteria for identifying the business Components and/or for evaluating the Identified components. We propose both a cohesion metric, and a coupling metric, to which component properties are applied, wherein those properties can be understood by high cohesion in, and low coupling between, components. Moreover, we propose an independence metric that can evaluate the degree of independence for a particular component by ratio of the cohesion and coupling of components. The metrics that we propose are applied to case study which demonstrates the identification of more independent business components and the validity of our metrics.

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

A Cohesion Metric for Classes in Object-Oriented Systems (객체지향 시스템의 클래스에 대한 응집도)

  • Chae, Hong-Seok;Gwon, Yong-Rae;Bae, Du-Hwan
    • Journal of KIISE:Software and Applications
    • /
    • v.26 no.9
    • /
    • pp.1095-1104
    • /
    • 1999
  • 객체지향 시스템의 개발은 클래스를 통해서 이루어진다. 즉, 문제 영역에 존재하는 중요한 대상 또는 개념을 클래스로 모델링하고, 이로부터 생성된 객체들 사이의 메시지 교환을 통해서 시스템은 구축된다. 또한, 클래스는 정보 은닉을 제공함으로써, 객체지향 시스템의 재사용성과 유지보수성에 상당한 기여를 한다. 그러나, 설계 단계에서 실세계의 대상을 부적절하게 모델링하거나, 또는 유지보수 단계에서 클래스에 무분별한 변경을 가하는 경우 클래스의 품질은 악화될 수 있고, 이는 결국 시스템을 유지보수 하거나 확장하는데 상당한 장애를 초래한다.응집도는 모듈의 구성 요소들 사이의 연관성 정도를 나타내는 척도로서 전통적으로 모듈의 품질을 평가하기 위한 기준으로 사용되어 왔다. 이 논문에서는 클래스의 품질을 평가하는 방법으로서의 클래스 응집도를 제안한다. 즉, 클래스가 실세계의 대상을 적절하게 모델링한다면, 그 구성요소들 사이에 밀접한 관련이 있고 결국 높은 응집도를 가지게 될 것이다. 반대로 실세계의 대상에 대한 적절한 모델이 아니라면, 그 클래스의 구성 요소들 사이에는 밀접한 관련성이 없을 것이고 따라서 낮은 응집도를 보일 것이다.Abstract Object-oriented systems are developed by means of classes; that is, classes captures the essential entities or concepts in the problem domain, and the system is embodied by the interactions of objects instantiated from the classes. In addition to the basic units of object-oriented systems, classes serves as the units of encapsulation, which considerably promote the modifiability and the extensibility of them. However, improper modeling in the design phase or uncontrolled changes during the maintenance phase can degrade the quality of classes, which leads to systems cumbersome to maintain and extend.Cohesion refers to the degree of connectivity among the elements of a single module, and is being used as a factor which characterizes the quality of a module. In this paper, we propose a new cohesion metric for assessing the quality of classes. If a class captures properly the essential features of objects, the members of the class surely have strong relationship among them. On the contrary, the poor relationship among class members can indicate that the class is not a proper model of objects.

Cohesion Measure by the Decreasing Factors for an Object-Oriented Paradigm (객체지향 패러다임에서 저해요인에 기반한 응집도 척도)

  • Kim, Sung-Ae;Choi, Wan-Kyoo;Lee, Sung-Joo
    • The Transactions of the Korea Information Processing Society
    • /
    • v.7 no.11
    • /
    • pp.3372-3383
    • /
    • 2000
  • 객체지향 패러다임에서 응집도가 높은 클래스들은 단 하나의 데이터 요소만이 정의되고 모든 메소드(또는 연산)들이 그 데이터 요소 상에서 수행되거나, 메소드와 데이터 요소간에 최대연결이 이루어진 클래스이다. 따라서 데이터 요소의 증가와 최대연결을 저해하는 연산들은 클래스의 응집을 저해하는 주 요인들이다. 본 연구에서는 이러한 저해요인들에 근거하여, 응집도에 관한 우리의 직관과 더욱 일치하는 측정을 할 수 있는 새로운 클래스 응집도 척도인 CM(Cohesion Metric)을 제안하였다. 본 연구에서는 응집도를 저해하는 요인의 식별을 위해 참조 그래프(reference graph)를 이용하고, 참조 그래프의 분석을 기초로 하여 클래스의 응집도를 측정하였다. 또한 제한된 CM 측정값이 응집도 척도가 만족해하는 특성들을 만족함을 보였고, 기존 응집도 척도들과의 비교평가를 통해서 CM이 기존의 척도들보다 향상된 측정을 제시함을 보였다.

  • PDF

Evaluation Metrics for Ontology Modules Based on the Relationship Type (관계 유형에 기반한 온톨로지 모듈 평가 메트릭)

  • Oh, Sun-Ju
    • The Journal of Society for e-Business Studies
    • /
    • v.15 no.2
    • /
    • pp.19-35
    • /
    • 2010
  • In response to an increased need, various methods for ontology modularization have been proposed. However, few studies have focused on evaluative methods for ontology modules. In this study, we devise novel metrics to measure ontology modularity. To evaluate the ontology modules, we introduce cohesion and coupling based on the theory of software metrics. A cohesion metric and two coupling metrics were used to measure cohesion and coupling for ontology modules. These metrics were also used to check consistency between the ontology modules and the original ontology. The new metrics support a more detailed relationship between classes in ontology modules. We validate the proposed metrics using the well known verification framework and perform the empirical experiments to complement previous investigations. This study offers ontology engineers valuable criteria with which to select and use ontology modules and modularization techniques.

Study about Component Identification Method Based On RUP (RUP 기반의 컴포넌트 식별 방법에 관한 연구)

  • Choe, Mi-Suk;Yun, Yong-Ik;Park, Jae-Nyeon
    • The KIPS Transactions:PartD
    • /
    • v.9D no.1
    • /
    • pp.91-102
    • /
    • 2002
  • We need a component-based system to reflect software changes in user's requirements, to implement a system at a rapid speed as well as to efficiently manage the system in a maintenance phase and to easily change software. Moreover, the component-based system has a merit in development cost. However, existing component development methodology for implement of component-based system is inefficient in object identification for component identification. Moreover, the existing component development methodology also fails to provide any method to identify system component. It merely provides procedures and methods to identify business component focused on a whole system domain. In addition, it has another problem that it considerably relies on developer's experiences and intuitions for component identification. Therefore, according to this paper, RUP (Rational Unified Process) is applied from a requirement analysis phase to an object identification phase in order to improve the inefficiency of object identification. In addition, this paper procedures and methods for system component identification, and identifies business components based on the identified system component, rather than on the whole system domain. This paper also provides and applies cohesion metric and coupling metric so as to overcome the problem that component identification depends on developer's intuitions and experiences. Accordingly, the component identification method proposed in this paper, may identify components more effectively based on facility of object identification, functional reusability of components, traceability, and independence of components.

Improvement of Component Design using Component Metrics (컴포넌트 메트릭스를 이용한 컴포넌트 설계 재정비)

  • 고병선;박재년
    • Journal of KIISE:Software and Applications
    • /
    • v.31 no.8
    • /
    • pp.980-990
    • /
    • 2004
  • The component-based development methodology aims at the high state of abstraction and the reusability with components larger than classes. It is indispensible to measure the component so as to improve the quality of the component-based system and the individual component. And, the quality of the component should be improved through putting the results into the process of the development. So, it is necessary to study the component metric which can be applied in the stage of the component analysis and design. Hence, in this paper, we propose component cohesion, coupling, independence metrics reflecting the information extracted in the step of component analysis and design. The proposed component metric bases on the similarity information about behavior patterns of operations to offer the component's service. Also, we propose the redesigning process for the improvement of component design. That process uses the techniques of clustering and is for the thing that makes the component as the independent functional unit having the low complexity and easy maintenance. And, we examine that the component design model can be improved by the component metrics and the component redesigning process.

A Metric of Component Extraction for Package based Object Oriented Codes (패키지 중심의 객체지향 코드의 컴포넌트 추출을 위한 메트릭)

  • 이종호;류성열
    • The Journal of Society for e-Business Studies
    • /
    • v.8 no.2
    • /
    • pp.113-129
    • /
    • 2003
  • Component-based software development (CBSD) has been recognized effective reuse techniques for software development by many of researchers and companies. The purpose of CBSD is to produce a high quality software system quickly through using verified software component which is contained fine-grained business logics. This paper suggests the metrics and techniques for to extract component and its interface from legacy object oriented application. For extract component, we apply metrics to measure complexity, cohesion and coupling to the legacy system.

  • PDF

The Complexity of the Static Structures of Object-Oriented Systems by Analyzing the Class Diagram of UML (UML 클래스 다이어그램의 분석에 의한 객체지향 시스템의 정적 구조 복잡도 연구)

  • Chung, Hong;Hong, Dong-Kwon
    • Journal of the Korean Institute of Intelligent Systems
    • /
    • v.14 no.6
    • /
    • pp.793-799
    • /
    • 2004
  • Many researches and validations for the complexity metrics of the object-oriented systems have been studied. Most of them are aimed for the measurement of the partial aspects of the systems, for example, the coupling between objects, the complexity of inheritance structures, the cohesion of methods, and so on. But the software practitioners want to measure the complexity of overall system, not partial. We studied the complexity of the overall structures of object-oriented systems by analyzing the class diagram of UML. The class diagram is composed of classes and their relations. There are three kinds of relations, association, generalization, and aggregation, which are making the structure of object-oriented systems to be difficult to understand. We proposed a heuristic metric to measure the complexity of object-oriented systems by putting together the three kinds of the relations. This metric will be helpful to the software developers for their designing tasks by evaluating the complexity of the structures of object-oriented system and redesigning tasks of the system.

The Complexity of Object-Oriented Systems by Analyzing the Class Diagram of UML (UML 클래스 다이어그램 분석에 의한 객체지향 시스템의 복잡도 연구)

  • Chung, Hong;Kim, Tae-Sik
    • Journal of the Korean Institute of Intelligent Systems
    • /
    • v.15 no.6
    • /
    • pp.780-787
    • /
    • 2005
  • Many researches and validations for the complexity metrics of the object-oriented systems have been studied. Most of them are aimed for the measurement of the partial aspects of the systems, for example, the coupling between objects, the complexity of inheritance structures, the cohesion of methods, and so on. But the software practitioners want to measure the complexity of overall system, not partial. We studied the complexity of the overall structures of object-oriented systems by analyzing the class diagram of UML. The class diagram is composed of classes and their relations. There are three kinds of relations, association, generalization, and aggregation, which are making the structure of object-oriented systems to be difficult to understand. We proposed a heuristic metric to measure the complexity of object-oriented systems by putting together the three kinds of the relations. Tn analyze the complexity of the structure of a object-oriented system for the maintainability of the system, we measured the degree of understandability of it, the reverse engineering time to draw a class diagram from the source codes, and the number of errors in the diagram. The results of this experiment shows that our proposed metric has a considerable relationship with the complexity of object-oriented systems. The metric will be helpful to the software developers for their designing tasks by evaluating the complexity of the structures of object-oriented systems and redesigning tasks , of them for the future maintainability.