This paper proposes a new approach for modelling, testing and prototyping pervasive, possibly mobile, and distributed applications. It describes a set of tools aimed at supporting designers in the conceptualisation of their application and in the software development stage, and proposes a method for checking the validity of their design. The article also presents a pervasive application implemented and evaluated using our approach. It concludes with propositions for improvements in order to build a complete modelling, prototyping and testing framework for pervasive applications. Categories and Subject Descriptors H.4 [H5.2]: D.2.8 General Terms Pervasive computing Keywords Mobile computing, Pervasive Computing, Activity-based computing, User Centered Design