18,738 research outputs found
A Game of Attribute Decomposition for Software Architecture Design
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.Comment: 23 pages, 5 figures, a shorter version to appear at 12th
International Colloquium on Theoretical Aspects of Computing (ICTAC 2015
The importance of the observer in science
The concept of {\em complexity} (as a quantity) has been plagued by numerous
contradictory and confusing definitions. By explicitly recognising a role for
the observer of a system, an observer that attaches meaning to data about the
system, these contradictions can be resolved, and the numerous complexity
measures that have been proposed can be seen as cases where different observers
are relevant, and/or being proxy measures that loosely scale with complexity,
but are easy to compute from the available data. Much of the epistemic
confusion in the subject can be squarely placed at science's tradition of
removing the observer from the description in order to guarantee {\em
objectivity}. Explicitly acknowledging the role of the observer helps untangle
other confused subject areas. {\em Emergence} is a topic about which much ink
has been spilt, but it can be understand easily as an irreducibility between
description space and meaning space. Quantum Mechanics can also be understood
as a theory of observation. The success in explaining quantum mechanics, leads
one to conjecture that all of physics may be reducible to properties of the
observer. And indeed, what are the necessary (as opposed to contingent)
properties of an observer? This requires a full theory of consciousness, from
which we are a long way from obtaining. However where progress does appear to
have been made, e.g. Daniel Dennett's {\em Consciousness Explained}, a
recurring theme of self-observation is a crucial ingredient.Comment: In Proceedings The Two Cultures: Reconsidering the division between
the Sciences and Humanities, UNSW, July 200
- …