Adaptive quality-aware programming with declarative QoS constraints

Oliver Lampl, Lázló Böszörményi · Internet, Multimedia Systems and Applications · 2008

Quality of service (QoS) has become one of the most important aspects of modern multimedia applications. Nevertheless, programming of QoS-aware, adaptive applications is cumbersome and error-prone. Several QoS-oriented programming methods and tools have been presented, relying on special languages or complex frameworks. Instead, we suggest to slightly extend an existing general-purpose programming language and make thus adaptive programming as easy and as safe as any normal, exception-based programming. We extend a general-purpose system programming language (C#) with the following features: (1) A time dimension, which can be added to any existing data type; (2) A new time-constrained assignment (streaming) statement and a time-constrained parameter passing (streaming) mode; (3) Declarative QoS specifications. We suggest some patterns for adaptive, quality-aware programming and present sample implementations emphasizing the advantages of the new programming model. Performance measurements show negligible overhead when applying the new language features in real-life multimedia applications.

Read the paper · More papers on PaperTik