A TAKE Solutions White Paper Mobile RFID solutions small smart solutions
Introduction Mobile RFID enables unique RFID use-cases not possible with fixed readers. Mobile data collection devices such as scanners tethered to mobile computers, integrated handheld readers, and ehiclemounted readers from companies such as Psion Teklogix, Intermec, LXE, and Motorola, allow the reader to be brought to the asset instead of the asset having to pass by the reader. These devices and custom applications running on them can leverage existing wireless networks to communicate continuously with the rest of the system, and can often be used offline to collect data for transmission to the rest of the system at later time. Early RFID deployments brought to light a number of limitations with the use of fixed RFID readers for certain processes. For example, systems that leveraged RFID-enabled portals or choke points at dock doors highlighted issues including: tagged assets moving too quickly, the limited visibility of the asset beyond the choke point, and the inability to do inventory of stationary assets on shelves or in store rooms. Today s deployments that use mobile RFID technology from workers carrying integrated handheld readers to the mounting of specialized readers on forklifts benefit from more flexible interaction with tagged assets and broader location coverage. The additional read opportunities enable greater asset visibility and allow for the recording of asset entry, movement, and placement around a facility. New applications are being built every day to leverage these unique capabilities. In order to truly capitalize on the benefits of mobile RFID, application developers must understand the unique requirements and challenges of mobile application development, deployment, and usage. A flexible architecture provides a rich foundation for mobile application development to extend the software across platforms and readers. This whitepaper will highlight the top requirements and considerations for building mobile RFID applications and will introduce how to simplify development of mobile application to be reader independent and platform independent and allow companies to realize the benefits of mobile RFID. 2
Extremely rich and user-friendly applications can be built using the Microsoft.NET Compact Framework with the help of multithreading, and a clear goal for the mobile application. MOBILE APPLICATION DEVELOPMENT REQUIREMENTS As with barcode scanners, sensors, and fixed RFID readers, mobile RFID readers all have some notion of making the captured RFID data available through an Application Programming Interface (API) or directly to a networked computer for integration into custom applications. From there, it is up to the application developer to understand and utilize the capabilities of the device and the communication network to build the most powerful and robust application for the end user. Flexible architecture and other software built for mobile devices, such as mobile databases or mobile device management tools, provide the flexible building blocks to simplify the development, deployment, and management tasks, and allow the developer to focus on the specifics of each custom application. The most prominent operating systems for mobile devices today are Windows CE and Windows Mobile, allowing developers to leverage existing skill sets and developer tools to build custom applications. 1. Build a generic middleware Before writing a line of code, it is important for a developer to build a RFID middleware platform that provides common API to interact with the RFID hardware, and overall feature set to integrate with the chosen device through a layer of device abstraction. By working with the mobile APIs of the middleware, developers avoid having to understand the low-level intricacies of each mobile platform, freeing up time to program the differentiating functionality of the custom application. Also, any code written is abstracted from future hardware changes, such as low-level API updates or the move to a new device platform. In addition to providing simple methods to get the RFID and barcode data generated from the hardware, middleware can provide additional functionality to make developers productive, such as APIs for client/server messaging or the ability to control device functionality through configurable properties instead of custom code 2. Rich user interface, much interactive applications Applications should leverage the processing power and display capabilities of mobile RFID devices through concepts of multi threading and by effective usage of the mobile display real estate. Extremely rich and user-friendly applications can be built using the Microsoft.NET Compact Framework with the help of multithreading, and a clear goal for the mobile application. In addition to being able to control the functionality of the reader hardware directly from the application, users can be presented with meaningful interfaces to encourage adoption; raw data can be turned into valuable information by retrieving meaningful information from the server. Reduce the need to process it at the server, and processes can truly be driven by applications that interpret and act on the generated information. 3. Asynchronous communication for online and offline use While many mobile devices are equipped with the ability to communicate over a Wi-Fi network, applications should be built with the assumption that the network may not always be available or that it may not make sense to constantly communicate over the network. Mobile devices that use wide area wireless cellular network need to be even more aware of network limitations. Certain issues such as the limited/ expensive bandwidth and battery-life are such that only the most important information be sent over the network when it is available. Just as mobile field force applications allow for always-available, offline capabilities, RFID solutions involving mobile devices should not depend on a constant connection between the device and server. Instead, the mobile device should be able to function offline as much as possible. In this model, the mobile application should be able to collect data, enable decision-making, and generate valuable information offline. Then, when it makes sense, this valuable information can be sent to business logic at the edge of the network running on a PC or server for further processing and integration into the enterprise. Two common models for this asynchronous communication are database synchronization (where a mobile application interacts with a local relational 3
Developers can leverage many APIs and storage options with these devices, matching the storage/retrieval capabilities to their specific requirements. database with changes synchronized between it and a consolidated database) and direct communication to the server through web services. 4. Local data storage for persistence and decisionmaking Just as the processing power and rich displays of mobile devices can be leveraged to create compelling custom applications, so too can the available device memory. Applications could store supporting data locally to help with real-time decision-making. For example, a mobile application could provide the ability to retrieve a list of expected items before an inventory is performed, allowing the application to present a concise list of missing or unexpected assets to the user and allowing them to take action immediately. Or, valuable information could be persisted on the device for future delivery when a network connection is available. Developers can leverage many APIs and storage options with these devices, matching the storage/retrieval capabilities to their specific requirements. For data intensive mobile applications, it often makes sense to have a relational database management system, such as SQL CE on the device. SUMMARY Build a generic RFID middleware to build complex mobile RFID applications on top of that and override the middleware specific to the device types. So that the developer working on top of middleware is lease bothered about the hardware and platform the targeting device is. This will allow application developers to take full advantage of mobile RFID devices by enabling powerful applications that fully leverage their unique capabilities and the applications built can be easily ported to new RFID devices, eventually making the application Reader, Platform independent. 5. Application hardening (make Application hard to reverse engineering) Obfuscation is one technique used in this process called "application hardening", which also includes such techniques as tamper detection and response, application encryption, and custom virtual machines. Obfuscating code to prevent reverse engineering is typically done to manage risks that stem from unauthorized access to source code. These risks include loss of intellectual property, ease of probing for application vulnerabilities and loss of revenue that can result when applications are reverse engineered, modified to circumvent metering or usage control and then recompiled. Obfuscating code is, therefore, also a compensating control to manage these risks. The risk is greater in computing environments such as Java and Microsoft's.NET which take advantage of just-intime compilation technology that allow developers to deploy an application as intermediate code rather than code which has been compiled into machine language before being deployed. 4
TAKE Solutions, Inc. 502 Carnegie Center, Suite 100 Princeton, NJ 08540 609.720.1002 phone 609.720.1003 fax www.takesolutions.com contact@takesolutions.com Copyright 2009 All content is the property of TAKE Solutions, Inc. All rights reserved. All other trademarks mentioned are the property of their respective owners.