Context-awareness has become a distinguishing feature of Ubiquitous systems. Contrary to desktop and web applications, Ubiquitous applications gather environmental context and provide services without user intervention. In this paper, we propose a message-oriented application model that is capable of modeling both user and system initiative interaction paradigms. Systems designed based on this model are inherently loosely-coupled and scalable. Results of this research include a systematic development procedure and its supporting middleware. We show the feasibility of this model by constructing several Ubiquitous applications for two dissimilar demo sites, and discuss experiences when adopting this model.