6
34 IEEE SOFTWARE | PUBLISHED BY THE IEEE COMPUTER SOCIETY 0740-7459/12/$31.00 © 2012 IEEE FOCUS: MOBILE SOFTWARE DEVELOPMENT OVER THE PAST decade, mobile phones have penetrated the BRIC countries (Brazil, Russia, India, and China—categorized together for their similar economic development pat- terns). This is a significant market for software applications. 1 However, creat- ing software for the bottom of the eco- nomic pyramid comes with new chal- lenges. Especially in BRIC countries, we can’t assume an infrastructure in which everybody has PC access to the Internet to upload or download appli- cations or content. Here, I relate how OnMobile, a Ban- galore-based company that provides mobile software products and services, has addressed these challenges when developing music-distribution software. The company’s experiences provide potential lessons for others developing mobile software for the BRIC markets. The Mobile Software Market in India India is known for multimillion- people cities such as New Delhi, Mum- bai, and Bangalore, but 70 percent of the population lives in small towns and vil- lages. There are 28 million households in India with at least one PC, 2 but almost all are in urban areas. Mobile phone penetration, on the other hand, is much higher. India has more than 850 million mobile connections, 3 and the number is growing rapidly. In April 2011, 9 million connections were added in urban areas and 6 million in rural areas. However, this is an optimistic esti- mate of the addressable market. In re- ality, a model in which people use the Internet to download content to their phones would limit the addressable market to maybe 10 percent of the peo- ple with a mobile phone. Because many people in rural India don’t have bank accounts, 93 percent of mobile connections are prepaid. 4 Con- sumers visit retail stores about three times a month to buy prepaid recharge coupons, resulting in many opportuni- ties to sell content such as music. Mo- bile operators have an extensive net- work of retail stores (5,000 owned or franchised) and stores of trade part- ners (20,000), in addition to 1.4 mil- lion small unaffiliated stores that pro- vide customer service and sell recharge vouchers. These stores are serviced through a network of 70,000 recharge voucher distributors. The Music Market Beckons Music is one of the main entertainment forms in India; roughly 20,000 differ- ent songs are distributed every year. Be- cause most semiurban and rural homes don’t have electricity, the main source of entertainment is music from mo- bile phones. For many people, the mo- bile phone is the first electronic device within their homes. With the prolifera- tion of Chinese mobile phones, even the cheapest ones have SD (Secure Digital) cards of 2 Gbytes and built-in music players. From my internal research at Developing Software for a Mobile Service in India Balachandran Seetharam, Vodafone Solutions // There is a demand in India for music-purchasing venues for mobile phones via means other than the Internet. There are more than 700 million mobile phone users that music sales cannot reach through the Internet. This article presents ideas for reaching such users. //

Developing Software for a Mobile Service in India

Embed Size (px)

Citation preview

Page 1: Developing Software for a Mobile Service in India

34 IEEE SoftwarE | publIShEd by thE IEEE computEr SocIEt y 074 0 -74 5 9 /12 / $ 31. 0 0 © 2 012 I E E E

FOCUS: Mobile Software DevelopMent

Over the past decade, mobile phones have penetrated the BRIC countries (Brazil, Russia, India, and China—categorized together for their similar economic development pat-terns). This is a significant market for software applications.1 However, creat-ing software for the bottom of the eco-nomic pyramid comes with new chal-lenges. Especially in BRIC countries, we can’t assume an infrastructure in which everybody has PC access to the Internet to upload or download appli-cations or content.

Here, I relate how OnMobile, a Ban-galore-based company that provides mobile software products and services, has addressed these challenges when developing music-distribution software. The company’s experiences provide potential lessons for others developing mobile software for the BRIC markets.

the Mobile software Market in IndiaIndia is known for multimillion- people cities such as New Delhi, Mum-bai, and Bangalore, but 70 percent of the

population lives in small towns and vil-lages. There are 28 million households in India with at least one PC,2 but almost all are in urban areas. Mobile phone penetration, on the other hand, is much higher. India has more than 850 million mobile connections,3 and the number is growing rapidly. In April 2011, 9 million connections were added in urban areas and 6 million in rural areas.

However, this is an optimistic esti-mate of the addressable market. In re-ality, a model in which people use the Internet to download content to their phones would limit the addressable market to maybe 10 percent of the peo-ple with a mobile phone.

Because many people in rural India don’t have bank accounts, 93 percent of mobile connections are prepaid.4 Con-sumers visit retail stores about three times a month to buy prepaid recharge coupons, resulting in many opportuni-ties to sell content such as music. Mo-bile operators have an extensive net-work of retail stores (5,000 owned or franchised) and stores of trade part-ners (20,000), in addition to 1.4 mil-lion small unaffiliated stores that pro-vide customer service and sell recharge vouchers. These stores are serviced through a network of 70,000 recharge voucher distributors.

the Music Market BeckonsMusic is one of the main entertainment forms in India; roughly 20,000 differ-ent songs are distributed every year. Be-cause most semiurban and rural homes don’t have electricity, the main source of entertainment is music from mo-bile phones. For many people, the mo-bile phone is the first electronic device within their homes. With the prolifera-tion of Chinese mobile phones, even the cheapest ones have SD (Secure Digital) cards of 2 Gbytes and built-in music players. From my internal research at

Developing Software for a Mobile Service in IndiaBalachandran Seetharam, Vodafone Solutions

// There is a demand in India for music-purchasing

venues for mobile phones via means other than the

Internet. There are more than 700 million mobile phone

users that music sales cannot reach through the Internet.

This article presents ideas for reaching such users. //

Page 2: Developing Software for a Mobile Service in India

July/auguSt 2012 | IEEE SoftwarE 35

OnMobile, I can tell you that 68 per-cent of India’s population of 1.1 billion have listened to music on their mobile phones, representing a market of more than 500 million people.

The music industry in India is largely a national industry. Music sales are decreasing by 10 percent every year. As in the rest of the world, media pi-racy is growing. An estimated 100,000 illegal “filling stations,” small retail stores with pirated music on a hard drive, charge approximately US$1 to sideload songs onto mobile phones’ memory cards via a PC, providing ap-proximately enough music to fill a 1-Gbyte card for each transaction. Mu-sic labels see the mobile phone as a po-tential tool to provide convenient op-tions other than piracy and increase the labels’ income.

Developing Music Distribution softwareOnMobile has developed two main pieces of software for the mobile mu-sic market: a distribution network and a mobile music player. The end-to-end distribution network employs two dis-tribution devices: an online kiosk for high-end stores and an offline handheld device for other outlets.

Many retailers and companies that follow a music-to-phone distribution model use the Internet and PCs to let their customers connect to their sys-tems to download content. Customers today use this method predominantly to download music onto their mobile phones. However, this model isn’t scal-able for BRIC markets, in which Inter-net penetration is poor.

To overcome this infrastructure challenge and create a pathway to reach the other 90 percent of Indian mobile phone users, OnMobile developed an alternate approach using a retail distri-bution model. Figure 1 summarizes the

differences between a PC-at-home dis-tribution model and OnMobile’s kiosk model.

The KioskThe OnMobile model stores content locally and delivers it digitally in coffee shops, telecom stores, and shopping centers. Consumers can visit centers, browse, sample content, and download it to their mobile phones without additional wireless data charges. (Figure 2 shows the kiosk interface.) A broadband network periodically refreshes local content.

The kiosk runs on WEPOS (Win-dows embedded for point of service), which allows automatic content up-date, offline and online transactions, payment support through Mifare, and near-field communication technol-ogy. Content downloads directly to the phone via a cable. The back-end appli-cation server that feeds the kiosk runs on the J2EE (Java 2 Enterprise Edi-tion) platform. The application server is

integrated with a subscription manager, content management system (CMS), and reporting server. The kiosk self-service platform ensures easy main-tenance for third-party companies in the field. The embedded platform also ensures that the system performs opti-mally and is virus free.

OnMobile developed the kiosk’s front-end application in C# on a .NET framework and a MySQL local data-base. The user interface uses Flash and ActionScript. The configuration files are in C++ and use Microsoft Visual Studio 2005.

The back-end server-side applica-tion is in Java—J2EE with a MySQL database using the Eclipse development tool. The back-end application server routes and manages the application calls between the charging gateway, the CMS, and the reporting server. The content management server uploads new content releases as a patch onto each kiosk, and the reporting server records all transactions. New content

(a) (b)

Music

Internet

Wired

Smartphone

Home

Music

Retailer

figure 1. Two distribution models: (a) the Internet model and (b) OnMobile’s kiosk model.

The kiosk model is more suitable for markets with poor Internet penetration.

Page 3: Developing Software for a Mobile Service in India

36 IEEE SoftwarE | www.computEr.org/SoftwarE

FOCUS: Mobile Software DevelopMent

with content tags and metadata is avail-able in the hosted content management server. The entire back-end and front-end software application (server and client) comprises 100,000 LOC.

Each kiosk is connected to the cen-tral server using 512-Mbps DSL con-nectivity. Content updates happen through a trickle download. An XML file with a new content version pub-lishes biweekly to change the library on the kiosk, listing new and deleting old content. The subscription manager identifies users on the basis of their MSISDNs (mobile station international subscriber directory numbers, unique identifiers for SIM cards); it interfaces with the operator-charging-gateway server for further deduction and charg-ing from a user’s prepaid balance.

The kiosks brought to light some challenges, including synchronizing codes from different sources, provid-ing drivers for phones than didn’t exist when the kiosk was created, rectifying

dropped Internet connections during downloads, and training product sup-port personnel.

The Handheld Music Distribution DeviceThis low-cost device plays the interme-diary role of a PC to distribute music and media content. Small retailers in developing economies who don’t own a PC or have a broadband network can use it to sell music and value-added ser-vices. USB OTG (on the go) technology lets the device operate as a host and ini-tiates data transactions. A custom-made printed circuit board was developed on the device to reduce the overall cost.

Figure 3 shows interaction be-tween the retailer and a customer via the handheld device connected to the ETOPS server, which is a Vodafone billing server that tracks a subscriber account’s stored value against the sub-scriber’s MSISDN. The system’s modu-larization ensures easy management of the software blocks.

The device management module re-motely updates the handheld device. The transaction management module ensures that all transactions are re-corded and that the device works with other application modules. The offer management module dynamically as-sists sales-and-marketing teams with new consumer schemes. The report manager module generates reports and settlements for various stakeholders such as copyright owners or mobile op-erators who actively participate in the business on a revenue-sharing model. The CMS manager module manages the content library at a central location and automatically uploads new content to the device. The subscription man-ager module manages the consumer’s subscription information and current status in the operator billing system, and checks transaction data against the consumer’s MSISDN.

The coding is completely in C, with a strong focus on embedded C. A few tools developed in house ensure easy design. State transition flow allows menu browsing and designing images for LCD displays for special functions such as displaying icons. The tools translate the bitmap to compressed encoded data that the system uses internally.

The goal was a maintainable, reli-able system. The challenge was to de-sign a framework that ensures that state transition is easy to handle, easy to review, and has a quick turnaround to let users try different options. The development team spent six person-months conceiving the design. They produced an Excel spreadsheet defining the state transition system and a PC-based system that reads the spreadsheet and generates the code for the embed-ded system to realize the functionality. There are no “if” conditions for any state transition; advanced function-pointer manipulations achieve this.

The team focused on design and code review, owing to limited memory

figure 2. The self-service kiosk’s user interface. Content downloads directly to the phone

via a cable, thus avoiding wireless data charges.

Page 4: Developing Software for a Mobile Service in India

July/auguSt 2012 | IEEE SoftwarE 37

and system resources. In each design and coding cycle, code size kept in-creasing, so optimizing memory usage remained the top priority. The team in-tegrated Bluetooth in one of the design cycles. This was challenging because it required a retrofit in the design. For Bluetooth, the team used the UART (universal asynchronous receiver/trans-mitter) port that was originally in-tended for debugging. Once the team integrated Bluetooth, no dedicated port for debugging was available, so the team used the handheld device’s LED display to debug the Bluetooth code.

The team comprised three to five software engineers and one to two hardware engineers over six months. Overall, they spent approximately 48 person-months on development. After the reviews, the team wrote and unit-tested the module code on the PC be-fore porting it to the embedded system. Each module had a stand-alone test system. An independent test team ex-ecuted the integration test, followed by user testing.

The Music PlayerOnMobile’s mobile music player is a mobile app that offers music via paid subscriptions and employs back-end-managed services for download and playback. The client application pro-vides integrated access for content dis-covery, a music store, secured OTA (over the air) download, secured side-loading, and media playback. It runs on Java, Symbian, and Android.

Low-end phones posed the main challenges here. Although they claimed Java support, many didn’t have enough memory to load an external JAR (Java Archive) file application or didn’t have Java Virtual Machine. The minimum requirements for these phones were CLDC (Connected Limited Device Configuration) 1.1, MIDP (Mobile In-formation Device Profile) 2.0, JSR (Java Specification Request) 75, SD card sup-port, and GPRS (general packet radio service).This is a challenging mobile en-vironment for which to create a multi-media player.5

The C code for the embedded music

player comprises approximately 600 to 800 LOC, excluding libraries that are reused from the ASIC (application-specific integrated circuit) developer support system (such as MP3 and USB libraries). Generally, the tools and PC-based applications to design a compact embedded system comprise approxi-mately 4,000 LOC.

The product consists of four modules:

• a gateway module (270,000 LOC);• 20 Java server pages and other con-

figuration files (averaging 10,000 LOC each);

• a subscription module consisting of 63 Java files (averaging 500 LOC each), four Java server pages (av-eraging 300 LOC each), and other configuration files; and

• a reporting module consisting of 22 Java files (averaging 200 LOC each) and other configuration files.

The proof of concept took more than six calendar months, with two

Handhelddistribution device

Short message service(SMS) gateway

OnMobilesubscription

manager

SMSgateway

Subscriptionmanager

Reportmanager

Accountsmanagement

Offermanagement

Transactionmanagement

Devicemanagement

CMSmanager

NovaReportssystem

Atlantis contentmanagementsystem (CMS)

ETOPSinterface

Digital rights managementengine

Handheld distribution deviceinterface

Operationsand

maintenance(Type T/K)

Customer

figure 3. The software architecture for the offline handheld distribution device. This figure demonstrates the various interfaces and

management modules that works with the offline handheld distribution device. The modules and interfaces are built as part of the application

server that works with external platforms such as content management systems, central reporting systems, messaging servers, and billing and

charging servers.

Page 5: Developing Software for a Mobile Service in India

38 IEEE SoftwarE | www.computEr.org/SoftwarE

FOCUS: Mobile Software DevelopMent

engineers. The final implementation in-tegration took four calendar months, with five people working on the project full time.

The total code written for the mo-bile client amounts to 505,900 LOC. With an installed base of millions, this means its software mileage6 is comparable to RealNetwork’s multi-media player.5 High software mileage is becoming necessary for mobile phone software if emerging markets are to re-coup their software investments.

Mobile software Development Challenges for BrIC CountriesWe must be careful when generalizing our experience to other BRIC coun-tries. OnMobile has been able to sell its technology to 92 operators in 52 coun-tries. So, we can safely conclude that the software is relevant to other BRIC

countries. The experiences described here are also somewhat relevant else-where but must be interpreted in the context of specific countries.

First, the technology differs among the countries. China, for example, has developed and adopted its own 3G standard. The technology available on network sites also differs in the BRIC countries—China uses TD-SCDMA technology whereas other countries are using W-CDMA and TD-CDMA.

A key factor in the business model’s success is frequent interaction with sub-scribers. The prepaid model in which subscribers visit a retail outlet to buy minutes is essential if these outlets are to regularly sell music. This could be a successful model for the mobile

markets in India and Brazil, which are predominantly prepaid, whereas Russia and China are mostly postpaid.4

The competition between opera-tors also differs in the BRIC coun-tries. China has one dominant mobile provider with 627 million subscribers out of almost 1 billion total.8 In India, many mobile companies compete for business; the largest provider has a 27 percent market share.4 So, operators in India potentially have more incentive to differentiate themselves through multi-media services.

In 2008, the landline-phone pen-etration was 30 percent in China and 5 percent in India.9 The penetration in Russia and Brazil was comparable to that of China. This means that many more of the retail outlets in China, Bra-zil, and Russia could have been con-nected to PC-based applications via a landline than was the case in India.

China also has higher mobile In-ternet usage than India. At the start of 2011, China had approximately 300 million users,10 about 10 times as many as India.3 This allows a more direct path for downloading music to mobile phones than what OnMobile developed.

On the basis of these differences, we foresee the following main chal-lenges for BRIC mobile software development.

Providing High-End Services on Limited PlatformsAs I mentioned earlier, the team that created the OnMobile software com-prised fewer than 10 people. This team had to deal with network architectures,

operator billing systems, and embedded clients with limited memory. On the server side, cost wasn’t a major issue, given that the investments can be recov-ered through usage by a large number of clients. An investment of $100,000 on the server side that leads to an ad-ditional 1 million users comes down to $.10 per user.

When considering the client side, we understand that every user needs a phone. This is a more expensive initial investment. It would take $1 rather than the server side’s $.10 to reach a million users. However, our goal was to pro-vide this OTA service on mobile phones with limited features and resources. To rectify the discrepancy between cost and purpose, we must combine limited hardware with state-of-the-art technol-ogy. Essentially, tomorrow’s technolo-gies must be implemented on yester-day’s platforms, in terms of available memory and processors.

Convincing the Music Industry to ParticipateThe music industry still needed to be convinced to trust a new distribution channel with its content, but quickly saw the benefits. The mobile phone is its own device—no CDs or Internet portals are necessary. Music player software with end-to-end service makes an interesting service proposi-tion. The music companies have less to lose and can reach hundreds of mil-lions of new mobile phone users. We found that they’re willing to invest with higher risks because they’ll reach a tar-get group they otherwise don’t service.

Creating the Distribution ChannelIn India, downloading content directly to a phone isn’t always possible owing to the limitations of most mass-marketed phones. Also, the development team couldn’t assume that the retailers them-selves are online. This forced the team to develop a handheld device for music distribution that isn’t connected to the

A key factor in the business model’s success is frequent interaction

with subscribers.

Page 6: Developing Software for a Mobile Service in India

July/auguSt 2012 | IEEE SoftwarE 39

Web, which was probably the project’s most challenging technical work.

The application’s design needed to take into account the market and its limitations. This differed from mobile software development in the Western world, in which a high-end phone with an OS such as Android works for a large part of the market. So, focusing on just one feature or technology (such as noise suppression or navigation) wasn’t feasible; development had to focus on the total end-to-end solution.

The need for such a solution resulted in a more articulated business model. Also, the mobile operators had to invest significantly in the technology, which resulted in a revenue-sharing model. The software company develops white-label technology that the operators can brand. The mobile operator invests in front-end kiosks, handheld distribu-tion devices, and Internet connectivity in stores.

Fewer standards for such collabora-tion exist in BRIC markets than in the West, where operators, phone vendors, and content owners have been working for decades on standardization in fo-rums such as the Open Mobile Alliance (www.openmobilealliance.org). Prag-matism and eagerness to address the new market can compensate for lack of standards. However, it also means that the development team must be able to handle evolving interfaces throughout the project.

I n a mobile environment, value is visible in terms of user experi-ence and end-to-end quality of

service. In emerging BRIC markets, which have low average revenues per user from voice service and short mes-sage service, mobile value-added ser-vices are more attractive for mobile operators who wish to differentiate their services. So, innovation is critical to the business’s life cycle. C.K. Pra-halad said there’s money to be made in

mobile software at the bottom of the pyramid.1 However, we must be aware of the bottom of the pyramid’s unique infrastructure limitations.

references 1. C.K. Prahalad, The Fortune at the Bottom of

the Pyramid, Wharton School, 2005. 2. “One of Four Households in Urban India Has

a Personal Computer Reveals Intel and IMRB Study,” afaqs, 19 Aug. 2010; www.afaqs.com/news/company_briefs/index.html?id=45924.

3. S. Dutta, “April 2011: India has 12.01M Broadband Connections; 70.53% of 826.93M Mobile Are Active,” Medianama, 15 June 2011; www.medianama.com/2011/06/223-april-2011-india-has-12-01m-broadband -connections-70-53-of-826-93m-mobile-are -active.

4. Mobile Youth around the World, tech. report, Nielsen Company, 2010; www.nielsen.com/content/dam/corporate/us/en/reports -downloads/2010%20Reports/Nielsen-Mobile -Youth-Around-The-World-Dec-2010.pdf.

5. L. Bouchard, “Multimedia Software for Mobile Phones,” IEEE Software, vol. 27, no. 3, 2010, pp. 8–10.

6. H. van Genuchten, “Software Mileage,” IEEE Software, vol. 28, no. 5, 2011, pp. 24–26.

7. “China’s Operators End August with 999.83 Million Subs,” Int’l Telecommunication Union, 29 Sept. 2011; www.itu.int/ITU-D/ ict/newslog/Chinas+Operators+End+August +With+99983+Mln+Subs.aspx.

8. The Results for the Third Quarter and Nine Month Ended December 31, 2011, q. report, Bharti Airtel, 2012; www.airtel.in/ QuarterlyResult/Quarterly_report_Q3_11.pdf.

9. G. Campbell and F. Chen, “Global Wireless Matrix 4Q06,” Merrill Lynch, 2007.

10. “457 Million Netizens and Counting,” TeleGeography, 24 Jan. 2011; www.telegeography.com/products/commsupdate/articles/2011/01/24/457-million-netizens-and -counting.

Selected CS articles and columns are also available for free at http://ComputingNow.computer.org.

about the author

BalaChanDran “Balu” seetharaM is head product supervisor at Vodafone Solutions. At OnMobile, he was previously responsible for the product and business described in this article. His research interests include developing solutions with a technology plan that can socially affect emerging markets. Seetharam has a BEng in electrical engineering from Karnatak University. He’s a member of TiE (The Indus Entrepreneurs), Bangalore chapter. Contact him at [email protected].

Learn about computing history and the people who shaped it.

COMPUTING THEN

http://computingnow.computer.org/ct