An Agent-Based Programming Model for Developing Client-Side Concurrent Web 2.0 Applications

   page       BibTeX_logo.png   
Joaquim Filipe, José Cordeiro (eds.)
5th International Conference on Web Information Systems and Technologies (WEBIST 2009)
INSTICC Press, Lisboa, Portugal
23-26 March 2009

Using the event-driven programming style of JavaScript to develop the concurrent and highly interactive client-side of Web 2.0 applications is showing more and more shortcomings in terms of engineering properties such as reusability and maintainability. Additional libraries, frameworks, and AJAX techniques do not help reduce the gap between the single-threaded JavaScript model and the concurrency needs of applications. We propose to exploit a different programming model based on a new agent-oriented abstraction layer, where first-class entities – namely agents and artifacts – can be used, respectively, to capture concurrency of activities and their interaction, and to represent tools and resources used by agents during their activities. We specialise the model in the context of client-side Web development, by characterising common domain agents and artifacts that form an extension of an existing programming framework. Finally, we design and implement a simple but significant case study to showcase the capabilities of the model and verify the feasibility of the technology.

keywordsConcurrent Programming, Agent-Oriented Programming, Web 2.0