ISISTAN   23985
INSTITUTO SUPERIOR DE INGENIERIA DEL SOFTWARE
Unidad Ejecutora - UE
congresos y reuniones científicas
Título:
Applying Concession-based Negotiation to Architectural Tradeoffs in SQuAT
Autor/es:
DIAZ PACE, JORGE ANDRES; FRANK, SEBASTIAN; RAGO, ALEJANDRO; VAN HOORN, ANDRÉ; VIDAL, SANTIAGO A.
Lugar:
Karlsruhe
Reunión:
Simposio; 8th Symposium on Software Performance 2017; 2017
Resumen:
A key challenge of software architecture design is how to satisfy quality-attribute requirements, which often conflict with each other. This is usually a complex task, because there are several candidate architectures that can meet the same requirements, and the quality-attribute tradeoffs of those architectures need to be considered by the architects. In this context, our work with the SQuAT project intends to assist architects in the exploration of architectures for performance and modifiability. In particular, we have instantiated SQuAT for the case of PCM architectures [2]. From a more general perspective, SQuAT provides a modular framework based on agents (called dbots) for integrating quality-attribute analyzers and solvers, and also features a distributed search-based optimization.Given an initial architecture, each dbot explores (by means of local, heuristic search) different design solutions, but only proposes the best one according to its quality-attribute requirements. The solutions from all dbots are then presented to the user (architect), so that she can make an informed decision about the architecture. A number of tradeoffs naturally emerge from these agent solutions, and these tradeoffs are judged by the architect. Each dbot might internally compute and discard many solutions, even if they can be relevant for the tradeoff analysis, or they could be combined with solutions from other agents and lead to more tradeoffs. Thus, despite the advantages of the distributed search, the solutions currently returned by SQuAT to the architect are limited with respect to a (global) analysis of tradeoffs among alternative architectures.A drawback of SQuAT is that only a small subset of the Pareto frontier is returned by the dbots. If all candidate solutions explored by the dbots were to be provided (i.e., a larger subset of the design space), the architect is likely to experience information overloading issues that discourage her from making good decisions. In this context, we have investigated how negotiation techniques can help to improve the number and quality of the architectural tradeoffs offered to the architect [1]. The idea is that, in order to arrive to satisfying solutions (in terms of quality- attribute tradeoffs), all the participants (humans, or dbots acting on their behalf) should discuss and make compromises on their architectural proposals.Negotiation techniques permit to achieve consensus among proposals generated by different dbots, while keeping the modular knowledge-based approach of SQuAT. In particular, we implemented a multilateral version of the monotonic concession protocol (MCP) that integrates performance-versus-modifiability negotiation within the SQuAT framework. We chose MCP because it models naturally the way humans seem to negotiate about architectural solutions. MCP is intended to generate ?negotiated" solutions that complement the initial tradeoffs currently generated by the dbots. Basically, the outputs of the search are inputs to an MCP algorithm executed among the dbots. A key notion of MCP is that of concession, in which each dbot might propose an inferior solution (for itself) with the hope of reaching a global agreement with the other dbots. In MCP, the architectural candidates are assessed by means of utility functions associated to the dbots.Two MCP strategies for SQuAT have been investigated. The first strategy consists of two sequential phases: i) the dbots search and produce a set of architectural alternatives, and ii) the dbots apply MCP to negotiate over those alternatives until agreeing on a final solution. The second strategy is based on the same two phases, but they are interwined in an iterative fashion. Preliminary results of experiments with a PCM case-study show that both strategies can produce more satisficing tradeoffs than those resulting from a schema of pure search (as previously in SQuAT). Our future work involves a further assessment of the negotiation in larger PCM case-studies, as well as developing better ways of capturing architect?s preferences for the management of architectural tradeoffs.