Charles Petrie
Stanford Networking Research Center
Stanford University
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 long-term
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.
Charles Petrie is executive director of the Stanford Networking Research Center (SNRC). He was previously a
senior research scientist at the Stanford Center for Design Research (CDR). His research interest is distributed
process coordination, with emphasis on concurrent design, planning, and scheduling. He also works on the use of
XML for open interoperable workflow. Petrie has a BS in mathematics and an MS and PhD in computer science from
the University of Texas at Austin. He is the editor-in-chief emeritus of IEEE Internet Computing.