Javascript Devices Architecture: Building Extensible Rich Web Applications using Black Box Composition

S.C. Lim (USA)


Reuse, Extensible Systems, Black Box Composition


Through the years, the Web browser has steadily matured as a rich application-development platform. For Web applications to stay current with the latest interaction patterns and client-side technologies, it is important that they’re built with flexibility in mind. In this paper, we present our work on a W3C and ECMA standards compliant JavaScript component architecture that allows Web applications to be built using black box composition to allow for easier extension, substitution, and reuse. Our proposed architecture has six interesting features. First, the components are client-resident, allowing the architecture to be back-end agnostic. Second, standards compliant HTML and JavaScript are used to define the components. Third, it helps document and expose a set of clearly defined interface contracts for the components. Fourth, by encapsulating the components as black boxes, the learning curve for the components is lowered because they can be used and extended without the need to understand their internal workings. Fifth, the components can be easily integrated into existing Web applications. Sixth, we provide a runtime within which the components can engage in asynchronous communication. Finally, we evaluate the proposed architecture through the development of a sample Web application, and study the ease of extension and component substitution.

Important Links:

Go Back