Zoom: https://umd.zoom.us/j/93825468763?pwd=UXlYZmVkVndXb1owMkpYb2tOQjZFQT09
A software’s architecture influences important software characteristics
such as its scalability and security and comes tightly coupled over-time
with application-specific logic. We introduce C-Saw: an approach to develop
reconfigurable architectures for existing software. C-Saw introduces a new
domain-specific language (DSL) to separate an application’s architecture
description from its programming language and manages the architectural
state through distributed key-value tables. C-Saw decouples
application-specific logic from its architecture and enables the
reconfiguration of that architecture by changing DSL expressions. We built
a library-based prototype implementation of C-Saw and have examples of
DSL-based rearchitectures of widely-used, third-party software such as
Redis, cURL, and Suricata.