CompoWeb: A Component-Oriented Web Architecture - Guo, Rui; Zhu, Bin Benjamin; Feng, Min; Pan, Aimin; Zhou, Bosheng (WWW 2008, 2008)
In this paper, client-site Web mashups are studied from component-oriented perspective, and CompoWeb, a component-oriented Web architecture, is proposed. In CompoWeb, a Web application is decomposed into Web components called gadgets. A gadget is an abstraction of functional or logical Web component. It is isolated from other gadgets for security and reliability. Contract-based channels are the only way to interact with each other. An abstraction of contract-based channels supported or required by a gadget is also presented. It enables binding of gadgets at deployment, and promotes interchangeable gadgets. Unlike the model of a normal function call where the function logic is executed in caller’s context, CompoWeb ensures that the function logic is executed in callee’s context so that both the caller and callee are protected. Implementation of a prototype CompoWeb system and its performance are also presented.