Software reuse technologies have been a driving force in significantly reducing both the time and cost of software specification, development, maintenance and evolution. However, the dynamic nature of highly autonomous agents in distributed systems is difficult to specify with existing requirements analysis and specification techniques. This paper offers an approach for open, agent-based distributed software systems to capture requirements specifications in such a way that they can be easily reused during the initial requirements phase as well as later if the software needs to be updated. The contribution of this paper is to provide a reusable requirements specification pattern to capture the dynamically changing design configurations of agents and reuse them for future similar systems. This is achieved by adopting a product-line approach for agent-based software engineering. We motivate and illustrate this work through a specific application, a phased deployment of an agent-based, dis...
Josh Dehlinger, Robyn R. Lutz