Recently, personalised search engines and recommendation systems have been widely adopted by users who require assistance in searching, classifying, and filtering information. This paper presents an overview of the field of personalisation systems and describes current state-of-the-art methods and techniques. It reviews approaches for (1) user profiling, including behaviour, preference, and intention modelling; (2) content modelling, comprising content representation, analysis, and classification; and (3) filtering methods for recommendation, classified into four main categories: rule-based, contentbased, collaborative, and hybrid filtering. The paper also discusses personalisation systems in different domains, and various techniques and their limitations. Finally, it identifies several issues and possible directions for further research that can improve recommendation capabilities and enhance personalised systems.