Abstract-In the ever-changing pervasive computing paradigm, applications, especially those running on resource-scarce mobile devices, have to adapt to the runtime environment as the users are roaming around. Various adaptation techniques, relying on dynamic composition of components, have been proposed by a number of researchers. Nevertheless, most existing approaches only support component selection based on predefined rules and strategies. Because of the limitation of pure rule-based approach, context-awareness can not be well supported. In this paper, we propose a software component selection framework for mobile pervasive computing. Our approach adopts the case-based reasoning technique to provide proactive component selection. Context-awareness and personalization are embodied in the reasoning and selection process. As a proof of concept, we developed and evaluated a context-aware personal communicator (CAPC) application using adaptive component selection, with a synthesized execution trace obtained from real-life E-mail softwares ported to CAPC. Our results show that the adaptive component selection can reduce maximum memory consumption by at least 20%, and the context-guided reasoning technique can improve reasoning accuracy by nearly 10% within acceptable reasoning time.