Friday, March 30, 2007

Some companies have figured out how to develop slow and unreliable mobile software solutions for use on expensive and fast handheld PDAs and smartphones completely on their own, but for those new to this process please read on:

Make sure you purchase the slowest available processors on your handheld PDAs

Develop your mobile software applications in complete isolation from your real world working environment - chance and fate make life interesting if not entertaining

Make sure you purchase the least amount of memory possible on your chosen PDA

Purchase outdated and end-of-life handheld PDAs (try eBay)

Develop new mobile solutions to run on old operating systems (try pocket pc 2002 or 2003)

Develop mobile solutions that assume you will always have good wireless carrier coverage

Make sure if you lose wireless coverage, that your mobile software application is useless

Take your existing desktop server application and force it to run on your PDA

Don't filter the data you want to synchronize from your Oracle or SAP databases, just download the entire corporate database to your handheld PDA

Don't synchronize only "changed" data, download the entire corporate database each time you synchronize

Make sure if your connection is broken, you start the entire synchronization process over again - none of this starting where you left off sissy stuff

Don't consolidate your enterprise data into one simple mobile synchronization "view", leave the data in dozens of different databases and database tables spread liberally around your IT ecosystem - this proves your courage and fortitude

Don't bother optimizing your application for mobile environments

Maximize the amount of encryption and security you use on every aspect of your mobile solution - with enough security and encryption you can slow the data synchronization down to a mere trickle

Make sure you have all your mobile workers synchronize their handheld PDAs at the same time in batch mode

Hard code your mobile software solution to work only on one specific handheld PDA that can only synchronize with your backend database in one specific manner

Ensure that the software programmer that develops your mobile software application is ambitious and feels he/she is under paid and under appreciated, and/or their green card is about to expire

Develop your own synchronization middleware...so what if other software companies have spent the last 15 years perfecting it...no time like the present to begin your own 15 year odyssey.

Make sure this is your first time developing a mobile software solution - it brings out the pioneering spirit

Give yourself some unrealistic development time frames - make sure you commit to these time frames publicly and in the presences of senior management. Make sure that senior management then develops their business strategy around the dates you provided

Don't include testing and debugging time in your project plan...you need to cut corners somewhere

Documentation is only for forgetful minds, don't waste your time here

Purchase all your handheld PDAs before you develop your mobile application. Purchase enough to last the next 8 years. Who knows how long they will be available on the market and you don't want to re-develop your mobile software application for new operating systems and features

Allow your mobile workers to download all the games, music and videos they want onto their handheld PDAs

Don't standardize on a particular operating system or handheld PDA specification - it will stifle creativity

Thursday, March 29, 2007

I took a brief holiday with my wife this week and somehow ended up in a kitchen products store. As I was rummaging through the various over priced multi-colored utensils from around the world, I noticed a Symbol Handheld PDAon a nearby kiosk. This was something interesting in a kitchen store, who would have thought it?

I walked over to the kiosk and noticed a synchronization cradle sitting next to a connected desktop computer with a flat panel monitor. I noted that the Symbol PDA had a built-in barcode scanner, monochrome screen and was running the Palm OS. I walked slowly around the kiosk, pretending to be captivated by the flexible cutting boards, but I was really trying to determine the purpose of the handheld computer. I noted that the Symbol PDA was their low-end ruggedized device, and that it seemed to be positioned for the use of their customers, not for their own internal inventory purposes. I imagined I was Sherlock Holmes out to solve a case and reached for my pipe.

I nonchalantly picked up a wooden spoon with a price tag of $49 and pretended to be fascinated by its craftsmanship. I looked closer at the kiosk and noted a sign mentioning the registration of gifts. That's IT! The Symbol PDA was used by people wishing to create lists of over-priced gifts, they would never think to buy for themselves. They would scan the barcodes on all the exotic wooden spoons and then synchronize the list to the kiosk computer. Once the products were in the database application, anyone could access this list over the internet. Wow! So much technical ingenuity from a kitchen supply store!

I am always interested in new and unique mobile software applications that run on handheld PDAs and smartphones. This week one of our partners in New Zealand started work on a flight information recording application for crop dusters. They are using the PointSync Mobility Platform to design, develop and deploy this solution. I don't know all the details, but it certainly sounds interesting!

Tuesday, March 20, 2007

It is the season for Building Inspection solutions here at MobileDataforce. We are currently involved in 5 different Building Inspection projects. We are working with county governments, private building inspection companies, mold inspection companies, water conservation organizations, and a housing authority in Europe.

There are a lot of similarities:

Identify the building and building owner

Identify the physical location

Identify the inspector

Identify the date and time of the inspection

Inspect the premise

Identify and document the areas that were examined - building, floor, room, wall

Recommended action steps

Inspection Report

Mobile Invoice

Sometimes there are work orders or preventative maintenance work orders that get activated based upon an inspection. For example - NE corner of the roof is damaged, schedule repair. Other times work and cost estimates are associated with the inspections. For example - NE corner of the roof is damaged - estimated repair time 16 hours - materials costs $345.

We often support the mobile component of existing database applications for Building or Property management, but other times we develop both the mobile component and the enterprise building management application.

Monday, March 19, 2007

What does a "mobilized" work order dispatch and management system look like on a mobile handheld PDA? It consists of a number of business processes integrated together to create an efficient and profitable process that satisfies the requirements of your customer. Let's explore a mobilized work order process now:

A customer calls in to report a broken heating system. The office staff takes the phone call, enters the relevant information into the work order database application on the desktop computer which creates a unique work order number. The work order database application, with GIS integration, can compare the location of each service technician to determine which service technician is closest to the work location. This is accomplished with GPS tracking on the service vehicles or handheld computers used by the service technician.

Once the appropriate service technician is identified, the work order is dispatched to the handheld computer used by the service technician. Included in the electronic work order is driving directions from his/her current location to the next job location. In addition to the work order information, warranty, repair, users manual, maintenance history and product information on file can also be dispatched to the handheld computer for reference.

Once the service technician arrives at the location - he opens the work order on the handheld PDA. Opening the work order automatically captures the service technician's name, the date/time stamp and GPS coordinates and enters them into the open work order.

Once the service technician examines the broken heating system and determines which parts need to be replaced. He can pull out his handheld computer and check whether he has the needed parts in his vehicle inventory, if not, it automatically searches nearby service vehicles for the needed part (GPS tracking enables this). If another service vehicle is located that has the part in inventory and is nearby, then driving directions can be sent to describe how to get there in the most efficient time.

When the service technician arrives at the service vehicle with the needed part, the part is scanned using a bar code scanner in the handheld PDA to remove it from the vehicle's inventory and assigns it to the appropriate work order number.

Once back at the work site, the service technician runs into a challenge. He has never worked on this model before and needs advice. He snaps a digital photo of the equipment and synchronizes it back to the office. His supervisor reviews the photo and calls him with advice.

Once the work is completed, the service technician signs his name on the handheld computer screen, and has the customer sign the work order screen as well. The service technician prints an invoice on a mobile printer and collects the payment from the customer. The collection is noted on the mobile work order and synchronized back to the office for immediate processing.

As soon as the work order is completed and synchronized, the work order system reviews work order locations and priorities and assigns the next optimized work order to the service technician.

Thursday, March 15, 2007

Aberdeen Group reports that 80% of survey respondents are planning for increases in handheld PDAs and smartphones with wireless access and more complex devices with data applications and network connectivity. These new devices require management of the full life cycle from sourcing, procurement, connectivity assistance, applications support, security, data back-up, device replacement, through retirement.

In an earlier blog article I wrote in detail about the support requirements of enterprise mobile software solutions. Companies simply need to understand that mobile handheld PDAs and smartphones and wireless networks often come with a new and fresh set of support considerations.

In this article T-Mobile and Vodafone announce faster mobile data service offerings that will be available later this year for smartphones and handheld PDAs. What does this mean? Larger amounts of data in the form of maps, photos, audio files, video files and VoIP will be able to be sent at faster speeds to smartphones and handhelds. This has a lot of relevance for companies dispatching work orders, CAD files, blue prints, Maps, etc.

Visitors will be able to test HSDPA service at data speeds up to 7.2M bps (bits per second) and HSUPA at speeds up to 1.45M bps at the T-Mobile and Vodafone booths. That compares with the operators' current 3.6M bps HSDPA and 1M bps HSUPA.

Around the globe, enterprise users of mobile data service seek higher speeds to send and fetch large PowerPoint presentations and e-mail attachments as well as for using company intranet services more effectively.

T-Mobile plans to offer 7.2M bps HSDPA service later this year, according to Deutsche Telekom CEO René Obermann.

Vodafone, which is currently testing 7.2M bps HSDPA in a handful of cities, plans to launch commercial services in several large metropolitan areas in the coming markets, a company spokeswoman said.

Wednesday, March 14, 2007

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 focus is given to the question of how to support it once it is deployed.

Here are some of the support issues to consider:

Who does the field worker call if there is a mobile device problem?

Who does the field worker call if their mobile application is not synchronizing?

Who trains new hires on how to use the mobile application?

If there is a mobile software problem, who fixes it - IT, consultant, contractor, systems integrator, software provider or your cousin Howie?

Who does the field worker call if the mobile application needs edited?

Who defines the business process you are mobilizing? They may need to approve any changes to the business process.

Who controls the security of the device? How do you set-up a new user to securely access the enterprise database? What kinds of security rules must the field user follow? Do different users have different security profiles?

Who controls access to the enterprise database application (a DBA)?

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 enterprise database application. They will likely be involved in any future changes to the mobile application.

How many different enterprise database applications are synchronizing with a mobile device? If there is a sync problem, how do you know what database application may be impacted?

If you hire an additional field worker, how do you order an additional mobile device? Whose budget covers this?

Who decides if the new mobile device needs to be ruggedized or a consumer grade? What level of ruggedness is required?

Do different job functions require different devices, carriers and wireless data service plans?

Who decides what brand of mobile devices are going to the company standard?

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?

How do you 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?

Are the mobile devices or the mobile software solutions under warranty?

Is there a yearly support contract IT needs to know about? How much? Whose budget?

What is the account number the warranty is under?

How do you set-up a new data plan 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?

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?

What happens when the field engineer tromps off across 2 miles of muddy field to work at a construction site, but the battery on his handheld computer is not fully charged and it dies about 10 minutes after he gets there?

What happens when text messages, music, and 97 saved solitaire games claims all the memory on the PDA and the Construction application becomes either too slow or unreliable because of low memory?

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.

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?

How do you disable synchronization on a lost mobile device?

How do you kill and/or protect your data on the mobile device if it is lost or stolen?

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?

If you are taking care of many different mobile field workers and many different mobile devices with a variety of operating systems and screen sizes, how do you know who gets what?

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?

Some mobile projects require different levels of security, for different levels of data visibility. How would you manage and track that?

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?

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?

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?

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?

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 help diagnose problems?

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?

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.

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?

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)

How do you know when information was successfully synchronized with a mobile device in the field? Are you depending on Wilbert to know what the word synchronization means, or can you see determine the success of the synchronization from the IT Helpdesk?

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?

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?

Who determines the hardware requirements that support the mobile application and desired synchronization speeds?

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?

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?

How does the IT Helpdesk know which one of the 17 mobile applications on the handheld computer is having a synchronization problem?

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? How do you know the devices are being sold on eBay?

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.

What wireless carrier, technology and through-put speed is the mobile device using? Is it GPRS, GSM, CDMA, Edge or some other network configuration?

What do you do with old and retired mobile handheld devices? Companies like Ryzex buy back old handheld mobile devices and recycle them.

These are just a few of the support issues that companies must consider once their mobile applications are deployed.

Tuesday, March 13, 2007

I have written several times about the benefits of automating business processes on mobile handheld devices, so this time I am going to focus on automating business processes once the data is synchronized from the handheld device in the field to the server in the office.

Last week I visited Patron Systems in Boulder, Colorado. They are a software company focused on law enforcement and public safety. They have sophisticated business processes built into their mobile law enforcement applications that include real-time queries to multiple disparate databases to auto-fill eforms on laptops. Once the data is collected on the law enforcement form, it can be synchronized and routed to a police supervisor for review. It stays in a "work que" until the supervisor either approves or rejects it. If rejected it is returned to the original officer for editing and correction or if approved gets sent to the record management system for storage.

This is an example of how data collected in the field can activate an automated business process/workflow back at the office. The data is routed to a specific location, and a specific person/position to review, make a decision and then act upon. Once there is an item in the work que, the person is notified that there is an action required. This is an important concept - the person does not have to remember, or look things up, they are notified there is work to do. This is "automating" a business processes. If the eform is rejected as incomplete it will be sent back to the original author's "work que" and the officer will be notified. Again the significance of this step is that the workflow/business process will notify an officer in the field that there is additional work required.

The above example of an automated business process demonstrates the ability to start a process/workflow in the field, move the process to the office and then back to the field. This is a "mobile and automated" business process. The more you can define and automate "best practices" the higher quality and better your products and services will be.

Workflows can be automated by using mobile software platforms that are integrated with a central database server. Business rules, triggers and other methodologies and tools can be used to automate your processes on the database.

Monday, March 12, 2007

I want to share some more thoughts on mobile software applications and automated business processes as they relate to mobile handheld PDAs. One of the key differences between a paper form and an electronic form on a handheld PDA is the ability to include automated business processes in the electronic form on the handheld. What do I mean by automated business process?

Definition of Automated Business Processes: a set of interrelated tasks linked to an activity that spans functional boundaries. Business processes have starting points and ending points, and they are repeatable.

IBM adds these valuable comments - "More importantly, the value of creating business processes for an enterprise is in the intellectual assets that those processes represent. The widgets that a business produces have value, of course; additionally, the knowledge of how to make those widgets has value too. That knowledge can be captured, added to, and improved in a business process. The scope of the widget-making process is important because doing all of the steps ensures quality widgets; doing more or less or different steps results in higher costs or lower quality or both."

One can improve the quality and consistency of the operation or business process by automating the way it should be completed. In a mobile software application for a handheld PDA, a company has the ability to ensure the appropriate business processes are done in the appropriate order. This is accomplished through a variety of means including:

Requiring specific information to be captured

Automating GPS location capture whenever a work order is completed

Requiring a digital signature from a customer to close out a work order

Requiring a digital photo of the work performed

Automatically capturing time and date stamps for work

Automatically checking inventory levels before dispatching a service technician to replace a part

Routing the field worker to a different set of questions, based upon answers (e.g. if equipment is broken automatically ask question #6, if equipment is repaired automatically proceed to question #3)

If work completed, close service order - if work incomplete answer question #2 about rescheduling work

etc

There are an infinite number of ways you can develop and automate business processes. These business processes, as IBM explained, can help you ensure that work is completed in a systematic and quality manner. You are in effect building "best practices" in your mobile software application.

MobileDataforce has spent the last 7 years researching and developing ways to include and manage automated business processes in mobile handheld applications. The PointSync Mobility Platform has been designed with automated business processes in mind.

Mobile software applications are often used in the field by workers using handheld PDAs that do not have English as a first language. To assist in training these workers to use mobile applications in the manner they are intended audio and video files can be included in various locations on the mobile application. These audio files are often accessed through an icon on the application next to a field or set of inspection questions. Here are some examples:

RFID Cattle Management application includes Spanish language audio files on the screen so workers can listen to instructions on how to correctly use the application and answer questions.

Construction Management application can flip back and forth between English words on the application and Spanish words on the application at the push of a button.

Quality Assurance applications can explain how to analyze the quality of a particular operation through audio, video and pictures

Instructions can tell the field worker the proper method of ordering additional products to use on a job.

Video files can also be accessed from the mobile application. Let's say a field worker has never performed a routine maintenance procedure on a peice of equipment. The service order or maintenance order can include a multilingual video file that explains how to perform the procedure. This is a powerful training aid for field workers.

Friday, March 09, 2007

Imagine this - a junior service technician needs advice on how to repair a piece of equipment. He pulls out his handheld PDA with a wireless connection, calls his supervisor back at the office, and starts taking a digital video of the equipment. The supervisor is able to view the digital video in real time and asks the junior service technician to move the video camera around so the equipment can be viewed from several angles. Advice is given and the junior service technician completes the job.

This scenario is available today. MobileDataforce's PointSync mobile software for field service technicians is available here, and the ability to transform your Smartphone or handheld PDA into a live video cam can be found here.

MobileDataforce is growing rapidly in Australia and in New Zealand. We have just kicked off a number of very interesting mobility projects. One project in New Zealand is with a prominent engineering and construction company that involves mobile service requests. They are utilizing GPS, photo capture and the ability to create new service requests and job estimates on the handheld PDA from the field.

Our customer has the following business units; trucking, engineering, asset management, facility management, road and bridge building and construction and many more. Each of these business units have a need for mobile software on rugged handhelds to communicate with their management team and software in the office.

Tuesday, March 06, 2007

ROI (return on investment) is the term used to define the value of a solution relative to the cost. If a mobile solution for use on a mobile handheld PDA cost $50,000, how do you justify this investment? Management needs to see that their investment will provide them with a positive return. The following list contains some of the most common justifications for mobilizing business processes using mobile software for handheld PDAs:

Eliminate time spent in the office re-typing data collected in the field.

Eliminate time spent on the phone dispatching service tickets or work orders, rather dispatch electronic service tickets direct from your computer to the mobile device of your service technician.

Send driving directions from Google Maps in the electronic work order; saves time finding work locations.

Avoid the fuel costs incurred delivering paperwork to the office; rather synchronize the data direct from the field to the central database application.

Avoid the time cost transporting paperwork from the field to the office.

Save time and provide better customer service by providing real-time access to enterprise data while in the field. Enable mobile access to customer history, product documentation, warranty information, inventory information, time sheets, work schedules and much more.

Speed up field data collection by using barcode scanners and barcode labels on assets. A quick scan with your handheld computer can automatically display all stored information related to the asset for quick review, edits and additions.

Create and schedule service tickets direct from the field , rather than using office staff. This avoids the need to involve the central office staff for this purpose.

Immediate invoicing for faster collections and cash management.

Proof of work – GPS audit trail of work. Detail work completed in that location.

Reduce introduction of errors - paper based systems are inherently slow and error prone. The more hands touch a paper form and add or edit data, the more chances that errors can be introduced to the data.

Ensure complete data is sent from the field – incomplete field data can take hours of work to track down later .

Digital images to document work - with before and after digital photos that synchronize back to the office.

Push data to the handheld – avoid time on the phone and note taking while driving by pushing documents directly from the office to the handheld.

Vehicle and handheld GPS tracking for quicker dispatch and least cost routing- handheld computers with GPS functionality can integrate with GIS and display the location of the field worker to help managers better organize service responses.

Compute and analyze data on the handheld in the field – programmed analytics can help field users make quicker and better decisions.

Automated business processes - your mobile application can be configured to perform all kinds of automated business functions, queries, computations, analytics and many more time consuming features automatically based on data input or buttons pushed.

Enforce business processes for efficiency and best practices - mobile software solutions can be configured to ensure the field user follows the appropriate business processes based upon the data entered (a specific answer can force a separate business process.

Avoid lost data on paper forms —capture data immediately and sync to headquarters.

Avoid undocumented inventory usage and unbilled time due to forgetfulness- enforce real time data entry before clock out or work order completion.

Require clock in and clock out at jobsites to document the accuracy of work estimates.

Train new service technicians and inspectors with audio memos or video clips.

Capture digital signature for proof-of-delivery and proof of work.

Enforce and automate best practices business processes.

Automatically track inventory and parts usuage on the handheld computer.

Query for available inventory in nearby work vans to save travel time and fuel cost.

Use information on handheld computers to up-sell more products and services while onsite with the customer.