Mobile Applications (Mobile Apps or Apps) are an important software delivery model for the composition of front-end user interfaces (UIs) and back-end services in the cloud. However, variations in wireless network conditions can undermine the stability of Mobile Apps. Furthermore, developers face numerous difficulties in customizing Apps based on user preferences. In this paper, we propose the MASA (Mobile Application Slice Architecture), to address the above issues from the viewpoint of reusable software components. MASA includes three main features: (1) a programming model (called MAS) for building cross-platform UI components to facilitate the creation of Mobile Apps; (2) a broadcast mechanism to facilitate the exchange of data among MAS components; and (3) a rule-based and context-aware service prefetch and caching mechanism to ensure uninterrupted and partial offline access to RESTful services. A web-based software tool, MASA Portal, was also developed to assist users in the publication, discovery, composition, and consumption of composite MAS. Quantitative experiment results demonstrate that MASA is able to shorten service response times when using the proposed service prefetch function in various contexts.