Augmenting android with AOSE principles for enhanced functionality reuse in mobile applications

The Android platform has popularized and caused a widespread adoption of its application development approach based on loosely coupled application components. This loose coupling allows for a flexible composition of applications but also enables invocations and reuse of individual components from third-party applications. One problem with the original Android design is that the rather coarse-grained application components themselves prohibit more fine-grained decomposition. To provide more flexible loosely coupled components and also to foster the reuse of more elementary fine-grained functionality, we suggest the extension of Android application components with our concept of $#956;-agents. Moreover, the organisational aspects of the $#956;-agent model introduce means to structure functionality in a more systematic manner. In this article, we introduce our platform concept called Micro-agents on Android (MOA) that realizes the integration of application development principles with a lightweight notion of agency. Several scenarios are used to describe the benefit from functionality reuse across applications enabled by MOA. A performance evaluation demonstrates that $#956;-agents interact in a more efficient manner than Android services, making them well-suited for fine-grained decomposition. Our approach serves as an example showing how existing technology can benefit from utilizing the modelling advantages of agent-based technologies.

[1]  Winfried Lamersdorf,et al.  Jadex: A BDI Reasoning Engine , 2005, Multi-Agent Programming.

[2]  João Alexandre Carvalho Pinheiro Leite,et al.  Languages, Methodologies, and Development Tools for Multi-Agent Systems, Second International Workshop, LADS 2009, Torino, Italy, September 7-9, 2009, Revised Selected Papers , 2010, LADS.

[3]  Michael Wooldridge,et al.  Programming Multi-Agent Systems in AgentSpeak using Jason (Wiley Series in Agent Technology) , 2007 .

[4]  Ken Arnold,et al.  The Java Programming Language , 1996 .

[5]  Jürgen Dix,et al.  Multi-Agent Programming , 2009, Springer US.

[6]  Carlos Carrascosa,et al.  Does Android Dream with Intelligent Agents? , 2008, DCAI.

[7]  Rajkumar Roy,et al.  Advances in Soft Computing , 2018, Lecture Notes in Computer Science.

[8]  Nicholas R. Jennings,et al.  On agent-based software engineering , 2000, Artif. Intell..

[9]  Nicolas Lhuillier,et al.  FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS , 2003 .

[10]  Juan M. Corchado,et al.  International symposium on distributed computing and artificial intelligence 2008 (DCAI 2008) , 2008 .

[11]  Agostino Poggi,et al.  JADE - A Java Agent Development Framework , 2005, Multi-Agent Programming.

[12]  Alessandro Ricci,et al.  JaCa-Android: An Agent-based Platform for Building Smart Mobile Applications , 2010, MALLOW.

[13]  Andrea Omicini,et al.  Give agents their artifacts: the A&A approach for engineering working environments in MAS , 2007, AAMAS '07.

[14]  D. Dennett The Intentional Stance. , 1987 .

[15]  M. Calisti,et al.  FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS , 2000 .

[16]  Ken Arnold,et al.  The Java programming language (2nd ed.) , 1998 .

[17]  James Gosling,et al.  The Java Programming Language" The Java Series , 1996 .