Abstract:Pervasive computing software has to adapt itself to the dynamically changing execution environments and user requirements. This feature complicates software implementation significantly, which makes it necessary to adopt software reuse means on the design level, such as software architecture style, in its development. Based on an adaptive abstract model of pervasive computing space, this paper proposes a software architecture style for pervasive computing, UbiArch, and details it in its concept view, runtime view and development view. UbiArch supports a novel behavior pattern of software entities, i.e., dynamically joining applications according to user requirements and actively adapting itself to the execution environment. As a result, architectural-level can be achieved reuse for software adaptabilities. Besides, this architecture style is based on mature software techniques, such as component technology, which ensure its practicability. A software platform to support this architecture as well as several UbiArch-based applications has been developed to validate the effectiveness and generality of UbiArch.