GTSEAug 12, 2015

A Game of Attribute Decomposition for Software Architecture Design

arXiv:1508.02812v11 citations
Originality Highly original
AI Analysis

This work addresses the challenge of ad-hoc decision-making in software architecture design for system designers, offering a novel mathematical approach to improve guidance.

The authors tackled the problem of attribute-driven software architecture design by proposing a game-theoretic model called decomposition game, which provides a mathematical framework for making trade-offs among conflicting quality attributes, and they proved that a solution always exists while investigating its computational complexity.

Attribute-driven software architecture design aims to provide decision support by taking into account the quality attributes of softwares. A central question in this process is: What architecture design best fulfills the desirable software requirements? To answer this question, a system designer needs to make tradeoffs among several potentially conflicting quality attributes. Such decisions are normally ad-hoc and rely heavily on experiences. We propose a mathematical approach to tackle this problem. Game theory naturally provides the basic language: Players represent requirements, and strategies involve setting up coalitions among the players. In this way we propose a novel model, called decomposition game, for attribute-driven design. We present its solution concept based on the notion of cohesion and expansion-freedom and prove that a solution always exists. We then investigate the computational complexity of obtaining a solution. The game model and the algorithms may serve as a general framework for providing useful guidance for software architecture design. We present our results through running examples and a case study on a real-life software project.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes