We advance a general technique for enriching logical systems with soft constraints, making them suitable for specifying complex software systems where parts are put together not just based on how they meet certain functional requirements but also on how they optimise certain constraints. This added expressive power is required, for example, for capturing quality attributes that need to be optimised or, more generally, for formalising what are usually called service-level agreements. More specifically, we show how institutions endowed with a graded semantic consequence can accommodate soft-constraint satisfaction problems. We illustrate our approach by showing how, in the context of service discovery, one can quantify the compatibility of two specifications and thus formalise the selection of the most promising provider of a required resource.
|Title of host publication||Fundamental Approaches to Software Engineering|
|Editors||Perdita Stevens, Andrzej Wasowski|
|Place of Publication||Berlin|
|Number of pages||18|
|Publication status||Published - 2016|
|Name||Lecture Notes in Computer Science|