Challenges for the Wireless Developer
Mobile phones and personal digital assistants (PDAs) continue to be the most common wireless devices. Their pervasiveness makes them attractive targets for application development. However, deployment of applications and mobility portals has several challenges:
Constrained devices. Processing power and storage capabilities are highly constrained on mobile devices. These devices are designed to be small and inexpensive and are required to consume as little power as possible. As a result, wireless application programmers don't have the luxuries of the PC-based environment: almost unlimited memory, storage, and bandwidth.
Device variability. Mobile devices vary greatly in form, user-input interfaces, use of non-standard markup languages, and over-the-air protocols. Server-based application infrastructure and middleware must interact with many more client environments than in the PC world.
Multiple browsers and platforms. Browsers on devices that use common markup languages are so diverse that even browser-based applications must be modified significantly for each type of browser and device. Latency in the network and lack of disconnected operation make browser-based applications unrealistic for serious uses. Hence, the developer community is moving to develop client-based applications. Options for developing client-side applications include QUALCOMM's BREW platform, Sun Microsystems' J2ME standard, and Microsoft's adaptation of Windows CE for mobile computing. Even if browsers are standardized, devices have other differencesscreen size, RAM, physical storage space, colors, TAPI interfacesthat must be considered when developing applications. All these factors make it difficult to create a single source code base to accommodate a number of different data-enabled devices.
Limited customer base. Added to the complexity of the devices is the fact that different manufacturers or OEMs support different platforms, network technologies, or operating systems. The developer is left with the challenging task of having to select the target customer base. Applications designed for one platform rarely work on another. The developer often feels tied to one environment, with significant costs connected to any associated expansion plans to other environments.
Barrier to entry. Network operators are huge establishments, and the barrier to entry can be daunting for small developer organizations. Handset manufacturers often work with a few select developers who create limited sets of applications for all their handset models.
Rogue applications. Finally, network operators are very concerned with stability and performance of applications. Operators want to protect their networks from rogue applications, which could affect their network operations for both voice and data services. Downloadable applications add the challenges of viruses, hackers, bad performance, and application instability or malfunction, which can lead to perceived degraded value of operators' service offerings. This is another impediment for new developers to get an easy foot into the wireless development space.
All the above concerns are significant challenges for developing, deploying, buying, and consuming data services on today's wireless networks. The BREW platform was designed to address these challenges.