Report on a Practical Application of ASMs in Software Design [chapter]

Egon Börger, Peter Päppinghaus, Joachim Schmid
2000 Lecture Notes in Computer Science  
ASMs have been used at Siemens Corporate Technology to design a component in a software package called FALKO. Main purpose of FALKO is the construction and validation of timetables for railway systems. For simulation the whole closed-loop traffic control system is modelled within FALKO. The railway process model part of FALKO was formally specified using the ASM approach. C++ code is generated from the formal specification and compiled together with the handwritten C++ code of the other
more » ... ts to obtain the FALKO executable. The project started in May 1998 and was finished in March 1999. Since then FALKO is used by the Vienna Subway Operator for the validation of the whole subway operational service. FALKO Abstract State Machines (ASMs) [Gur95,BH98] have been used at Siemens Corporate Technology to design a component in a software package called FALKO. This name is the German acronym for "Timetable Validation and Timetable Construction" describing concisely the main functionality of this tool. Detailed operational timetables including e.g. vehicle roster plan can be automatically calculated from raw data like train frequency and infrastructure of a railway system. For these calculations estimations of trip times are used. Timetables -whether constructed with FALKO or other tools -have to be validated for operability and robustness. Conventionally this is done by (physically) driving trial runs. With FALKO this costly form of validation can be replaced by dynamic simulation of operational timetables modelling quantitative aspects like velocities and trip times as accurately as needed. To perform dynamic simulation of timetables, the whole closed-loop traffic control system is modelled within FALKO. The model is designed in a modular way with three main components: train supervision/train tracking, interlocking system, and railway process model. Software components for train supervision/train tracking and for the interlocking system are nowadays part of real train operation. The railway process model on the other hand serves to replace the real physical system (trains, signals, switches etc.) in the simulation. 2
doi:10.1007/3-540-44518-8_20 fatcat:oxogr54e6vffjfnanoipkwf3wq