Intelligent software agents have been used in many applications because they provide useful integrated features that are not available in “traditional” types of software (e.g., abilities to sense the environment, reason, and interact with other agents). Although the usefulness of agents is in having such capabilities, methods and tools for developing them have focused on practical physical repr...