How can we assess human-agent interactions? Case studies in software agent design