about summary refs log tree commit diff
path: root/usth/ICT2.7/P3L1 Software Architecture Subtitles/8 - Architectural Recovery - lang_en_vs4.srt
blob: 6104ae04ad5ed5f9657f6d40024503528ae089e1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
1
00:00:00,180 --> 00:00:03,560
And sometimes, architectural drift and erosion gets you so

2
00:00:03,560 --> 00:00:06,450
far away from the point where your software architecture should

3
00:00:06,450 --> 00:00:10,476
be, that your architecture is completely degraded. And at this

4
00:00:10,476 --> 00:00:13,290
point, you have two main options. The first option is

5
00:00:13,290 --> 00:00:17,140
to keep frantically tweaking the code. And this normally leads

6
00:00:17,140 --> 00:00:20,370
to disaster. Why? Because you only make things worse. You

7
00:00:20,370 --> 00:00:22,570
don't know exactly what you are changing and therefore, you're

8
00:00:22,570 --> 00:00:25,570
basically stabbing in the dark, trying to fix your system.

9
00:00:25,570 --> 00:00:27,580
The other possiblity is that you can try to

10
00:00:27,580 --> 00:00:29,830
determine the software system architecture

11
00:00:29,830 --> 00:00:31,710
from its implementation level artifacts,

12
00:00:31,710 --> 00:00:34,520
so you try to derive what the architecture is

13
00:00:34,520 --> 00:00:36,610
and try to fix it, once you have derived the

14
00:00:36,610 --> 00:00:39,266
architecture. And this is what is normally called, architectural

15
00:00:39,266 --> 00:00:44,210
recovery, determining a software architecture from an implementation and fixing

16
00:00:44,210 --> 00:00:46,410
it. And as you can imagine, this is normally

17
00:00:46,410 --> 00:00:49,330
a more recommended way to go than the first solution.