Dolmen: Towards the programmatic assembly of large-scale distributed systems

Modern distributed applications are becoming increasing large and complex. They often bring together independently developed sub-systems (e.g., for storage, batch processing, streaming, application logic, logging, caching) into large, geo-distributed and heterogeneous architectures. Combining, configuring, and deploying these architectures is a difficult and multifaceted task: individual services have their own requirements, configuration spaces, programming models, distribution logic, which must be carefully tuned to insure the overall performance, resilience, and evolvability of the resulting system. In this project, the student will provide an assembly-based programming framework for the implementation of complex distributed topologies. Specifically, our aim is to provide a Domain Specific Language (DSL) that exploits self-organizing overlays to map at runtime a developer’s high-level description of a complex distributed topology onto a concrete infrastructure. The resulting work will be published to an international conference on systems.

Faculty Supervisor:

Ivan Beschastnikh


Jodi Spacek



Computer science



University of British Columbia


Globalink Research Award

Current openings

Find the perfect opportunity to put your academic skills and knowledge into practice!

Find Projects