Case Digest
Executive Summary
Leading mobile network operator Sprint is a driving force behind the proliferation of innovative devices and applications worldwide that exploit Java technology. Sprint offers a comprehensive range of wireless and wireline communications services to consumer, business, and government customers. The company has the highest number of data subscribers and the highest average data revenue per user in the United States. Sprint is widely recognized for developing, engineering, and deploying innovative technologies. These include two robust wireless networks offering industry-leading mobile data services, instant national and international walkie-talkie capabilities, and an award-winning global Tier 1 Internet backbone. The company relies on Java ME as its primary mobile application platform. Nextel, which is now part of Sprint, launched the first Java-based phone in the United States. Sprint was also the first to stream media in a Java-based consumer application, and first to offer over-the-air music downloads. The Sprint Application Developers Program (ADP) has more than 105,000 registered members, who create, test, and deploy innovative mobile content for Sprint's CDMA and iDEN networks. ADP supports Java ME, XHTML development for wireless Web content, messaging infrastructure integration that includes text and multimedia messaging, BlackBerry handhelds, Palm Powered phones, and embedded devices. Sprint ADP also supports the company's wireless location services platform for on-device and network-based solutions. The Sun Solution: NetBeans and Java ME
Sprint is clearly deeply committed to the Java platform. "Because it is standards-based, Java ME has become a de facto standard platform for mobile devices," says Nathan Smith, Group Manager of Developer Tools & Education for the Sprint Application Developers Program. The Java platform's popularity has in turn generated a large international base of developers to draw upon. The primary experience of many of these developers is with the larger editions of the platform, Java SE and Java EE - and with highly visual tools. When they migrate to mobile development projects they bring along high expectations about the tools they'll be using. Until the advent of the NetBeans Mobility Pack they were often disappointed. Sophisticated visual tools were simply not available to mobile developers. "We see the NetBeans Mobility Pack as the first integrated environment for the mobile space with a strong visual orientation," Nathan says. "Our developers are accustomed to working in a visual environment, and NetBeans enables them to get productive fast." Sprint considered other development environments, including Eclipse, Borland's JBuilder, and Metrowerks' Code Warrior, but concluded that they don't offer NetBeans' breadth of mobile functionality. For instance, Eclipse has a series of mobile modules, but it lacks NetBeans' forms-based drag-and-drop interface and its streamlined editing tools. Developers of mobile applications face complex challenges arising from three key variables: a bewildering variety of devices from different handset manufacturers, a range of carriers each with unique specifications, and varying Java Virtual Machine1 implementations. Combination of these factors results in myriads of permutations. To manage all that complexity, developers prefer to address most variables in a single core application, then handle remaining variants as cleanly and simply as possible. Using NetBeans' preprocessing feature, they can indicate that certain blocks of source code are specific to one or more configurations, and designate alternate blocks for other configurations. This tool makes it easier to support a range of device configuration profiles. The NetBeans IDE also integrates support for the Mobile Information Device Profile (MIDP), version 2.0, for the Connected Limited Device Configuration (CLDC), version 1.1, and for the Sun Java Wireless Toolkit. The toolkit provides developers with the emulators, utilities, documentation, and examples needed to streamline mobile development on the Java platform. Sprint has its own Sprint Wireless Toolkit, which is based on the Sun Java Wireless Toolkit, and tailored for the company's device portfolio, which numbers nearly 80 Java technology-enabled phones. "NetBeans is a natural fit for mobile development," says Nathan. "It delivers so much functionality and flexibility that we are working with Sun on a version of a NetBeans Mobility Pack with a Sprint look and feel." The Applications
One of the company's many innovative Java technology-based consumer applications is the Sprint Music Store, built by Sprint partner Groove Mobile. This over-the-air music service enables users to download full music tracks directly to mobile phones and computers. It was the first of its kind available in the US, and the first to achieve two million song downloads. At the CTIA Wireless 2006 conference, the Sprint Music Store won two prestigious honors: Wireless Week's Excellence Award for Mobile Content and Outlook 4Mobility's Innovation Award. Sprint chose Groove Mobile for its global leadership in adding innovative features to its mobile music service platform. The Groove Mobile platform is built using NetBeans and is based on a unified core set of source code. The application also includes what can be described as optimized code segments to handle the variables of different carriers, devices, and JVMs. "We've used NetBeans to build our very popular mobile music store and several other mobile applications," says John Nguyen, vice president of engineering for Groove Mobile. "NetBeans provides an easy-to-use visual environment that is highly optimized for mobile development. That combination translates to higher productivity for our development team." Groove Mobile markets the music store application to carriers other than Sprint. For example, the company's platform powers the mobile music service rated No. 1 in the UK, the Orange network's Music Player. Nathan sees this international marketing as a plus for Sprint, not a minus: "We have relationships with other carriers, especially overseas. The more services we bring them, the more revenue opportunities for Sprint!" 1 As used in this document, the term "Java virtual machine" or "JVM" means a virtual machine for the Java platform. | |||||||||||||||||||||||||
|
| ||||||||||||