Mobile Application Development Strategies for Handhelds, Smart Phones and PDAs

The mobile application framework on the mobile handheld computer, Smart Phone or PDA can be thought of as a mini-EAI application (enterprise application integration platform). In the world of SAP they have NetWeaver for integrating all of the various applications together. NetWeaver is described as an integrated technology platform. Many different mobile software applications are found on a typical mobile device and they all need to be integrated together as well including:

  • Radios - Bluetooth, wifi, RFID, GPS, Phone
  • Data collectors - RFID, barcode scanners, digital images, voice memos, GPS, credit card swipers, mobile applications and forms
  • Databases, synchronization technologies
  • OS with downloadable applications

All of these various applications need to be integrated together using some kind of mobile integration technology platform. The OS can take care of many of the simple features and functionality, but a database driven integration platform for the mobile device is required if you are going to create various application layers that are all integrated into one downloadable mobile software application that can combine all of the necessary application functionality into one synchronization platform that is integrated with your back-office business applications.

Mobile applications have many unique requirements. Among these requirements are:

  • GUI that can be resized quickly based upon the mobile device used
  • Data collection fields and forms
  • Mobile application workflow engine and validation features
  • Data validation features
  • Framework for pulling in data from third-party data collection hardware and software applications (barcode scanners, RFID, GPS, voice memos, credit card swipers, databases, etc)
  • Mobile database (small databases optimized for mobile devices)
  • Synchronization technology on the mobile device and on a central server

Mobile software application developers will want to find a good development toolkit for efficiently creating mobile applications. These toolkits can assist in quickly creating:

  • Application GUIs
  • databases
  • Synchronization scripts
  • Workflows
  • Integration with third party data collection applications
  • Data validation features
  • etc.

In addition to the basics listed above, it would also be very useful to have the following:

  • Mobile application workflow engine (as described in this article)
  • A mobile software kit based on your back-office ERP or database

Wouldn't it be nice to bring up a "work order ticket" on your Oracle or SAP system and immediately replicate the data requirements and valid data rules on your mobile device database? Today, this is a long and painful exercise. Each field in the SAP or Oracle database for that specific application would have to be analyzed to determine what is a valid data entry. The validation rules, would need to be individually documented and recreated on the mobile application database manually. An ERP centric mobile application toolkit would quickly transfer those data validation requirements to the mobile application that would be collecting the data and synchronizing back to the office.

If you have not developed industrial strength mobile applications before, it may be good to work with some experienced mobile application developers on the first few. There are strategies that experienced mobile application developers employ that can save you much time and pain.

If you would like to discuss this topic in more detail please email me.

***********************************************
http://mobileenterprisestrategies.blogspot.com/
***********************************************

13 Key Steps to a Successful Mobile Application Development Project

Companies now days are looking for ways to do more with less. Many recognize that their mobile workforce is being managed inefficiently and extending business process automation to mobile field workers is becoming a priority. Saving fuel, reducing paper, reducing administration work load, more efficient dispatches are all important.

The following 13 points identify how you can get started automating and mobilizing these business processes.

Step 1 – Understand the ROI/Scope of the Project and Plan Ahead

“What’s the number one reason a mobile project fails?” is a common question we get asked. The answers are that many companies don’t put enough upfront thought into defining the requirements, scheduling testing resources and planning a deployment strategy. The results of these deficiencies are project scope creep, cost overruns, missed deadlines, poor user acceptance and sometimes even complete project failure.

Step 2 – Build a Team of Stakeholders

Make sure the members of your team have the right roles and responsibilities to help the project succeed. Mobile solutions usually tie into other corporate IT assets and business processes, therefore impacted members of your IT department and business units need to be on the project team.

In addition, a representative mobile field worker(s) should be included on the project team to provide valuable “real-world” insight. Don't forget the folks running the IT helpdesk. They are likely to get called when the mobile handheld PDA runs out of battery, memory or needs repaired or replaced.

Step 3 – Select a Partner That Specializes in Mobility Solutions

Performing successful data synchronization from mobile computing devices can be a challenging and complex task. There are many variables that can affect the results of synchronization. To insure you get your solution done correctly the first time, you need experienced experts in mobile technology. You need technologists who specialize in the design, development, deployment and support of enterprise mobile solutions.

Step 4 – Know Your Target Users

During the planning and scoping phase of your mobile project, take time to experience the working environment of your mobile workers and observe the business processes in action. Pay specific attention to how information is collected and exchanged between the office and the mobile workers. These observations can significantly impact the design, development and deployment of a successful project!

Step 5 - Evaluate the user environment

How do moist, cold and dirty environments impact the mobile devices? How does low light or bright sunlight affect visibility of the screen? Can workers read the small text on the PDA screen, or does the text need to be larger?

Step 6 – Don’t Underestimate the Complexity of Synchronizing Field Data

Step 7- Understand the technical challenges and issues

One of the biggest mistakes a project planner or IT department can make is to underestimate how complex data synchronization can be. Part of designing a solid and reliable mobile solution is to select robust synchronization middleware and to spend time designing and testing the data synchronization. Without the right middleware and design your end users could encounter issues such as extra long sync times (hours, not minutes), duplicate records, incomplete data, lost data and even database corruption. Every one of these issues will trickle down to your support department, so designing it right the first time is very important.

Step 8 – Build in Phases

Most successful projects involve a series of phased implementations. Each phase can be developed, tested and implemented in an orderly manner. Once a phase is deployed and proven, additional phases can be layered on top that include more features and added complexity. Remember, the more data requirements that you add the more data you must synchronize, and the longer each synchronization session will take. Only synchronize data that your remote users require in the field. In addition, most mobile devices don’t have the same CPU power or memory as a PC/laptop, so be aware of how the performance of your solution will be affected by a smaller, lower powered device.

Step 9 – Evaluate Your Hardware and Connectivity Needs

The term “mobile devices” can have many different interpretations. Today, laptops, Tablet PC’s, UMPCs, PDAs and Smart phones are all identified with this term. When determining the best mobile device for your project you will want to consider screen size, data storage capacity, security, physical working environment, required hardware accessories such as barcode scanners, GPS, digital cameras, RFID, and the ability to upgrade the device with updated hardware and software components.How do you connect your mobile device to your enterprise database applications? You have many options including cradle, WiFi, satellite, Bluetooth, wireless, dial-up modems and satellite uplinks to name a few. The method(s) you choose will be affected by how often your mobile workers need to send/receive data. How much data will be transmitted and will they always have connectivity. Study each option, your working environment and consult your mobility partner to make the best selections.

Step 10 – Deploy to a Limited Focus Group, Evaluate and Improve

Once you have completed version 1 of your mobile solution and you are ready to deploy in the real world, roll out your solution to a small group of trusted and motivated users. Define a specific period of time to evaluate the solution, document the results and identify any required changes and improvements. The result of this evaluation should be an improved mobile solution that is ready for wide deployment.

Step 11 – Set and Enforce Hardware and Security Policies

Mobile devices are small computers with the ability to store sensitive corporate data, communicate this data over the Internet and even catch viruses. You must clearly communicate how mobile devices are to be used and for what purpose. Establish and publish guidelines for using mobile devices.

Step 12 – Provide Full Support for Mobile Users

Mobile devices are guaranteed to break. What is your plan for keeping a mobile worker productive and communicating business critical information when their mobile device ceases to function or gets misplaced? These are inevitable issues that are best planned for in advance. Have a plan and a documented back up process.

Step 13 - Select a technology partner that understands your business applications and ERP

I f you use SAP, make sure that the mobile technology partner you select is also an expert in SAP mobile.

***********************************************
http://mobileenterprisestrategies.blogspot.com
***********************************************

Mobile Applications and 69 Enterprise Support Questions

Often the focus of a mobile software project is on gathering the functional requirements, designing, developing and deploying the mobile solution, but little or no advanced planning is given to the question of how to support it once it is deployed. The following list contains many of the questions your IT helpdesk and support department will want and need to know:
  1. Who does the field worker call if there is a mobile device problem?
  2. Who does the field worker call if their mobile application is not synchronizing correctly?
  3. Who trains new employees on how to use the mobile device and application?
  4. If there is a mobile software problem, who fixes it - IT, consultant, contractor, your systems integrator or VAR? How do you get in contact with them?
  5. Who does the field worker call if the mobile application needs edited or upgraded?
  6. If the user downloads a new version of the mobile operating system and the mobile application doesn't work, who will fix it?
  7. How do you prevent mobile users from downloading new software applications that might break the system?
  8. How do you back-up mobile devices so the information is centralized?
  9. Who owns and defines the business process you have mobilized? They may need to approve any changes to the business process.
  10. Who controls the security of the device?
  11. How do you set-up a new user to securely access the enterprise database?
  12. What kinds of security rules must the field user follow?
  13. Do different users have different security profiles?
  14. Is there a standard set of security rules for mobile devices across the enterprise?
  15. Who controls access to the enterprise database application (a DBA)?
  16. Will the Database Administrator allow you to synchronize data directly to their enterprise database application, or do they want a "staging database" or API layer to review all data before it is loaded to the enteprise database application. They will likely be involved in any future changes to the mobile application.
  17. Are synchronizations done in real-time, near-real-time, or batch on a schedule?
  18. Does one mobile device have multiple synchronizing applications? Are they on different schedules or do they synchronize at the same time?
  19. How many different enterprise database applications are synchronizing with a mobile device? If there is a sync problem, how do you know what database applications may be impacted?
  20. If you hire an additional field worker, how do you order an additional mobile device? Whose budget covers this? Who is the vendor? What support plan or insurance plan should be included?
  21. Who decides if the new mobile device needs to be ruggedized or a consumer grade? What level of ruggedness is required for the specific user?
  22. Do different job functions require different devices, carriers and wireless data service plans?
  23. Who decides what brand of mobile devices are going to be the company standard?
  24. Where do you purchase your mobile devices if one breaks or you need to add one to your inventory? Do you have a corporate discount or volume discount agreement?
  25. How do you manage and control the variable costs of using a data plan from a local wireless carrier? What happens if the costs of the data services gets out of control? Who pays for it?
  26. Are the mobile devices or the mobile software solutions under warranty? Where are these contracts stored? Who owns them?
  27. Is there a yearly support contract IT needs to know about? How much? Whose budget?
    What is the account number the warranty is under?
  28. How do you set-up a new data plan for a new user with your wireless carrier? Who does that in the company? What is the account number so you can add subscribers? Whose budget pays for it?
  29. What happens when Microsoft releases a new Windows Mobile operating system and you can only purchase mobile devices with the new OS on them? Who is going to upgrade your mobile software solutions so they work with the new OS?
  30. What happens when the field engineer treks across 2 miles of muddy field to work at a construction site, but the battery on his handheld computer dies about 10 minutes after he gets there? What is the backup battery plan?
  31. What happens when text messages, photos, videos, music, and games claim all the memory on the rugged PDA and the Construction application becomes either too slow or unreliable because of low memory?
  32. How do you know when your mobile workers are synchronizing the latest information? You don't want mobile workers going days without synchronizing their device.
  33. When you send an updated software application to your mobile workers, how do you know who is using the new application and who is still on the old?
  34. How do you disable synchronization on a lost or stolen mobile device?
  35. How do you kill and/or protect your data on the mobile device if it is lost or stolen?
  36. How do you keep track of which workers are using which mobile devices? If there is an operating system update, or firmware update, how do you know who needs it?
  37. What is the process for bringing mobile handhelds into the IT department for repairs and upgrades? Is there a central location, or should various locations be scheduled on specific dates.
  38. If you are taking care of many different mobile field workers and many different mobile devices with a variety of operating systems, wireless carriers and screen sizes, how do you track who gets what?
  39. If you have a project manager that requires visibility to more data than other workers, how do you manage different views on the handheld computer?
  40. Some mobile projects require different levels of security, for different levels of data visibility. How would you manage and track that?
  41. Will your company standardize on 1 mobile operating systems or several (Blackberry, Microsoft Windows Mobile, Palm, Android, iPhone, etc)
  42. Some applications require barcode, RFID, GPS, digital camera and other specialized data collection accessories, while others don't. How does the IT Helpdesk track the brand, version and other details of these accessories?
  43. If a dump truck backs over your supervisor's $1800 ruggedized computer and crushes it into hundreds of unidentifiable pieces, how do you get a replacement out to the supervisor with the exact application and data that is required as quickly as possible?
  44. If a mobile device needs repaired - what is the process for keeping your field workers operating without it? Do you have a stock of spare mobile devices?
  45. Does your mobile device reseller have a replacement program?
  46. How do you deploy new mobile applications to your 1,300 mobile device users? Must they bring all their devices back to the IT department, or can you publish new applications directly to the handheld computer?
  47. How do you support the mobile device, when the user has limited computer knowledge and is sitting on the top of a utility pole? What tools can the IT Helpdesk use to remotely help and diagnose problems?
  48. How do you recognize a defective mobile device that is being shared by 12 different mobile workers? Do you have a method of identifying which problems are being reported on a particular device or are you logging support calls only by users?
  49. What is your process for dispatching work orders to service technicians when they are disconnected or out of range of cellular and wireless networks? A process needs to be defined.
  50. What is your synchronization plan for each mobile worker? Can they sync in the morning and evening at their office desk, or do they need to sync every 5 minutes or in real-time?
  51. What is the synchronization plan for a service technician that rarely has wireless network access? Does it justify a satellite up-link? (Sears Service Technicians use both)
  52. How do you know when information was successfully synchronized with a mobile device in the field? Can you see and determine the success of the synchronization from the IT Helpdesk?
  53. What is an acceptable synchronization time? Is it 20 seconds, 2 minutes, 20 minutes? Does the IT Helpdesk know what times are acceptable so they can consider this when configuring a new user?
  54. Does all data need to be synchronized in real-time, or only some. Product catalogs are an example of updates that may only be needed weekly or monthly?
  55. How much data can be synchronized in a given period of time on the chosen connectivity option? Is that an acceptable speed for the task at hand?
  56. Who determines the hardware requirements that support the mobile application and desired synchronization speeds?
  57. When a new mobile software application is developed, who tests its operating speed on different devices, processors, memory levels and connectivity options to determine what is acceptable and what is not?
  58. When you are updating or reconfiguring an enterprise database, how do you know what mobile applications and mobile users will be impacted by these changes? How do you manage this update process?
  59. How does the IT Helpdesk know which one of the 17 mobile applications on the handheld computer is having a synchronization problem?
  60. If you are supporting 174 work crews and their mobile devices around the globe, how do you know where they are located, and who is responsible for them?
  61. How does the IT Helpdesk know if a mobile device is using a cradle, modem, bluetooth, wireless, USB, satellite or Cellular connection to synchronize? The IT Helpdesk really wants to know before they begin working on the issue.
  62. What wireless carrier, technology and through-put speed is the mobile device using? Is it GPRS, GSM, CDMA, Edge or some other network configuration?
  63. Do you need to stagger the synchronization times? One of my clients had a problem with 300 mobile workers downloading large product catalogs all at the same time each month -the first Monday of the month. This caused a bottleneck and slow downloading times.
  64. What do you do with old and retired mobile handheld devices? Companies like Ryzex buy back old handheld mobile devices and recycle them.
  65. What rugged or semi-rugged cases are required to protect the mobile device?
  66. What add on assessories are supported on the mobile device? Ear pieces, GPS, add-on RFID, barcode scanners? Who supports these and where do you order replacements?
  67. Does the same mobile software application work on rugged mobile handhelds and on mobile consumer devices?
  68. What employees and roles get the different levels of rugged devices?
  69. Do you have a corporate account with a mobile device reseller that will repair all of the different mobile devices or do you work with many different vendors with different support and warranty plans.

All of these questions are very important and need to be answered upfront. If you would like to discuss this subject in more detail please email me.


***********************************************
http://mobileenterprisestrategies.blogspot.com
***********************************************

Advice for Mobile Start-ups and Mobile Developers

There are a lot of business and technical issues to consider and points to ponder if you are developing a mobile software application to use internally or to sell, or are creating a start-up mobile software company. I have a lot of personal experience in this area and have documented much of it in over 475 blog articles on this site.

To save the reader time searching through the entire blog library, I have collected a few of the articles especially relevant to those starting new mobile application projects and new mobile start-ups.

The following link goes to a another blog article that lists many additional resources for mobile start-ups - Mobile Handheld PDAs and Mobile Software Application Resources

If you would like to discuss any of these subjects in more detail, please email me.

***Note, readers can search on specific mobile subjects within these 450 plus articles by using the Blog Search function at the top of the page.
***********************************************
http://mobileenterprisestrategies.blogspot.com/
***********************************************

Mobile Software Application ROIs for Mobile Service Businesses

The ROI (return on investment), in this context, is the term used to describe the value of a mobile software solution relative to the expense of designing, developing and deploying it. If a mobile solution cost $145,000, how do you justify the investment? Management needs to see that their investment will provide a quick and positive return. The following list contains some of the most common justifications for mobilizing business processes:
  1. Eliminate time spent in the office re-typing data collected in the field: Enable field service technicians to synchronize information directly with the office database.
  2. Eliminate time spent on the phone dispatching service tickets or work orders. Both the time of the dispatcher and the time of the service technician: Dispatch electronic service tickets direct from your work order management system in the office with the mobile device of your service technician.
  3. Save time finding each work location: Send driving directions, or links, in the electronic work order that work with the GPS and mapping software in the mobile device.
  4. Avoid the high fuel costs incurred delivering paperwork to the office and picking it up: Synchronize the data direct from the field to the central database application.
  5. Avoid the time cost transporting paperwork from the field to the office: Synchronize the data collected from the field with the push of a button.
  6. Save time and provide better customer service by providing real-time access to enterprise parts, orders, and inventory data while in the field: Enable mobile access to customer history, product documentation, warranty information, inventory information, time sheets, work schedules and much more.
  7. Save time with field data collection by using barcode scanners and barcode labels, or RFID readers and RFID tags on assets: A quick scan with a handheld computer can automatically display all stored information related to the asset for quick review, edits and additions.
  8. Save time and reduce admin costs by creating and scheduling new service tickets direct from the field:
  9. Provide immediate invoicing for faster collections and better cash management: Allow field tech to print the invoice on a mobile printer at the job site.
  10. Save time and postage costs: Print the invoice and leave it with the customer at the job site, rather than wait and bill later from the office.
  11. Document proof of work completed to reduce invoice disputes: Leave a GPS audit trail of where work was performed and include a time and date stamp. Digital photo evidence of before and after work is also useful.
  12. Reduce the introduction of errors: Paper based systems are inherently slow and error prone due to human interaction, copying and re-typing. The more human hands that touch a paper form and add or edit data, the more chances that errors can be introduced to the data which will cause invoice disputes, inaccurate records and confusion.
  13. Reduce administrative costs by ensuring complete data is sent from the field, as incomplete or inaccurate field data can take hours of work to track down and correct: Send data from the field and ensure it is complete with data integrity features on the mobile handheld computers and rugged PDAs.
  14. Reduce administrative costs by avoiding errors and misinterpretations due to poor or misread handwriting: Create electronic forms with pre-made options, check boxes and lists, and by using onscreen digital keyboards.
  15. Reduce administrative costs by ensuring the accuracy of data: Validate answers in the mobile software application on the handheld PDA.
  16. Reduce time on the phone and dangerous note taking while driving: Push documents directly from the office to the handheld.
  17. Save time and fuel by providing electronic dispatch and least cost routing: Use vehicle and/or handheld GPS tracking to view your workforce locations. Handheld computers with GPS functionality can integrate with GIS and display the location of the field worker to help managers better organize service responses.
  18. Save time by developing computation and analysis features on the rugged handheld in the field: Programmed analytics can help field users make quicker and more accurate decisions and job estimates.
  19. Save time in the field by automating business processes in the mobile software: Mobile application can be configured to perform all kinds of automated business functions, queries, computations and analytics.
  20. Enforce quality work habits: Automate “best practices” into your mobile software application and provide visibility to managers.
  21. Automate quality and best practices - Activate the appropriate business process based upon the data entered: A specific answer can trigger the required business process.
  22. Reduce inventory loss - Avoid undocumented inventory usage and unbilled time: Enforce real time data entry before clock out or work order completion.
  23. Improve job estimates: Require clock in and clock out on work to document and analyze the accuracy of work estimates.
  24. Improve technician training: Train new service technicians and inspectors with audio memos or video clips in the handheld computer application.
  25. Reduce disputes by documenting deliveries and work with digital signatures, date and time stamps and barcode scanners on the handheld computer.
  26. Save travel time and fuel cost: Query available inventory in nearby company vehicles.
  27. Increase profit per customer: Use information on handheld computers to up-sell more products and services while onsite with the customer.
  28. Provider quicker and more accurate estimates: Query latest shipping status, schedules or inventory levels via handheld computers while onsite with customer.
  29. Increase warranty revenues: Include updated customer information on the handheld computer so the service technician can sell warranty and maintenance plans, new products and upgrades.
These are just some of the common areas where enterprise mobile applications have been found to provide significant value. The issues and costs of designing, developing and deploying the mobile software applications and handheld computers are discussed more in this article.

If you would like to discuss this subject in more detail please email me.
***********************************************
http://mobileenterprisestrategies.blogspot.com/
***********************************************

Interviews with Kevin Benedict