Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
Component-based software engineering (CBSE) and product-line development have delivered significant improvements in software development, promising improved reuse, agility and quality. Components can be (largely) independently developed. To further increase the independence and flexibility of components, software agent components have great promise to improve application and system construction. Built on conventional distributed computing and application management platforms, on web service technology or within a P2P infrastructure, agent components are effective for independent development, for scalable and robust systems and dynamic evolution of features. There are many kinds of software agents, with differing characteristics such as mobility, autonomy, collaboration, persistence and intelligence, each offering greater flexibility than traditional components. We will discuss agent technology and those elements that enable more robust, scalable and evolutionary systems, and the application of agent components to personal assistants and software engineering environments.
bvicam.ac.in
Abstract: Agent technology is widely spread on the software domain and agents can be found in a variety of applications and solutions. Java agents are agents written in the Java™ programming language. Java is considered the perfect language for writing agent solutions.
Computer, 2001
A s the demand for more flexible, adaptable, extensible, and robust Web-based enterprise application systems accelerates, adopting new software engineering methodologies and development strategies becomes critical. These strategies must support the construction of enterprise software systems that assemble highly flexible software components written at different times by various developers. Traditional software development strategies and engineering methodologies, which require development of software systems from scratch, fall short in this regard. Component-based software engineering offers an attractive alternative for building Web-based enterprise application systems. CBSE works by developing and evolving software from selected reusable software components, then assembling them within appropriate software architectures. By promoting the use of software components that commercial vendors or in-house developers build, the component-based software development approach promises large-scale software reuse. Component-based software development has the potential to This analytical survey of agent components reveals that the technology will likely form the foundation for flexible, intelligent, Web-based enterprise application systems.
First International Workshop Aose 2000 on Agent Oriented Software Engineering, 2001
It has previously been claimed that agent technologies facilitate software development by virtue of their high-level abstractions for interactions. We address a more specific characterization and utility. We believe that it is important to distinguish agent technologies from other software technologies by virtue of a set of unique software characteristics. This is in contrast to much in the literature that concentrates on high-level characteristics that could be implemented with a variety of software techniques. Agent-based software engineering (ABSE), for at least an important class of agents and applications, can be characterized by both model and inner/outer language components. Our experience in developing applications based on longterm asynchronous exchange of agent messages, similar to typical email usage, leads us to believe these unique characteristics facilitate useful software development practices. The utility derives from a stratification of change among the components, ease of collaborative change and debugging even during runtime due to asynchronous text parsing-based message exchange, and reuse of the outer language as well as generic agents as a programming environment. 1
Multiagent Systems, Artificial Societies, and Simulated Organizations, 2004
Software agents are increasingly being used as building blocks of complex software systems. In this paper we discuss the benefits and the drawbacks that a developer faces when choosing agents for the realization of a new system, instead of a more mature technology such as software components. In particular, we first compare agents to components and then highlight the differences and similarities engendered by the metaphors and abstractions that each provides. Then, we concentrate our comparison on reusability because of general agreement that reusability is one of the most important features to consider when adopting a development technology. We exploit agent-oriented concepts to define formally an asymptotic level of reusability, and we show how agents and components approximate it. The result of such a comparison is that agents are intrinsically more reusable than components.
Software agents are increasingly being used as building blocks of complex software systems. In this chapter we discuss the benefits and the drawbacks that a developer faces when choosing agents for the realization of a new system, instead of a more mature technology such as software components. In particular, we first compare agents to components and then highlight the differences and similarities engendered by the metaphors and abstractions that each provides. Then, we concentrate our comparison on reusability because of general agreement that reusability is one of the most important features to consider when adopting a development technology. We exploit agent-oriented concepts to define formally an asymptotic level of reusability, and we show how agents and components approximate it. The result of such a comparison is that agents are intrinsically more reusable than components.
Lecture Notes in Computer Science, 2011
The use of the component-based approach to develop largescale information systems has become increasingly prominent over the past decade. However, there is a lack of established frameworks that cover the life cycle of component-based system development. This paper proposes a formalization of the process for component-based software development through the use of the agent paradigm. To this end, components are considered as low-level functional providers integrated into the software project through an agent architecture subject to monitoring -i.e. checking constraints -in order to determine the proper advancement of the software project. The use of agents typically allows a logical independence: the business logic is built separated from components making their integration process more flexible. The component selection is performed on two levels: components are selected on the basis of actors' intentions at the analysis level, and of their functional performances at the runtime level. The process is thus highly iterative and formal constraints are provided to monitor the iterative progression on a management point of view.
Engineering Multi-Agent Systems, 2013
The community of agent researchers and engineers has produced a number of interesting and mature results. However, agent technology is still not widely adopted by industrial software developers or software companies-possibly because existing frameworks are infused with academic premises that rarely apply to industrial settings. In this paper, we analyse the requirements of current industry-driven software projects and show how we are able to cope with these requirements in the Java Intelligent Agent Componentware agent framework, JIAC V. We argue that the lack of industry-grade requirements and features in other agent frameworks is one of the reasons for the slow acceptance of agent technology in the software industry. The JIAC V framework tries to bridge that gap-not as a final solution, but as a stepping stone towards industrial acceptance.
2003
This paper describes a suite of extensions to the object oriented model, steering OO programming towards the Agent Programming paradigm; such set of extensions is called Agent Programming eXtensions (APX). APX has been specifically designed to leverage the development of agent-based systems, a widely adopted paradigm to model complex and dynamic software systems. A brief survey of the most commonly used approaches to agent programming is presented, against which APX is evaluated. Then the structure of APX is described and the programming interface offered to the developers illustrated. The developers' point of view, who can greatly benefit from the component-based platform which APX relies upon is also taken into account.
Journal of Advance Research in Computer Science & Engineering (ISSN: 2456-3552), 2014
Java Agent Development Framework (JADE) is a software in JAVA, which is used for the development of agents, implemented in JAVA. It is a distributed agents platform, which has a container for each host where we run the agents. Additionally the platform has various debugging tools, mobility of code and content agents, the possibility of parallel execution of the behavior of agents, as well as support for the definition of languages and ontologies. In this paper, we will be having a detailed study on the functioning of JADE and we will put forward our conclusions on how its functioning can be enhanced.
2003
This paper describes a suite of extensions to the object oriented model, steering OO programming towards the Agent Programming paradigm; such set of extensions is called Agent Programming eXtensions (APX). APX has been specifically designed to leverage the development of agent-based systems, a widely adopted paradigm to model complex and dynamic software systems. A brief survey of the most commonly used approaches to agent programming is presented, against which APX is evaluated. Then the structure of APX is described and the programming interface offered to the developers illustrated. The developers' point of view, who can greatly benefit from the component-based platform which APX relies upon is also taken into account.
Proceedings of the first …, 2002
Abstract. In this paper we discuss first explorations about exploiting the Eclipse framework in the context of agent-oriented programming, using an agent-oriented programming platform called JaCa. At first, we discuss how the Eclipse framework can be naturally exploited for designing and developing a modular feature-rich agent-oriented IDE, to represent, manipulate, inspect JaCa programs directly in terms of such agentoriented abstractions defined by the JaCa computation/programming model.
Whitestein Series in Software Agent Technologies and Autonomic Computing, 2008
2000
is one of six departments that make up the School of Business at the University of Otago. The department offers courses of study leading to a major in Information Science within the BCom, BA and BSc degrees. In addition to undergraduate teaching, the department is also strongly involved in postgraduate research programmes leading to MCom, MA, MSc and PhD degrees. Research projects in spatial information processing, connectionist-based information systems, software engineering and software development, information engineering and database, software metrics, distributed information systems, multimedia information systems and information systems security are particularly well supported. The views expressed in this paper are not necessarily those of the department as a whole. The accuracy of the information presented in this paper is the sole responsibility of the authors. Copyright remains with the authors. Permission to copy for research or teaching purposes is granted on the condition that the authors and the Series are given due acknowledgment. Reproduction in any form for purposes other than research or teaching is forbidden unless prior written permission has been obtained from the authors. This paper represents work to date and may not necessarily form the basis for the authors' final conclusions relating to this topic. It is likely, however, that the paper will appear in some form in a journal or in conference proceedings in the near future. The authors would be pleased to receive correspondence in connection with any of the issues raised in this paper, or for subsequent publication details. Please write directly to the authors at the address provided below. (Details of final journal/conference publication venues for these papers are also provided on the Department's publications web pages: ). Any other correspondence concerning the Series should be sent to the DPS Coordinator.
Software: Practice and Experience, 2004
Software engineers of multi-agent systems (MASs) are faced with different concerns such as autonomy, adaptation, interaction, collaboration, learning, and mobility, which are essentially different from classical concerns addressed in object-oriented software engineering. MAS developers however have relied mostly on object-oriented design techniques and programming languages, such as Java. It often leads to a poor separation of MAS concerns and in turn to the production of MASs that are difficult to maintain and reuse. This paper discusses software engineering approaches for MASs, and presents a new method for integrating agents into object-oriented software engineering from an early stage of design. The proposed approach encourages the separate handling of MAS concerns, and provides a disciplined scheme for their composition. Our proposal explores the benefits of aspect-oriented software development for the incorporation of agents into object-oriented systems. We also illustrate our aspect-oriented approach through the Portalware multi-agent system, a web-based environment for the development of e-commerce portals.
INFORMATICA-LJUBLJANA-, 2002
Component-based systems require standardization by component models and powerful component platforms providing both an execution environment for software components and core component services. Remote administration and mobile computing require additional support from component platforms. We argue that increased flexibility, especially at run-time, can be achieved by using agent technology and agent platforms as more powerful component environments. We present an adaptable component platform which incorporates mobile agent platforms and describe how important issues of component deployment, configuration and security are supported by our environment.
Sigplan Notices, 2005
2009
This paper details the implementation of a software framework that aids the development of distributed and self-configurable software systems. This framework is an instance of a novel integration strategy called SoSAA (SOcially Situated Agent Architecture), which combines Component-Based Software Engineering and Agent-Oriented Software Engineering, drawing its inspiration from hybrid agent control architectures. The framework defines a complete construction process by enhancing a simple component-based framework with reasoning and self-awareness capabilities through a standardized interface.
2000
Mobile agents are a promising technology for developing applications in many application domains. However, it has not yet gained a large acceptance from the developers. One important reason for this is the difficulty of using generic mobile-agent platforms in specific application domains, which have very concrete requisites. In this paper, we present a reusable component-based framework that enables the creation of domain-specific mobile-agent systems in an easy and rapid way. The framework was implemented using the JavaBeans component model, and a fully blown agent platform was built from the components. By using this framework, the development of domain-specify mobile agent platforms is simplified, allowing a more rapid development cycle, which can contribute to an easier spreading of the mobile agent technology. * This investigation was partially supported by the Portuguese Research Agency FCT, through the program PRAXIS XXI (scholarship number DB/18353/98) and through CISUC (R&D Unit 326/97).
2001
The metaphors of autonomous agents and agent societies have t h e p o t e n tial to make a signi cant impact on the processes of analysis, design, and development of complex software systems on the Internet. In this chapter, we concentrate predominantly on agent societies, and show h o w w ork on coordination models and technologies provides a p o werful framework for the engineering of Internet-based, multi-agent systems. First, we introduce the concepts of agent, multi-agent system, and agent-oriented software engineering, and highlight the speci c issues that arise when we take the Internet as the environment t h a t a g e n ts inhabit. We t h e n p r o vide a brief survey of the state of the art in the area of agent-oriented methodologies, paying particular attention to the Gaia methodology for agent-oriented analysis and design. Gaia was originally conceived for benevolent agents inhabiting closed systems. However, to broaden its scope, we s h o w how insights from the area of coordination models can be incorporated in order to make it more suitable for developing Internet-based applications. Published as Chapter 13 in the Book: Coordination of Internet Agents: Models, Technologies and Applications, A . O m i c i n i , F . Z a m bonelli, M. Klusch, R. Tolksdorf (Eds.), Springer, 2000.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.