Understanding class evolution in object-oriented software

被引:22
|
作者
Xing, ZC [1 ]
Stroulia, E [1 ]
机构
[1] Univ Alberta, Dept Comp Sci, Edmonton, AB T6G 2H1, Canada
关键词
D O I
10.1109/WPC.2004.1311045
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the context of object-oriented design, software systems model real-world entities abstractly represented in the system classes. As the system evolves through its lifecycle, its class design also evolves. Thus, understanding class evolution is essential in understanding the current design of the system and the rationale behind its evolution. In this paper, we describe a taxonomy of class-evolution profiles, a method for automatically categorizing a system's classes in one (or more) of eight types in the taxonomy, and a data-mining method for eliciting co-evolution relations among them. These methods rely on our UMLDiff algorithm that, given a sequence of UML class models of a system, surfaces the design-level changes over its lifecycle. The recovered knowledge about class evolution facilitates the overall understanding of the system class-design evolution and the identification of the specific classes that should be investigated in more detail towards improving the system-design qualities. We report on two case studies evaluating our approach.
引用
下载
收藏
页码:34 / 43
页数:10
相关论文
共 50 条
  • [21] Automating three modes of evolution for object-oriented software architectures
    Tokuda, L
    Batory, D
    PROCEEDINGS OF THE FIFTH USENIX CONFERENCE ON OBJECT-ORIENTED TECHNOLOGIES AND SYSTEMS (COOTS '99), 1999, : 189 - 202
  • [22] Empirical Analysis of Object-Oriented Software Test Suite Evolution
    Alsolami, Nada
    Obeidat, Qasem
    Alenezi, Mamdouh
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2019, 10 (11) : 89 - 98
  • [23] EVOLVE: Adaptive specification techniques for object-oriented software evolution
    Liu, L
    PROCEEDINGS OF THE THIRTY-FIRST HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, VOL V: MODELING TECHNOLOGIES AND INTELLIGENT SYSTEMS TRACK, 1998, : 396 - 405
  • [24] Trends in Object-Oriented Software Evolution: Investigating Network Properties
    Chatzigeorgiou, Alexander
    Melas, George
    2012 34TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2012, : 1309 - 1312
  • [25] A requirement-driven object-oriented software evolution method
    Peng, Rong
    He, Keqing
    Liu, Jing
    Cui, Jingsong
    DYNAMICS OF CONTINUOUS DISCRETE AND IMPULSIVE SYSTEMS-SERIES B-APPLICATIONS & ALGORITHMS, 2006, 13 : 1132 - 1136
  • [26] Maintaining traceability links during object-oriented software evolution
    Antoniol, G
    Canfora, G
    Casazza, G
    De Lucia, A
    SOFTWARE-PRACTICE & EXPERIENCE, 2001, 31 (04): : 331 - 355
  • [27] Understanding object-oriented technology
    Lange, ST
    HYDROCARBON PROCESSING, 1998, 77 (08): : 45 - 46
  • [28] Understanding object-oriented programming
    Bergin, J
    Winder, R
    ACM SIGPLAN NOTICES, 2002, 37 (06) : 18 - 25
  • [29] Understanding object-oriented software through virtual role-play
    Jiménez-Díaz, G
    Gómez-Albarrán, M
    Gómez-Martín, MA
    González-Calero, PA
    5TH IEEE INTERNATIONAL CONFERENCE ON ADVANCED LEARNING TECHNOLOGIES, PROCEEDINGS, 2005, : 875 - 877
  • [30] Software Design Metrics for Object-Oriented Software
    Aggarwal, K. K.
    Singh, Yogesh
    Kaur, Arvinder
    Malhotra, Ruchika
    JOURNAL OF OBJECT TECHNOLOGY, 2007, 6 (01): : 121 - 138