Despite recent improvements in wireless network protocols and the manufacturing of better, more performant mobile devices, developing mobile applications and services still poses major challenges. Mobile devices have scarce computing capabilities, limited storage, short battery lifetime, and slow, expensive, and unreliable wireless communication. To alleviate these problems, we propose (1) to move the computationally intensive operations from the mobile client to an external Web Service and (2) to implement efficient data caching on the mobile device to minimize network traffic. In this article, we present these two key design aspects in the context of a Java development of a mobile service that offers train schedule information. The results show better response time and reduced network traffic.