This module aims to introduce students to the concept of multi-agent systems. The course commences with an in depth review of the fundamental concepts that underpin agent-based systems, such as agent reasoning technologies, agent communication languages, coordination protocols, and negotiation strategies. Following this, the course explores how agent technologies have been successfully applied to a diverse range of application domains, such as mobile computing, virtual collaborative environments, and robotics. During the course, students are required to download and evaluate Agent Factory, a cohesive framework that delivers structured support for the development and deployment of agent-oriented applications.