Você está na página 1de 13


QUALCOMM Incorporated
5775 Morehouse Drive
San Diego, CA. 92121-1714
Copyright © 2003 QUALCOMM Incorporated
All Rights Reserved

Binary Runtime Environment for Wireless and BREW SDK are trademarks of QUALCOMM
TRUE BREW, BREW and QUALCOMM are registered trademarks and registered service marks of
QUALCOMM Incorporated.
Sun, J2ME and Java are trademarks or registered trademarks of Sun Microsystems, Inc.
All trademarks and registered trademarks referenced herein are the property of their respective
“I believe BREW® is a better choice for operators
because it allows them to get into the handset
applications with the least cost and best time-to-
market. They get to sell both native BREW and
Java applications to their customers.”

Barney Dewey
Vice President
Andrew Seybold’s Outlook 4Mobility

Introduction………………………………………………..………………………………… 1

The BREW Solution…………………………………………………………………….….. 2

BREW Supports all Programming Languages Including Java…………………….. 2

Server-Side: A Complete Deployment Solution……………………………………… 4

J2ME on BREW: A Smart Business Decision……………………………..…………. 6

Conclusion……..……………………………………………………………………………. 8
QUALCOMM’s BREW® client and Sun Microsystem’s Java 2 Micro Edition™ CLDC
(Connected Limited Device Configuration)/MIDP (Mobile Information Device Profile)
environment (J2ME™) are two popular wireless platforms that offer a method for executing
software applications on a mobile device. There is substantial misunderstanding about
BREW and J2ME and how they relate to each other. Many sources characterize the two
platforms as competitive. But in actuality, BREW is an end-to-end solution that supports
multiple programming languages – including Java™.

BREW is a complete solution encompassing technical and business elements to satisfy the
needs of every wireless application stakeholder. J2ME applications, or “midlets,” are one
type of application that BREW can support via a J2ME extension to the BREW device client
that is either pre-loaded by handset manufacturers or provisioned over the air via the BREW
Delivery System (BDS).

With BREW, wireless operators have an open and flexible solution for the selection, delivery
and billing of wireless applications – regardless of programming language. Using a BREW
handset with a Java technology-based virtual machine (VM) extension, operators may offer
the complete universe of applications written in C/C++ and Java. (Other languages such as
Flash and XML can also be supported via extensions to BREW.)

This paper describes the BREW solution in greater detail and explains how operators can
realize rapid deployment and increased revenue from the implementation of a BREW-
enabled system featuring applications using the developer’s desired programming language,
be it C/C++, Java, XML, Flash, etc.

The BREW Solution
BREW is a complete, end-to-end solution for wireless applications development, device
configuration, application distribution, and billing and payment. The complete BREW
solution includes the BREW SDK™ (software development kit) for application developers,
the BREW client software and porting tools for device manufacturers, and the BREW
Delivery System (BDS) that is controlled and managed by operators – enabling them to
easily get applications from developers to market and coordinate the billing and payment
process. Operators’ BREW-based services enable subscribers to personalize their
handsets by downloading applications over the air from an operator’s application download

From the client side to the server side, BREW is optimized for the wireless environment and
is engineered to meet the challenges that operators encounter in deploying wireless data
services. By taking advantage of the entire BREW solution, operators can rapidly deploy
their wireless data services – and, thanks to BREW’s extendable architecture, operators can
offer any type of application with ease.

The Client Side: BREW Supports all

Programming Languages Including Java
The BREW client software serves as a common denominator across all types and tiers of
devices, from low-end, mass-market phones to high-end “smartphones.” It is an open
environment based on the universally accepted programming language C/C++. It can also
be used in harmony with other applications and software elements that may reside on a
device. The BREW client can act as an extended platform for other environments (such as
VMs) and allow any type of browser (HTML, WAP, cHTML, etc.) to run on BREW as an
application. The BREW client’s flexibility is provided by extensions – allowing the software
to accommodate established and emerging technologies (see Figure 1, Page 3).

Figure 1. BREW Device Architecture

Leading J2ME VM developers, such as esmertec (esmertec has acquired the JVM assets of
Insignia Solutions; www.esmertec.com/download/pdf/esmertecacquiresInsigniaJVM.htm)
and IBM, have already developed VM extensions for BREW and are currently in the process
of optimizing these VMs for commercial deployment. These VMs can be downloaded over
the air and automatically provisioned on a BREW Client 2.0 handset (assuming the target
device has sufficient memory) – meaning there is zero effort or cost to the handset
manufacturer, who can have “Java handsets” in the market simply by shipping BREW 2.0-
based phones. These BREW extensions give wireless operators interested in offering Java-
language applications the opportunity to take advantage of the complete BREW solution on
devices that did not include a MIDP-compliant VM at the factory. MIDP 2.0 VMs can be
provisioned OTA too, when they are ready.

BREW uses very little memory and integrates tightly with the underlying chip system
software to add all the functionality necessary for OTA downloads and application
management. MIDP requires a significant amount of memory, with or without BREW, so the
device must have sufficient memory to accommodate a MIDP compliant VM. Because

of the BREW client’s extensive telephony APIs, a VM extension to BREW can actually be
smaller than a VM that is natively integrated to a handset. In this latter implementation,
phone-specific APIs have to be written for the native VM to make it appropriate for a
wireless device – making the VM larger than an optimized BREW-extension VM that uses
the APIs in the BREW client.

For subscribers, who do not care what the underlying enablers are, Java-based midlets on
BREW provides them with the widest possible set of application choices. BREW’s
MobileShop virtual shopping and application management interface allows users to quickly
find and buy applications, regardless of which programming language is used over the air
directly from the handset. Separate user experiences, resulting from separate systems,
such as purchases through a WAP browser, through a Java environment and through a
messaging environment, can create a disjointed, confusing, suboptimal experience for

BREW solves this problem by consolidating the subscriber experience in one place. The
subscriber only sees the catalog of applications that are supported on the handset they are
using to shop for apps. BREW effectively solves the discovery, purchasing, downloading,
billing and provisioning challenges that a complete solution requires. All the operator has to
focus on is choosing the applications it will offer and populating its catalog with the
enormous set of choices BREW enables.

The Server Side: A Complete

Deployment Solution
Wireless operators can rapidly implement a combined BREW and VM-over-BREW solution
via BREW’s back-end service environment, called the BREW Delivery System (BDS). With
a VM on top of BREW, the BDS manages how Java-based applications are downloaded
and executed on BREW devices. The BDS provides many benefits to operators:
• The BDS is turnkey and scalable, with modular components including a download
server, transaction manager, operator and developer extranets and application

• Operators can buy BDS hardware from multiple vendors – taking advantage of
competition for the purchase of servers.
• Software costs are low and provide operators with total control over how much and what
they want to control, and can scale to demand.

The BDS integrates with the operator’s existing billing system, providing a seamless,
flexible, inexpensive and complete architecture to enable native C/C++ and Java-based
application distribution. (Note: A common confusion is that operators must choose between
“BREW applications” and “Java applications.” In fact, because BREW is not a language and
supports multiple languages, all applications offered via this highly compelling “BREW plus
Java-apps-on-BREW” combined solution, are – in effect – “BREW applications.”)

BREW only offers an application to a user after it has verified that the application is properly
signed, the phone is capable of running it, and that memory is available to download the
application. Part of this process involves a virtual handshake between the handset and the
server in which the handset tells the server what it needs to run the selected app. In the
case of a VM-over-BREW implementation, when the subscriber selects a Java-based app,
the handset tells the server it needs a VM (if the VM is not already resident). The server
sends the VM down with the initial Java-based app download. On subsequent Java app
downloads, the server only sends the app, since the VM extension is now resident (see
Figure 2, Page 6). In short, the BREW solution makes it possible for subscribers to turn
their handsets into “Java” handsets without ever knowing they are purchasing a Java-based
app. This is the “right” end-user experience. Subscribers want fun and useful apps. They
should not have to make any “technology” decisions.

Figure 2. Dynamic Download of Java VM Extension

The customer interface entails several steps for the BDS: Determining and displaying the
price and related information (e.g. an expiration date or a free trial offer), offering the choice
to download, and creating a billing record that integrates with the operator’s existing billing
system. The BDS additionally enables the operator to recall and update the application over
the air without user intervention. This includes the ability to offer upgraded VM extensions
and bug fixes over the air – a tremendous advantage to operators who must keep customer
service costs low and avoid costly handset recalls.

J2ME on BREW: A Smart Business

Wireless operators, developers and handset manufacturers all have constrained resources
and a broadening range of technologies to support; a slow and uncertain approach is
therefore not an option. New wireless data services must begin with a well-developed plan
for revenue sharing along the entire value chain. The BREW client software’s zero-cost
license and easy software porting make BREW functionality readily available to all handset

manufacturers. Time-to-market is reduced, and new applications work consistently across
the operator’s full device lineup.

Developers can download the BREW SDK™ (software development kit) for free. Whether
writing in C or Java, BREW developers can offer their applications through multiple wireless
operators worldwide without significant code modification or extensive negotiation with
individual operators.

Operators also benefit: They reduce costs by selecting new services from the pool of
applications, and the BREW business model also ensures they only share revenue when
subscribers actually purchase and download applications. Additional operator revenue can
be secured from airtime charges, added-value service fees, sponsorships and content.

Distribution, management and the sale of compelling wireless applications are at the heart
of the BREW business model. It includes a virtual marketplace for developers and
operators to buy and sell applications. BREW is available at low deployment costs to
operators, who can select the applications they wish to offer – including Java-based
applications – and negotiate a price directly with the developer via the BREW Carrier
Extranet. The operator can choose the most sensible retail pricing model for a given
application and market, charging premium prices for some applications while offering others
for free or at discount if it makes the business judgment that the app will drive viral
marketing or network usage advantages. The price is paid per user purchase – so payment
is triggered by business success.

BREW perfectly addresses the considerations operators face when they are looking to
deploy a cost-efficient and effective wireless data applications service. The BREW solution
provides distinct advantages to operators committed to offering a Java technology-based
service. Without BREW, an operator wishing to such a service would have to manage a
minimum of 10 separate but vital functions to satisfy each participant in the wireless value
chain. Without the VM-over-BREW solution, the operator must:
1. Identify the Java technology-based virtual machine vendor (from among the
approximately 40 currently offering VMs) to do the implementation
2. Identify the additional APIs that are needed to make the VM fully functional on a
wireless, network-connected device

3. Negotiate to have the VM vendor deliver the VM in a timely manner at an acceptable
price (multiple handset OEMs, multiple three-way negotiations)
4. Identify the servers it will integrate with its network
5. Identify the hosting location for the server farms and integrate these servers with its
billing system
6. Identify and negotiate business relationships with the application developers who will
develop Java-based applications to the exact specification of the VM (or VMs) it has
7. Project manage the applications and get developers to deliver the application in a
timely fashion
8. Perform testing of applications to make sure they behave properly on the handsets
and the network*
9. Host the applications and perform ongoing server farm maintenance
10. Collect revenue from the subscriber and provide payment to individual developers

With the myriad of tasks required to implement Java applications, BREW provides a
sensible solution that seamlessly creates a complete wireless applications service system –
for Java apps, native C/C++ apps and more.

QUALCOMM’s complete BREW solution offers compelling advantages for all operators,
including those committed to Java technology. From the initial introduction of the BREW
solution in January 2001, QUALCOMM has indicated that it supports a “Java-over-BREW”
solution for operators seeking to offer Java-based applications. Today, all the business and
technical pieces are in place for operator deployment of this combined service offering – all
that remains is a business decision by operators.

A popular myth is that, because Java-based apps run in a “sandbox” (the VM) testing is not
necessary. In fact, many operators offering Java-based apps are implementing testing programs as
they have come to appreciate the danger of allowing anonymous applications to be downloaded to
and executed on handsets on their networks. QUALCOMM recognized this challenge from the outset
and has always offered application testing services. Many of these tests are appropriate and
applicable to Java-based apps.

Operators will discover that there are many benefits to implementing J2ME over BREW
rather than taking on the expensive and daunting task of deploying a custom Java-based
service. The deployment and operational efficiencies mean cost savings and faster time-to-
market – promising a significant positive impact to the operator’s bottom line. Because
BREW enables operators to bring a product to market that is truly different – customizable,
over the air, real time – to the mass market, strategic positioning is greatly enhanced against
operators who have not adopted a BREW-based wireless application service. With a
combined universe of native C and Java applications to choose from, operators will enjoy an
enhanced revenue stream from a larger and richer catalogue of applications that
subscribers can buy, download and use.

As a complete, end-to-end solution for wireless applications development, device

configuration, application distribution, and billing and payment, BREW is the enabler for a
compelling wireless experience on mobile phones and a proven creator of significant
revenue streams for operators and developers that have adopted the BREW solution.

# # #