The symfinder-2 toolchain
symfinder-2 is an extension of the symfinder toolchain that incorporates the usage relationships to better characterize the visualized density of potential variability implementations, together with an extended visualization relying on entry point classes.
Demos and experiments
All the visualizations for projects presented in “Extending the Identification of Object-Oriented Variability Implementations using Usage Relationships” are available here.
Details about the notion of density are available here.
Subject systems
Subject system | LoC | # vp-s | # variants | API | Type | Analysis time (HH:MM:ss) |
---|---|---|---|---|---|---|
Java AWT | 69,974 | 795 | 1,706 | Documented | Library | 00:02:32 |
Apache CXF 3.2.7 | 48,655 | 3,403 | 7,625 | Documented | Framework | 00:43:25 |
JUnit 4.12 | 7,717 | 109 | 245 | Documented | Framework | 00:00:34 |
Apache Maven 3.6.0 | 105,342 | 612 | 1,147 | Documented | Application | 00:02:32 |
JFreeChart 1.5.0 | 94,384 | 926 | 1,923 | Documented | Library | 00:04:29 |
ArgoUML | 134,367 | 776 | 1,959 | Documented | Application | 00:05:59 |
Cucumber 6.8.0 | 42,662 | 238 | 282 | Annotations | Framework | 00:01:06 |
Logbook 2.2.1 | 16,210 | 96 | 162 | Annotations | Library | 00:00:32 |
Riptide 2.11.0 | 12,626 | 102 | 218 | Annotations | Library | 00:00:28 |
Apache NetBeans 12.1 | 5,058,448 | 3,621 | 6,736 | Documented | Application | 01:55:04 |
Analysis system and rendering desktop
Processor (CPU) | Intel(R) Core(TM) i7-9850H (12 cores) @ 4.6GHz |
GPU | AMD ATI Radeon PRO WX 3200 |
RAM | 32GB DDR3 |
Operating System | Arch Linux 5.11.12-arch1-1 x64 |
Filesystem | EXT4 |
Hard Disk | 250 GiB SSD |
Java Runtime Environment (JRE) | OpenJDK Runtime Environment 1.8.0_201-b08 |
Java Virtual Machine (JVM) | OpenJDK 64-Bit Server VM 1.8.0_201 |
Mozilla Firefox version | Mozilla Firefox for Arch Linux 87.0 |
Google Chrome version | Google Chrome 89.0.4389.114 |
Get symfinder-2
You can get symfinder-2 on Zenodo.