Download - ASAS 2014 - Eric Hendriks
railCloudAgile development & design for rail-infrastructure data management
(a personal view)
Me
• Eric Hendriks
• 20 years in all aspects of software development
• Last 10 years:
• Java developer / Architect
• Agile supporter
• Independent contractor
Context• RIGD-LOXIA manages railinfra data
• Multitude of information domains
• Multitude of stakeholders
• Digital schematics (CAD)
• Keep information in sync and compliant with reality
5 PERRONe
3 PERRON
6 PERRONe
7 PERRONe
4 PERRONe
e
35.5
03
S1614-411
S1616-400
Utrecht CS
Deze tekening vervangt:
Formaat Schaal
Geocode Versie
Wijziging, vermenigvuldiging en/of openbaarmaking van deze tekening zonder voorafgaande schriftelijke toestemming van Railinfrabeheer is niet toegestaan.Prorail / Railinfrabeheer is eigenaar van alle digitale en analoge verschijningsvormen van deze tekening en rechthebbende op grond van de Auteurswet 1912.
OBE-blad5
A2X3
35.050 36.130
000201959
0
1 2
3
4
5
6
7
8
9
10
Asd-Zvg
531
S1624-479S1666/8-459
Utrecht CS
Utrecht (OP Ut EBP2)
4,40
S2826-664
S2824-653
Z
S174-378
S182-388S184-372S186-363S188-366S190-292
S212-348
S214-366
S212-274
S214-292
S212-374S214-392
S212-370S214-388
S214-378
S214-372
S150-224S152-240
S212-345S214-363
S2820-466
S2822-448
V
03-12/6Fase 5A1
B-227114Movares
02-09-2013
S212-360
S212-354
S186-240
224
S186-345
S176-392
W
05-12/1Fase 5A2
B-227114Movares
16-09-2013
S2818-737
S2830/2-923S124/8-558S134/6-559
S148-552S146-541S144-547S158-520S156-483
S1284-757
S124/8-719S134/6-720
S148-713S146-702S144-708S158-681
S156-644S1284-918
S2838-688S2834-1172
Vmax=80 km/h
Vmax=80 km/h
Vmax=60 km/h
Vmax=60 km/h
Vmax=60 km/h
Vmax=60 km/h
Vmax=80 km/hVmax=80 km/h
X
03-13/3Fase 5A3
Movares
11-11-2013
S1280-307 479
293 S1666-940S1636-481
S154-184
S152-237
S188-184
S188-237
S1622-481
Vmax=80 km/h
Vmax=80 km/h
B-227114
Y
05-13/2Fase 5A4
B-227114Movares
16-12-2013
137B
213A
213B
137A
139A
139B
175A
171
193A191
193B
195A
195B
201A
173A
173B
175B
185A179B
179A
151A
151B
153
187
183B
205B
209
199A
197B
197A
185B
211
205A
201B
199B
181
203B2)
203A
1621
12)
1633A
1633B
2) Vrijgave rangeren 203A/B in Post OZ
1) Oprijden na opdracht procesleider OZ.
11b
5b
11a
27 28
24 25
8b
9b
12b
14a
VL1306/3
VL176
VL148
VL186/1
VL128
VL124 VL170
VL172
VL136
VL134
190R
VL144VL142
VL150
146/8R
VL156VL154
190
35.4
03
4,00
15b
14b
VL188/1
VL188/2
VL190/1
VL186/2
VL190/2
VL182
VL184
VL174
35.379
35.562
35.417
35.346
35.352
35.568
35.325
156R
VL1614
VL1616
35.130
VL1622
35.170
VL1624VL1632/2
VL1634/2
35.4
95
4,25
35.5
46
1632
1634
5ab
VL1634/1
35.3
00
VL1632/1
2
1
18b
19b
4b
5b
7b
8b
9b
11b
12b
14b
B1-
128
35.2
39
B2-128
35.149
B3-12
835.122
B2-176
35.2
73
B1-136
35.2
38
B1-176
35.183
B2-136
35.148
B3-136
35.121
B3-132
35.0
52
B3-138
35.0
65
B3-140
35.0
62
B1-146
35.256
B1-148
35.2
45
B3-178
35.2
17
B2-178
35.190
B2-148
35.155
B2-146
35.166
B3-148
35.128
B3-146
35.139B1-178
35.120
B2-142
35.0
53
B3-142
35.0
80
B3-144
35.133
B2-144
35.160
B1-184
35.2
03
B1-144
35.2
50
B2-152
35.0
62
B3-152
35.0
89
B3-158
35.160
B2-158
35.187
B1-158
35.2
77
B1-15635.314
B2-156
35.2
24
B3-156
35.197
B3-176
35.3
00
B2-18435.2
93
B3-184
35.3
20
B2-216
35.4
76
B3-216
35.5
03
B1-194
35.7
39
B2-194
35.6
49
B3-194
35.622
11a
12a
14a
15
18a
19a
3) Voorbijrijden na opdracht van procesleider OZ
7)
1:12
1:15
1:15
A170T
133BT
131BT
A150T
A152T
A154T
151BT
151AT
A132T
131AT
125AT
125BT
127BT
A172T
A130T
A122T
137BT
137AT
139AT
A138T
A140T
A142T 141BT
A126T
205BT
A190T
505AT
179BT
195BT
213BT
A156T
A1280T
171T
185BT
193BT 197BT
211T
213AT
A1278T
A136T
A134T
A148T
A146T
A144T
173AT 191T 199BT
173BT
179AT 175BT 212T
A194T
153T
A158T
183BT
183AT
4a
5a
7a
12a
13
14a
15
116
35.0
58
4b
35.119
8a
35.108
9a
10a
11a
35.0
71
35.065
9b
10b
35.121
35.136
35.130
5b
7b
8b
11b
35.2
53
35.118
35.215
35.3
18
35.313
35.312
35.328
103
12b
35.616
18a
19a
14b
16a
102a
35.3
29
35.620
35.412
35.4
08
181T
117
503T
203AT
203BT
35.144
1613BT
35.5
56
35.6
74
akd 3
6.1
16b
17
18b
19b
A1632T
1621T
1633BT
1633AT
1632AT
1634AT
36.111
36.120
a1632BT
b
1634BT
201BT35.415
35.526
35.3
56
118
119
35.3
87
35.3
61
35.284
18c
4,36
35.6
84
1636
9a
B1-1296
35.0
55
B3-186
35.329
B2-186
35.302
B1-186
35.212
B1-190
35.283
B3-190
35.4
00
B2-190
35.3
73
4a
5a
7a
8a
L-128
35.124
L-136
35.123
L-132
35.0
50
L-138
35.0
63
L-140
35.0
60
L-178
35.2
15
L-148
35.130
L-146
35.141
L-142
35.0
78
L-144
35.135
L-152
35.0
87
L-158
35.162
L-156
35.199
L-176
35.2
98
L-184
35.3
18
L-19435.624
L-186
35.327
L-190
35.398
9c
177T
183A
35.375
Utrecht CSUtrecht OZOBE-blad 6
Utrecht CSUtrecht OZOBE-blad 6
Utrecht CSUtrecht (OP Ut EBP2)OBE-blad 4
UtrechtLunetten
OBE-blad 7
UtrechtLunettenOBE-blad 7
4) Cijferbak niet in dienst
4
35.3
79
1
35.5
21
6
6
1
100
Asd-Zvg
35.0
50
200
300
400
35.3
83
35.3
58
35.280
35.7
09
4
35.0
88
35.0
88
141A143B
141B143A
B1-2826
36.0
87
35.0
55
130
132
35.0
58
126
122
124
128
35.0
83
142
35.068
138
140
3,71
35.2
41
170
3,73
172
35.125
148
146
136
134
3,70
35.3
32
186
150
35.092152
35.194
156
35.157
158
192
35.2
20
178
35.214
180
3,73
35.3
23
184
3,74
35.3
07
182
3,65
35.3
29
188
194
3,71
35.3
03
176
3,75
35.3
17
174
35.145
154
218
35.5
06
216
35.135
1614
35.146
1616
3,78
35.2
05
1624
144
B1-2820
36.0
23
B1-2822 B2-2822
B2-2820
36.113
B1-2824
36.0
79
6) Inclusief RS513 aan Noordzijde , locatie komt mogelijk niet overeen i.v.m. verplaatsing in bouwfase 5B
B3-172
B3-170
35.2
38
L-170
35.2
36
L-172
B2-170
35.2
11
B2-172B1-172
35.121
B1-170
B3-174
35.3
14
L-174
35.3
12
B2-17
435.2
87
B1-174
35.197
B3-182
35.304
L-182
35.302
B2-182
35.277
B3-18
835.3
26
L-188
35.3
24
B2-188
35.2
99
B1-188
35.209
B3-154
35.142
L-154
35.140
B2-154
35.115
B3-1632
B3-1634
35.5
43
L-1634
35.5
41
B2-1632
B2-163435.5
16
L-1632 B1-1632
B1-1634
35.4
26
B2-218
35.5
96
L-218
35.5
71
B3-218
35.5
69
A200T
3,88
35.6
77
196
214T
B3-1614
35.132
L-161435.130
B2-1614
35.105
B3-150
35.105
L-150
35.103
B2-150
35.0
78
35.6
70
6
35.7
02
4
3,93
3,93
35.6
95
214
VL158
3,92
35.6
77
200
A202T
35.6
67
B3-200
35.6
80
B2-200
35.7
07
L-200
35.6
82
4
3,92
35.6
95
6
212
GB
GO177
35.248
5)
158R
5) Herhalingssein aan paal met zijsteun
7) RS513 bij achterkant wissel LL
B1-200
35.7
97
207215A
10)
2763T
35.5
18
8
600
700
900
800
36.0
00
100
36.130
7,0 PROM
36.126
spoor GB GO
r= 350 m35.937
36.056
r= 354 mspoor GO
r= 354 m35.938
36.058
r= 350 mspoor GB
r= 1150 m36.029
spoor AO
r= 2000 m36.024
spoor AA
A206BT
AA
AO
215B
35.6
45
35.6
42
4,12
4)
2044/6
35.8
28
8)
4,11
35.8
38
4)
2064/6
35.8
63
4
4,21
4
8
r= 30000 m
35.753
spoor AA 35.846
r= 30000 m
35.976
r= 5000 m
35.532
spoor AA 35.562
500
r= 4500 m
35.496
spoor AO
Rijrichting NOORD
35.527
8) Sein is verlaagd uitgevoerd
10) Fictieve las t.b.v. tooling
215BT
2765T
210T
2761T
3,72
35.2
03
1622
35.178
9) Niet profielvrije las, niet projecteren in beveiliging
9)
35.6
51
10)
35.501
1613A
1627
1613B
35.8
48
6)
6)
11) Las in beveiliging in profiel voor beide richtingen.
35.9
83
11)
36.0
44
36.0
06
1659BT
1665T
1657T
36.0
50
tunnel
B3-180
35.211
B2-180
35.184
L-18035.209
B3-19
235.6
19
B3-1616
35.143
L-1616
35.141
B2-1616
35.116
B3-1622
35.2
06
L-1622
35.2
08
B2-1622
35.2
33
B1-1622
35.3
23
L-1624
35.210
B2-1624
35.235
B1-1624
35.325
B3-1636
35.687
L-1636
35.689
B2-1636
35.714
B1-1636
35.804
B1-18035.130
12) Grendel is niet bedienbaar
1621
10)
122
Dienst overpad
36.1
1:12
3)
1)
35.5
66
spoor 16b 17
35.5
85
35.6
38
35.6
87
35.8
47
35.8
91
spoor AO GB
35.9
40
35.8
12
35.8
91
spoor AA GO
35.9
75
spoor AO
35.5
87
35.6
68
35.7
28
35.6
14
35.7
28
35.8
33
spoor AA
35.8
94
35.7
78
spoor 18c 19b
35.7
43
35.7
90
35.8
45
Z
01-14/2Fase 5C4
R-3SUN13Movares
As-built
18-08-2014
B3-1624 35.208
*0002019
59*
0
1 2
3
4
5
6
7
8
9
10
Deze tekening vervangt:
Formaat Schaal
Geocode Versie
Wijziging, vermenigvuldiging en/of openbaarmaking van deze tekening zonder voorafgaande schriftelijke toestemming van Railinfrabeheer is niet toegestaan.Prorail / Railinfrabeheer is eigenaar van alle digitale en analoge verschijningsvormen van deze tekening en rechthebbende op grond van de Auteurswet 1912.
U
OS-blad0302
A0000261461
531
Asd-Zvg
OS-blad 0302 Prot.214 uitg. A d.d. 221196
35.050 36.130
Utrecht CS
Utrecht (OP Ut EBP2)
4
4
4
4
4
171
179A
173A
179B
151A
151B
153
175A
173B
175B
195B 185B
197A
185A
195A
193B
193A
191
197B
199A
199B
183B
187
205A
201B
209
205B
203A
213A
211
1811:12
AA AB AC
AD AE AF
AG
AH
AJ
AK AL
374m
AM
AX AY
AZ BA
AV AW
S156 420m
S166 381m
LAA LBB
LDD
LEE
Utrecht
OS-blad 1328
Lunetten
LMM LOO
LPP
LRR
335m
268m
239m
239m
S1288 247m
S1292 264m
S1286 306m
S1288 284m
BF BG
BH BJ
BB BC
1621
1633A 1:15
LSS
307m
LVV
LYY
1:12183A
1633B1:15
203B
S1624 479m
S1622
R
GLFL
GL
148
GL
GR
R
GLFL
GL
144
R
R
GLFL
R
R
GR
R
GLFL
GLFL
GL
218
134
GL
GR
GL
GLFL
GL
GR
136
GL
GR
GL
128
GL
GLFL
GL
GR
124
GL
GR
R
GLFL
158
GL
GR
R
GLFL
156
GL
GR
R
GLFL
192
GL
GR
R
GLFL
194
GL
GR
204
206
R
GLFL
GL
GR
R
GLFL
GL
GR
R
GLFL
1624
GL
GR
R
GLFL
1622
GL
GR
W
1636
R
GLFL
GL
GR
139A
141A
137A
139B
137B
143A
143B
141B
AN AP AQ
AR AS
Utrecht CS
OS-blad 0300Utrecht (OP Ut EBP2)
AU
AT
S1296 252m
S1296 241m
S1298 241m
S1298 252m
S1294 252m
S1296 246m
S1294 246m
R
GL
GL
146
GR
GLFL
177
LZZ
196
R
GLFL
GL
GR
S1284 757m
S156 483m
S158 520m
S144 547m
S146 541m
S148 552m
S134 559m
S136 559m
S128 558m
S124 558m
200
R
GLFL
GL
GR
S1284 757m
S156 483m
S158 520m
S144 547m
S146 541m
S148 552m
S134 559m
S136 559m
S128 558m
S124 558m
213B
215A
215B
S1284 918m
S156 644m
S158 681m
S144 708m
S146 702m
S148 713m
S134 720m
S136 720m
S128 719m
S124 719m
S144 708m
S146 702m
S148 713m
S134 720m
S136 720m
S128 719m
S124 719m
201A
293m
481m
207
1613B
5)1)
2)
1) Rijweginstelling over wl 1621 LL is niet mogelijk.2) Rijweginstelling over wl 203B LL is niet mogelijk
5) Geen rijweginstelling mogelijk over wl 1613B RL Q
R
S
T
U
2013-0421Prot.1714A
B-227114Movares
21-04-2013
2013-0902Prot 1728B
B-227114Movares
02-09-2013
2013-0916Prot. 1731B
B-227114Movares
16-09-2013
2013-1111/5A3Prot.1871
B-227114Movares
11-11-2013
2013-1216/5A4Prot.1935
B-227114Movares
As-built
16-12-2013
*0002614
61*
Agile@RIGD-LOXIA• Roughly 80 employees, 35 Java developers
• Eclipse RCP and more recently Web (GWT)
• 5 years of agile development
• Embraced by management
• Trust in craftsmanship
• Room for creativity
Pride & Craftsmanship
• Proud
• Highly motivated
• High quality software
• Creative
• Continously adding value
Context
System
System
System
System
System
System
System
Context
Complexity = (Nr of systems)2
“Combinatory explosion of complexity”
Context
System
System
System
System
System
System
Data
Business !!!
Context
System
System
System
System
System
System
railCloud
Architectural choices
• Types: files (cad-drawings) -> data-objects
• No predefined schema
• Scalable
• In common: internet
• Talking about uniquely identifiable resources
railCloud
• CRUD of JSON documents stored in collections
• Multiple functional & technical keys
• Audit trail (historic data)
• Relationships (composites, aggregates, associations)
• Optimistic locking mechanism
Demo
• railDocs client
• > 3000 registered users
• Requesting thousands of schematics per day
• railCloud generic frontend
• Multiple external clients connecting directly
Challenges
• “Bob the Builder syndrome”
• Where’s the business model
• Less than agile environment
• Role of the Product Owner?
“Bob the Builder syndrome”
• Can we build it? YES WE CAN!
• “This way we have total control”
• “This time we keep it simple”
• “Platform abstractions create overhead”
• “Framework = expensive”
• “Vendor lock-in”
Where’s the business model
• Not gone, just moved
• Java library. But what about non-java clients
• Exposed internal data model (lock for change)
Business !!!
railCloud
Less than agile environment
• Environment guided by policies and procedures
• Place in the enterprise architecture
• Clients and end-users cannot cope with continuous change
• Technology push, but what about the processes
Keep them involved!
Role of the Product Owner
• No formal PO, budget or resources
• Continuously negotiating for time and resources
• More and more a separate and mature product
• Missed opportunities?
Assign a product owner!(If a component becomes a product)
Beware of “Bob the builder syndrome”
Involve non-agile stakeholders even more
Provide a product with a PO when mature enough
You can move but you can’t hide your business model