A significant fraction of mobile users in the rural developing world use low-end mobile devices and have restricted data connectivity services due to a variety of economic factors. These devices have restricted capabilities with voice and SMS remaining the primary communication channels. The penetration of mobile information services in rural areas has largely been extremely limited especially since all applications are operator controlled with very few applications being adopted on a large scale.
This paper presents the design and implementation of UjU , a mobile platform that enables users to develop new SMS-based mobile applications on top of a common plaform. Given that the SMS channel is extremely constrained to 140 byte messages, UjU is designed to support database-centric applications that express and operate upon information in structured formats. In UjU , specifying a new application is equivalent to configuring an XML schema. Apart from exporting a standard set of operations, UjU allows the developer to specify new application-specific operations as XML forms. To make efficient use of the SMS channel, UjU supports a semantic compression engine that leverages the structured nature of the information transmitted. UjU includes a simple reliability layer to cope with message losses and uses a user-centric consistency model to reduce per message costs. We have configured and tested UjU for 18 different SMS-based applications ranging from medical records to epidemiology and mobile Craigslist.