Interactive and Guided Architectural Refactoring with Search-Based Recommendation
1
with Search-Based Recommendation 1 Motivation Architectural - - PowerPoint PPT Presentation
Interactive and Guided Architectural Refactoring with Search-Based Recommendation 1 Motivation Architectural refactoring for solving technical debts An ideal design in mind A solution consisting of lots of low-level refactorings
1
2
3
4
5
6
7
8
BusMonitor MapView TableView CurveView
Monitor GUI Bus Data Abstract View Concrete View
9
BusMonitor MapView TableView CurveView
Monitor GUI Bus Data Abstract View Concrete View
`
BusMonitor MapView TableView CurveView
10 10
`
BusMonitor MapView TableView CurveView updateMapView(…)
11 11
`
BusMonitor MapView TableView CurveView updateTableView(…)
12 12
`
BusMonitor MapView TableView CurveView AbstractView
updateTableView(…) updateMapView(…) updateView(…) updateCurveView(…)
13 13
14 14
`
BusMonitor MapView TableView CurveView updateCurveView(…)
15 15
BusMonitor MapView TableView CurveView AbstractView
updateTableView(…) updateMapView(…) updateView(…) updateCurveView(…)
16 16
BusMonitor MapView TableView CurveView AbstractView BusData
17 17
18 18
19 19
20 20
Monitor GUI Bus Data Abstract View Concrete View
`BusMonitor MapView TableView CurveView
21 21
Monitor GUI Bus Data Abstract View Concrete View
BusMonitor MapView TableView CurveView
22 22
Monitor GUI Bus Data Abstract View Concrete View
BusMonitor MapView TableView CurveView BusData
23 23
24 24
Monitor GUI Bus Data Abstract View Concrete View
`BusMonitor MapView TableView CurveView
Monitor GUI Bus Data Abstract View Concrete View
BusMonitor MapView TableView CurveView AbstractView BusData
25 25
26 26
27 27
𝑶𝒕𝒖𝒔 = 𝑩𝒄𝒕 𝒏𝒑𝒆𝒇𝒎 +
𝒆∈𝑬𝒋𝒘(𝒏𝒑𝒆𝒇𝒎)
|𝑻𝒔𝒅(𝒆)|
A B
X
A B
X Y Z
28 28
𝑶𝒕𝒖𝒔 = 𝑩𝒄𝒕 𝒏𝒑𝒆𝒇𝒎 +
𝒆∈𝑬𝒋𝒘(𝒏𝒑𝒆𝒇𝒎)
|𝑻𝒔𝒅(𝒆)| 𝑻𝒋𝒏𝒎𝒇𝒚_𝒃𝒘𝒉 ∈ [𝟏, 𝟐) 𝑬𝑹𝒃𝒘𝒉 ∈ [𝟏, 𝟐) 𝑮𝒔𝒇𝒈 = −𝑶𝒕𝒖𝒔 − 𝑬𝑹𝒃𝒘𝒉 − 𝑻𝒋𝒏𝒎𝒇𝒚_𝒃𝒘𝒉 29 29
30 30
𝑮𝒔𝒇𝒈 = −𝑶𝒕𝒖𝒔 − 𝑬𝑹𝒃𝒘𝒉 − 𝑻𝒋𝒏𝒎𝒇𝒚_𝒃𝒘𝒉 𝑭𝒘𝒃𝒔𝒇𝒈 = 𝑮𝒔𝒇𝒈 × (𝟐 − 𝜷)𝒏× (𝟐 + 𝜸)𝒐
31 31
32 32
33 33
34 34
35 35
36 36
37 37
38 38
39 39
40 40
41 41
42 42