September/October 2012
Channel Chat

Ten tips for developing successful mobile apps for real-time maintenance alerts and industrial applications

By Kim Grant

Software engineering firms are developing state-of-the-art mobile applications using the Android and iOS smartphone platforms to allow manufacturers to quickly collect and display data. The data is then used to monitor machine status and downtime events. These applications can quickly assign maintenance personnel to high- priority repairs, keeping operations running smoothly and allow for continuous product generation. Custom mobile applications are being deployed in a variety of organizations-from large industrial companies, to the U.S. Department of Veteran Affairs, to retail manufacturers.

The implementation of mobile applications helps businesses drive overall productivity and increase efficiency. For example, at a sports apparel manufacturer, prior to the mobile application deployment, even a short machine breakdown would create production bottlenecks. During a breakdown, the operator and machine would sit idle until a maintenance team was found to complete the needed repair. Machine downtime can be extremely expensive and is a challenging disruption to the flow of product through production lines. Finding ways to shorten potential idle periods helps the overall productivity of any plant, and a mobile application that can automatically and immediately contact the maintenance team can reduce downtime significantly, as shown in this case.

Manufacturers in all sectors are deploying mobile applications on smartphones or tablet computers using barcode and RFID card readers. The operators have an automated way to accurately collect and disseminate downtime and other alerts for more timely reaction plant wide. Maintenance teams are notified rapidly, via their mobile devices, over the factory's wireless network. The solution is robust, inexpensive, and relies solely on low-cost, widely-available equipment.

Production tracking solutions can generate information that can help the plant management team run a more efficient plant. Additional software enhancements may include factory order tracking and improved data integration with an enterprise resource planning (ERP) system, better inventory control, and even more rapid first-aid response.

Manufacturers that have included global positioning systems (GPS) tracking of inventory and deliveries with the goal of eliminating the need for clipboard and paper are seeing a reduction of double-data entry while generating real-time information to further reduce production delays. To be on the safe side, mobile applications should include encryption and other security precautions to protect the data. Much like any other software, care must be taken to ensure that the data flow between source and destination cannot be accessed in an unauthorized manner.

When creating custom applications yourself, here are several things to take into consideration during the development stage:

  1. Configuration management/product release plan: What will the applications be able to do when they are first released, and what will the subsequent releases be able to do?
  2. Where and how is the source code stored so you can go back to the previous release of the application, if necessary?
  3. What are the version test and release procedures? Are you retesting thoroughly enough to guarantee that the newest changes do not inject bugs into previously working functions?
  4. What is the application's sustainability plan regarding hardware, firmware, and driver changes?
  5. In the beta test group, you want someone who will not be afraid to provide constructive criticism and unedited feedback. Better to hear about bugs and poor functionality prior to the release than afterward.
  6. Be sure to differentiate your requirements between "must-have" and "wish-list" functionality. Expect a couple of iterations of user interface feedback to get to a final usable application. (And in that respect, be sure to include end users in all requirements discussions.)
  7. Because of license restrictions, integration of an application into an open source operating system may deny the code writer ownership of any intellectual property. Be sure that any software written for an open-source operating system is physically segregated from the OS itself.
  8. Make sure your development team has a bug-tracking system (like Mantis, Bugtracker, or Codebeamer), and actually use it.
  9. Different Internet browsers can generate different screen views. If there is a web interface, will people using Firefox, Google Chrome, or Internet Explorer all be viewing the same thing?
  10. Likewise, different hardware platforms will have different screen resolutions and/or sizes, so it is important to build in some display flexibility. Applications are operating system specific. Many apps are transitioning to password-protected, mobile-friendly websites to deliver key performance information, so lots of testing may be needed across multiple platforms.

Kim Grant is business development manager at Applied Sciences Group (ASG), a Control System Integrators Association (CSIA) member based in Buffalo, N.Y. Contact Grant at for more information.