Metros using Ruby 地下鉄でRubyを活用中 Daniel Bovensiepen @bovensiepen Thanks for Translation to TAKAI Naoto
Metros using RubyRuby
Daniel Bovensiepen@bovensiepen
Thanks for Translation toTAKAI Naoto
Who?
Daniel Bovensiepen
Who?
Siemens AG
Where?
Germany
What?
~15y just coding15
What?
~10y Ruby10 Ruby
What?
9y sw development9
What?
3y Metros3
Metros using Ruby!Ruby
Only Radio
3
Not Metro-specific
Introduction
Safety?
Introduction
Static Block Areas
Introduction
Introduction
Introduction
Moving Block Areas
Introduction
Introduction
Introduction
Safety?
Introduction
Radio!
1. of 3
1. of 3
Coverage
1. of 3
High Reliable
1. of 3
> 1000 units1000
1. of 3
> 40km40km
Quality
100m versus 8000km100m 8,000km
Quality
ProblemMaintain Quality with 8000km distance
8,000km
Quality
Automatic Validation
Quality
Quality
Inventory
Quality
Automatic Configuration
Quality
Maintenance
Quality
Quality != Finite Task
!=
Quality
Quality == Continuous Process
==
Quality
Production Validation Automatic Configuration
Inventory
Maintenance
Quality
Ruby creates a flowRuby
2. of 3
2. of 3
Many Subsystems
2. of 3
Potential Faults
2. of 3
Hidden
Analysing
ProblemToo many ???
Analysing
Plattform Screen Doors
Analysing
Analysing
Why do they not open?
Analysing
Advantage
Analysing
Logfiles
Analysing
Disadvantage
Analysing
Logfiles
Analysing
Many Logfiles
Analysing
Huge Logfiles
Analysing
Reduce
Analysing
Transform
Analysing
Excel
Analysing
Analysing
Gnuplot
Analysing
Analysing
Graphviz
Analysing
Analysing
Clear
Analysing
Coverage Simulation
Analysing
?Simulation == Reality ==
?
Analysing
Analysing
Analysing
Merge
Analysing
Analysing
Analysing
Ruby transforms ? into !Ruby
3. of 3
3. of 3
6 Metro Lines6
3. of 3
What's next?
3. of 3
New Market
3. of 3
Public Data
3. of 3
Requirements
3. of 3
Not "High" Reliable
3. of 3
But High Throughput
3. of 3
Possible?
3. of 3
ProblemEvaluate Solutions
Prototyping
Roaming
Prototyping
Data Transmission
Prototyping
Unreliable
Prototyping
Low Throughput
Prototyping
Transmission Schema
Prototyping
Load Sharing
Prototyping
Several Approaches
Prototyping
GNU Linux
Roaming Experiments
Transmission Experiments
Prototyping
Ruby connects componentsRuby
Summary
Ruby creates a flowRuby
Ruby transforms ? into !Ruby
Ruby connects componentsRuby
Quality, Analysing and Prototyping
Metros using Ruby!Ruby
Everyone using Ruby!Ruby
Metros using RubyRubyWho?Who?Where?What?What?What?What?IntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroduction1. of 31. of 31. of 31. of 3QualityQualityQualityQualityQualityQualityQualityQualityQualityQualityQuality2. of 32. of 32. of 3AnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysingAnalysing3. of 33. of 33. of 33. of 33. of 33. of 33. of 33. of 33. of 3PrototypingPrototypingPrototypingPrototypingPrototypingPrototypingPrototypingPrototypingPrototyping