• DocumentCode
    2745005
  • Title

    Do Maintainers Utilize Deployed Design Patterns Effectively?

  • Author

    Ng, T.H. ; Cheung, S.C. ; Chan, W.K. ; Yu, Y.T.

  • Author_Institution
    City Univ. of Hong Kong, Hong Kong
  • fYear
    2007
  • fDate
    20-26 May 2007
  • Firstpage
    168
  • Lastpage
    177
  • Abstract
    One claimed benefit of deploying design patterns is facilitating maintainers to perform anticipated changes. However, it is not at all obvious that the relevant design patterns deployed in software will invariably be utilized for the changes. Moreover, we observe that many well-known design patterns consist of three types of programming elements (called participants), and that performing an anticipated change typically entails multiple tasks related to different types of participants. This paper studies empirically whether maintainers utilize deployed design patterns, and when they do, which tasks they more commonly perform. Our experiments show that almost all subjects perform the task of adding new concrete participants, fewer perform the tasks involving clients, whereas even fewer perform the tasks involving abstract participants. Furthermore, utilizing deployed design patterns (by performing whichever of the corresponding tasks) is found to be statistically associated with the delivery of less faulty codes.
  • Keywords
    object-oriented programming; software fault tolerance; software maintenance; design pattern; faulty code; software maintenance; Computer science; Concrete; Continuous production; Documentation; Open source software; Quality management; Software design; Software maintenance; Software quality; Software systems; Empirical study; design patterns; faulty codes; software maintenance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2007. ICSE 2007. 29th International Conference on
  • Conference_Location
    Minneapolis, MN
  • ISSN
    0270-5257
  • Print_ISBN
    0-7695-2828-7
  • Type

    conf

  • DOI
    10.1109/ICSE.2007.33
  • Filename
    4222579