• DocumentCode
    1292444
  • Title

    Suffix tree-based approach to detecting duplications in sequence diagrams

  • Author

    Liu, Hongying ; Niu, Zheng ; Ma, Z. ; Shao, Weiqun

  • Author_Institution
    Sch. of Comput. Sci. & Technol., Beijing Inst. of Technol., Beijing, China
  • Volume
    5
  • Issue
    4
  • fYear
    2011
  • fDate
    8/1/2011 12:00:00 AM
  • Firstpage
    385
  • Lastpage
    397
  • Abstract
    Models are core artefacts in software development and maintenance. Consequently, quality of models, especially maintainability and extensibility, becomes a big concern for most non-trivial applications. For some reasons, software models usually contain some duplications. These duplications had better be detected and removed because the duplications may reduce maintainability, extensibility and reusability of models. As an initial attempt to address the issue, the author propose an approach in this study to detecting duplications in sequence diagrams. With special preprocessing, the author convert 2-dimensional (2-D) sequence diagrams into an 1-D array. Then the author construct a suffix tree for the array. With the suffix tree, duplications are detected and reported. To ensure that every duplication detected with the suffix tree can be extracted as a separate reusable sequence diagram, the author revise the traditional construction algorithm of suffix trees by proposing a special algorithm to detect the longest common prefixes of suffixes. The author also probe approaches to removing duplications. The proposed approach has been implemented in DuplicationDetector. With the implementation, the author evaluated the proposed approach on six industrial applications. Evaluation results suggest that the approach is effective in detecting duplications in sequence diagrams. The main contribution of the study is an approach to detecting duplications in sequence diagrams, a prototype implementation and an initial evaluation.
  • Keywords
    software maintenance; software performance evaluation; software prototyping; software reusability; trees (mathematics); 1D array; 2-dimensional sequence diagrams; DuplicationDetector; construction algorithm; detecting duplications; model reusability; nontrivial applications; prototype implementation; quality of models; separate reusable sequence diagram; software development; software maintenance; software models; suffix tree-based approach;
  • fLanguage
    English
  • Journal_Title
    Software, IET
  • Publisher
    iet
  • ISSN
    1751-8806
  • Type

    jour

  • DOI
    10.1049/iet-sen.2009.0029
  • Filename
    5977133