Agent-based end-user development

The goal of agent-based end-user development (EUD) is to empower end users with agents they can instruct directly. This process of instruction is completely transparent to the user; that is, it is not based on opaque adaptation mechanisms. Conceptually, the idea of instructing agents includes what is often called end-user programming [3] that addresses some of the major objections users have toward agents, such as the lack of trust and the need to train them. However, it poses the huge challenge of creating development tools suitable for end users who possess no programming background or interest in learning how to program.