Subscribe to our Erlang Factory newsletter to receive the latest updates and news

Jan Henry Nystrom
Call me Henry
Erlang Solutions Ltd

Speaker
Jan Henry Nyström has been using Erlang for well over a decade. Having come in contact with it at Uppsala University in the late nineties, he started his PhD developing a tool that could automatically extract and formally analyze the supervision structure of an Erlang/OTP application from the source code.

In 2002, he became a research associate at Heriot-Watt University in Edinburgh. There, he was able to re-implement existing distributed Motorola applications written in C++ to Erlang. His research resulted in the publication of numerous papers and journal entries. In 2006, he joined Erlang Solutions as a Research and Training manager. His involvement is not only with training and research. He has kept his knowledge and experience up to date by being involved as an Erlang/OTP consultant and lead developer in many high profile projects.

Jan Henry Nystrom is Giving the Following Talks
Automatic Assessment of Failure Recovery in Erlang Applications

Erlang is a concurrent functional language, well suited for distributed, highly concurrent and fault-tolerant software. An important part of Erlang is its support for failure recovery. Fault tolerance is provided by organising the processes of an Erlang application into tree structures. In these structures, parent processes monitor failures of their children and are responsible for their restart. Libraries support the creation of such structures during system initialisation. A technique to automatically analyse that the process structure of an Erlang application from the source code is presented. The analysis exposes shortcomings in the fault tolerance properties of the application. First, the process structure is extracted through static analysis of the initialisation code of the application. Thereafter, analysis of the process structure checks that it will recover from any process failure. The technique has been implemented in a tool, and applied it to several OTP library applications and to a subsystem of the AXD 301 ATM switch.