Download presentation
Presentation is loading. Please wait.
Published byRobyn Bridges Modified over 9 years ago
1
ACDC: An Algorithm for Comprehension-Driven Clustering Vassilios Tzerpos R.C. Holt
2
Highest cohesion clustering SS1 SS2 SS4 SS11 SS12 SS9 SS10 SS8 SS5 SS6 SS7 SS3
3
Contents of SS11
4
Essential comprehension features §Effective cluster naming §Bounded cluster cardinality §Familiarity l Comprehension as pattern recognition l Certain subsystem patterns emerge often in manual decompositions of software systems
5
Source file pattern Proc3 Proc2 Proc1Proc4 Proc6 Proc5 Var1 Var2 Var3 File1File2
6
Directory structure pattern File3 File2 File1File4 File6 File5 File7 File8 File9 Dir1Dir2
7
Body-header pattern alice.c bob.h bob.c alice.h
8
Leaf collection pattern sin.ctan.ccos.c
9
Support library pattern busy.cweary.ctired.c
10
Central dispatcher pattern dispatcher.c
11
Subgraph dominator pattern dominator.c a.c z.cg.cf.ce.cd.c c.cb.c
12
The ACDC algorithm §Two stages: l Using a pattern-driven approach, a “skeleton” of the final decomposition is created. Subsystems are named appropriately. l The decomposition is completed by applying an extended version of the Orphan Adoption algorithm
13
Skeleton construction §Source file clusters §Body-header conglomeration §Leaf collection and support library identification §Ordered and limited subgraph domination §Creation of “support.ss”
14
Orphan Adoption §Incremental clustering technique §Orphan: a newly introduced resource to a software system §Orphans are adopted by the subsystem that interacts mostly with them §Assuming that a substantial skeleton has been constructed in the first stage, the same technique can be applied here
15
ACDC properties §Subsystems have familiar or intuitive names §The cardinality of the subsystems is bounded §The final decomposition is nested and unbalanced §Limited use of the directory pattern §Magic numbers not important
16
Algorithm validation §We experimented with two different software systems, TOBEY and Linux. §We measured the following: l Performance l Stability l Skeleton size l Quality 54 sec84 sec 81.3%69.4% 64.3%51.1% 64.2%55.7%
17
Conclusions §Clustering approaches should focus on comprehension §Pattern-driven approach appears to perform satisfactorily §Impact of ACDC’s features on comprehension remains to be determined
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.