The search functionality is under construction.

Keyword Search Result

[Keyword] object-oriented software(3hit)

1-3hit
  • A Class Cohesion Metric Focusing on Cohesive-Part Size

    Hirohisa AMAN  Kenji YAMASAKI  Hiroyuki YAMADA  Matu-Tarow NODA  

     
    PAPER-Metrics, Test, and Maintenance

      Vol:
    E87-D No:4
      Page(s):
    838-848

    Cohesion is an important software attribute, and it is one of significant criteria for assessing object-oriented software quality. Although several metrics for measuring cohesion have been proposed, there is an aspect which has not been supported by those existing metrics, that is "cohesive-part size." This paper proposes a new metric focusing on "cohesive-part size," and evaluates it in both of qualitative and quantitative ways, with a mathematical framework and an experiment measuring some Java classes, respectively. Through those evaluations, the proposed metric is showed to be a reasonable metric, and not redundant one. It can collaborate with other existing metrics in measuring class cohesion, and will contribute to more accurate measurement.

  • Empirical Evaluation of Method Complexity for C++ Program

    Motoyasu TAKEHARA  Toshihiro KAMIYA  Shinji KUSUMOTO  Katsuro INOUE  

     
    LETTER-Software Engineering

      Vol:
    E83-D No:8
      Page(s):
    1698-1700

    This letter empirically evaluates the way how to calculate the complexity of methods, that is used in the definition of WMC(Weighted Method per Class), one of the Chidamber and Kemerer's metrics. With respect to the results of our experiment, Halstead's Software Science metric is the most appropriate one to evaluate the complexity of the methods.

  • A Method for Contract Design and Delegation in Object Behavior Modeling

    Hirotaka SAKAI  

     
    PAPER-Software Theory

      Vol:
    E76-D No:6
      Page(s):
    646-655

    Behavior modeling of objects is critical in object-oriented design. In particular, it is essential to preserve integrity constraints on object behavior in application environments where objects of various classes dynamically interact with each other. In order to provide a stable design technique, a behavior model using the notion of the life cycle schema of a class is proposed. To model the aspect of behavioral abstraction of objects, the notion of schema refinement together with a diagrammatic representation technique is also defined. In this framework, a formalization of behavior constraints on objects which interact with each other is proposed together with its graphical representation. Verification rules of consistency of behavior constraints are also discussed. In order to perform certain functions, several partner objects of the same or different classes should collaborate establishing client-server relationships. The contract of a class is defined as a collection of responsibilities of a server class to a client class where each responsibility is specified in the form of the script. To achieve a high degree of systems integrity, a procedure to derive scripts from behavior constraints on collaborating partners is developed. It is also critical to evenly distribute responsibilities to partner objects. A delegation is placing a whole or a part of responsibilities of an object in charge of other objects. Based on the design principle delegation along the aggregation hierarchy,' a unified design approach to delegation that enables to reorganize scripts in constraints preserving way is proposed.