• DocumentCode
    2508629
  • Title

    The Hierarchical Dependence Diagram: improving design for reuse in object-oriented software development

  • Author

    Chen, Jian ; Chau, Iwan Tjuwito

  • Author_Institution
    Dept. of Software Dev., Monash Univ., Caulfield East, Vic., Australia
  • fYear
    1996
  • fDate
    14-18 Jul 1996
  • Firstpage
    155
  • Lastpage
    166
  • Abstract
    Object-oriented paradigm promises a high level of reusability in software development. However, by just selecting an object-oriented programming language does not guarantee achieving highly reusable software components. Reusable components have to be designed carefully from the early stage of software development. Among many proposed guidelines for improving software reusability, “class independence” is regarded as an important criterion. The guidelines in this category state that the less dependence the class is, the more reusable the class is. However we argue that the use of these guidelines is often very difficult to follow consistently within a group of designers during the design process. This is because the implementation of such guidelines is highly based on individual designer´s interpretation and experience. Another problem is that such guidelines are difficult to apply to a large software system, which may consist of hundreds or even thousands of classes. This paper describes a new notation, called the Hierarchical Dependence Diagram (HDD), to support a more systematic use of “components independence” guidelines by extending reusable classes to “clusters”, “libraries”, and “platforms”. Our work establishes a solid basis for tool support for improving reusability and can be more effectively applied to the development of large object-oriented software systems
  • Keywords
    object-oriented programming; software libraries; software reusability; class independence; clusters; components independence; hierarchical dependence diagram; highly reusable software components; libraries; object-oriented programming language; object-oriented software development; object-oriented software systems; platforms; reusability; software reusability; tool support; Accidents; Guidelines; Object oriented programming; Process design; Proposals; Software design; Software reusability; Software standards; Software systems; Solids;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Australian Software Engineering Conference, 1996., Proceedings of 1996
  • Conference_Location
    Melbourne, Vic.
  • Print_ISBN
    0-8186-7635-3
  • Type

    conf

  • DOI
    10.1109/ASWEC.1996.534132
  • Filename
    534132