Skip to main content

Agent-Oriented Programming for Client-Side Concurrent Web 2.0 Applications

  • Conference paper
Web Information Systems and Technologies (WEBIST 2009)

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Berners-Lee, T., Hendler, J., Lassila, O.: The Semantic Web. Scientific American (2001)

    Google Scholar 

  2. Bordini, R., Hübner, J., Wooldridge, M.: Programming Multi-Agent Systems in AgentSpeak Using Jason. John Wiley & Sons, Ltd., Chichester (2007)

    Book  MATH  Google Scholar 

  3. Foster, J.S.: Directing JavaScript with Arrows. In: ICFP 2008: The 13th ACM SIGPLAN International Conference on Functional Programming, Victoria, British Columbia, Canada (2008) (poster paper)

    Google Scholar 

  4. Hendler, J.: Agents and the Semantic Web. IEEE Intelligent Systems 16(2), 30–37 (2001)

    Article  Google Scholar 

  5. Hong, T.W., Clark, K.L.: Concurrent programming on the Web with Webstream. Technical report, Department of Computing, Imperial College, London (2000)

    Google Scholar 

  6. Lee, E.A.: The problem with threads. IEEE Computer 39(5), 33–42 (2006)

    Google Scholar 

  7. Maki, D., Iwasaki, H.: A portable JavaScript thread library for Ajax applications. In: OOPSLA 2007: Companion to the 22nd ACM SIGPLAN conference on Object oriented programming systems and applications, Montreal, Quebec, Canada, pp. 817–818 (2007)

    Google Scholar 

  8. Omicini, A., Ricci, A., Viroli, M.: Artifacts in the A&A meta-model for multi-agent systems. Autonomous Agents and Multi-Agent Systems 17(3), 432–456 (2008)

    Article  Google Scholar 

  9. Ricci, A., Piunti, M., Acay, L.D., Bordini, R., Hubner, J., Dastani, M.: Integrating artifact-based environments with heterogeneous agent-programming platforms. In: Proceedings of 7th International Conference on Agents and Multi Agents Systems, AAMAS 2008 (2008)

    Google Scholar 

  10. Ricci, A., Piunti, M., Viroli, M., Omicini, A.: Environment programming in CArtAgO. In: Bordini, R.H., Dastani, M., Dix, J., El Fallah-Seghrouchni, A. (eds.) Multi-Agent Programming: Languages, Platforms and Applications, vol. 2, pp. 259–288. Springer, Heidelberg (2009)

    Google Scholar 

  11. Ricci, A., Viroli, M.: simpA: an agent-oriented approach for prototyping concurrent applications on top of Java. In: PPPJ 2007: The 5th international symposium on Principles and practice of programming in Java, Lisboa, Portugal, pp. 185–194 (2007)

    Google Scholar 

  12. Sandhu, R.S., Coyne, E.J., Feinstein, H.L., Youman, C.E.: Role-based access control models. IEEE Computer 29(2), 38–47 (1996)

    Google Scholar 

  13. Sutter, H., Larus, J.: Software and the concurrency revolution. ACM Queue: Tomorrow’s Computing Today 3(7), 54–62 (2005)

    Article  Google Scholar 

  14. Wooldridge, M.: An Introduction to Multi-Agent Systems. John Wiley & Sons, Ltd., Chichester (2002)

    Google Scholar 

  15. Wooldridge, M.J., Jennings, N.R.: Intelligent agents: Theory and practice. The Knowledge Engineering Review 10(2), 115–152 (1995)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Minotti, M., Piancastelli, G., Ricci, A. (2010). Agent-Oriented Programming for Client-Side Concurrent Web 2.0 Applications. In: Cordeiro, J., Filipe, J. (eds) Web Information Systems and Technologies. WEBIST 2009. Lecture Notes in Business Information Processing, vol 45. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12436-5_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-12436-5_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-12435-8

  • Online ISBN: 978-3-642-12436-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics