Oksana Tkachuk, NASA

RACE to build highly concurrent and distributed systems

Abstract

Instantiating, running, and monitoring highly concurrent and distributed systems presents many challenges. Such systems are prone to: concurrency-related issues (races, deadlocks), communication problems (dropped connections), functional issues (unhandled messages), and scalability (the size of the system grows with the number of communicating components). This talk will present solutions to the above problems implemented in RACE: Runtime for Airspace Concept Evaluation, designed at NASA Ames. RACE is a platform for instantiating and running highly concurrent and distributed systems. RACE employs actor programming model, as implemented in the Akka framework. Akka actors communicate through asynchronous messages, do not share state, and process their own messages sequentially. RACE is implemented in the Scala programming language, which improves type safety compared to other JVM languages. RACE is being evaluated in the context of building and running simulations for National Airspace System (NAS) at NASA. However, RACE is an open source, highly-configurable and extensible platform, which makes it suitable for a wide range of applications.

Bio

Oksana Tkachuk is a research engineer in the Robust Software Engineering group at the NASA Ames Research Center. She received PhD in 2008 under the advisement of Dr. Matt Dwyer. Her PhD topic addressed automated support for environment and test harness generation, needed to enable or scale software analysis techniques such as testing, static analysis, model checking, and symbolic execution. She continued applying and extending environment generation techniques at Fujitsu Laboratories of America (2005-2010), for commercial software, and at NASA Ames (2011-present), for safety-critical software. Her website is https://ti.arc.nasa.gov/profile/otkachuk/