The Web as a Mobile Enterprise Application Platform

In many ways the web seems like it should be the ideal development platform for mobile enterprise applications. It’s a thin client platform with a rich UI experience. There are standard development tools and with AJAX the screen refreshes can make the applications feel like a thick client environment.

And it can definitely work, as we proved back in 2000 when we developed the Sears mobile retail application. This was developed on the Symbol SPT1840 (Palm OS) with a custom, very primitive, web client. On the server side they were originally running Java 1.1 servlets on an OS/2 box (later Windows NT).

So mobile web applications are technically feasible and have a desirable thin client architecture.  Then why isn’t it the industry standard. The answer becomes more apparent as we look at some of the obstacles.

Latency – The first big obstacle was the screen refresh problem. Any time we wanted to change application state required a round trip to the server and a screen refresh. With AJAX this is better, but it does makes development more difficult.

Device Features – One of the main reason that we people use mobile devices is for all of the cool features such as barcode scanning, magnetic stripe readers, cameras, video, messaging, etc.   Not to mention a pretty powerful CPU, persistent storage, and the other features of a portable computer. With web apps, you are generally limited to the functionality of your browser. To some extent you can get around this with ActiveX controls and third party browser extensions such as Motorola’s PocketBrowser, but this is all custom.

Bells and Whistles -Audio is a critical component of Enterprise applications. For some reason Microsoft all but eliminated sound from the mobile web. Without audio cues, alerting users of errors is less effective. Again we can use third party tools for this such as PocketBrowser, but…

Web Standards Support – Here’s another big frustration area that drives developers crazy. It’s only natural that the Microsoft developers made some trade offs when they implemented the mobile browsers, but clearly they weren’t targeting it as an application platform from their choices. Take the single window limitation, i.e. no popup window for displaying error messages or alerts. Or not supporting absolute position.  While these types of limits don’t prevent development, it just makes things more difficult.

Despite these challenges, web applications will become increasingly popular because of the standards based thin client advantage.  And over time, as functionality improves, it will become an increasingly common platform.

However at this point, I still see the web as a limited platform for Enterprise Mobile Applications.  We have found that it works well for smaller applications such as price checkers, or even Gift Registry.  But as the applications increase in scale and functionality, the web environment just isn’t ready for the demands of the enterprise.

Choosing a Mobile Enterprise Application Architecture

I recently spent the day with one of our largest customers to discuss the options for their next generation mobile architecture. We have worked with them over the last ten years and they are now in their third generation architecture and looking to the future.

1st Generation:Thin-Client (DOS, VAX)

Initially they developed thin client applications (DOS terminals running STEP) using COBOL on VAX servers. Although this was fifteenth it was a pretty good architecture. With this architecture the mobile applications were really an extension of their other store applications, and updating the applications was juust updating the server code. The big down side was writing the applications were difficult since they had to manage all of the client state in a multi-client server.

2nd Generation:Thin-Client (DOS, NT)

In the next generation they migrated from VAX to Windows NT and began developing with Symbol WaveWorks.This was a big step forward in ease of development since WaveWorks eliminated the need for developers to manage all of the terminals themselves. The business objects became stateless COM objects and the WaveWorks DisplayServer and Script Engine managed the terminal state.This continued to work very well and with StepOne’s STEP-CE client it was able to run on modern terminals.

3rd Generation: Thick-Client (CE, NT)

Next came the migration to the StepOne snapRETAIL .NET architecture which brought a modern UI and Web Services to access the business objects.Overall this has been a big improvement in the presentation layer as well as allowing WS integration. In addition this has added improvements such as Intelligent Alerts, Popup Messages and Improved UI controls that are now easier to implement in a thick client.

Overall this is a big improvement in functionality and performance, but now has the challenge of deploying the apps to thousands of terminals for any change. There are plenty of tools for managing this including AirBEAM, Avalanche, Afaria, SMS etc. but still not as easy as the big thin client switch which has its own set of challenges.

The Future: Are Mobile Web Apps Next?

Now the question is what should we be looking at next? Is it time to start moving towards web applications or is it too bleeding edge to commit their enterprise apps.

StepOne at NRF09

NRF 2009

NRF 2009

For the NRF show our focus was on our suite of snapRETAIL products, SNAP Store Performance and Shopping Experience Apps.  Most of the application we have shown before, but this year we added Stock Room Management and an MK500 Item Checker.  Both of which we think have great potential and were both well received by those customers we talked with.

Despite the financial collapse and the reduced traffic at NRF09, it was still one of our better shows.  Each year we get better at setting up our trade show booth and in continue to improve our entire company.  However, despite having a good show, the show was somewhat disappointing since everything we are doing is so much better than ever before.  It’s just all that more difficult due to the economy.

The StepOne Booth

For the second year, we decided to have our own booth.  In June when we made the decision, it was a no-brainer, but with the economic collapse leading up to the show, it was looking like a less good idea and we scaled back some of our plans.  Although we decided to cut back on some expenses, we did continue to improve our presence at the show and despite a generally poor attendance and floor traffic, we still had a good show.

While having our own booth is a huge amount of effort and expense for a small software company, we continue to see it as an important part of our overall marketing strategy.

This year, we had Sharp Creative design the graphics and layout of the booth.  It really makes a big difference having a real marketing company develop our booth and have some real graphics.  We had originally planned on replacing our booth this year, but ending up “re-skinning” the old one with a bunch of vinyl graphics.

In general that new graphics worked out great, but due to some scheduling challenges we weren’t able to set up the booth ahead of time to test everything out.  When Todd and I started setting it up everything was going great until we went to set up the corner pieces, the mobility boulevard street signs.  Originally the two mobility boulevard signs were to be attached on the rounded corners of the booth, but the vinyl that they were printed on were too stiff to attach to the curved partitions.  After an hour of panic and reusing some of the graphics from last year, we ended up with something that looked pretty good.  With a couple of more tweaks we should be in good shape for the rest of the year.

The Motorola Booth

Since we are one of Motorola’s top ISV’s we also had a pod in Motorola’s area, one of the busiest parts of the entire show.  This has proven to be a great source of leads for us at the show since nearly every retailer visits this area.

This year we had a great location, right in the front corner of the booth, which gave us great visibility at the show.  We definitely had better traffic in the Moto booth than our own.  They had a steady stream of customer tours through the booth and it also gave us a great opportunity to network with the other vendors and Motorola team.

In addition, Motorola had their traditional networking event at the Rainbow Room on Monday night which for us is a huge networking event since we have such a long history with Motorola (Symbol).  This year was no different.   After a slow first day of traffic on the floor, we were able to more than make up for it with this event.  It will be strange when NRF moves to Washington DC in 2011 and all the traditions will change.

Spreading the News

This year we limited the handouts to the StepOne News and a snapRETAIL handout.  This ended up working out very well, though we do need to find a more cost effective way to print our collateral.

StepOne News – NRF 2009 Edition

The StepOne News gives us the ability to highlight many of the great things that are happening at StepOne.  This year we featured the new Stock Room Management application, our MK500 Item Checker and the Mobility Boulevard concept.

snapRETAIL Handout

In contrast, the snapRETAIL is a much more traditional product handout that gives a nice overview of our snapRETAIL set of products.  It provides a standard feature summary of snapRETAIL and the features that is available.   It gives a nice summary of the products and provides a good complement to the newspaper.

Wrapping It Up

So despite one of the worst economy in recorded history and a somber NRF, it was still a good tradeshow for us at StepOne.  Now that we are back home we’ll follow up on the opportunities and see if it was truly a worthwhile event.

Microsoft Tags Brings Barcodes to the Phone

StepOne Blog (

StepOne Systems Blog

One of the big things that cell phones really need is a way to scan barcodes.  Ideally it would be nice to scan in standard barcodes such as UPCs.  But in other cases it would be nice to just enter a single piece of information in to the phone quickely such as URLs, email addresses, etc.  This is where the Microsoft Tag will provide a good solution.

For instance, here is a Microsoft Tag for the StepOne Blog.  I can just print this barcode on my business card, or marketing collateral and a mobile user can just “snap” the image with my mobile camera and it will launch Internet Explorer and display our blog.  Very cool, and great for our marketing.

The other thing that’s very cool is that I don’t even have to print the Microsoft Tag on paper.  It will work on anything with reasonable resolution that works with a mobile camera.  The one I really like is scanning the image off of the computer monitor, but it can also scan off of the TV, movie screen, side of a bus, whatever.  This is great for getting long URLs in to the phone quickly.

Microsoft Tag Reader

To try it out, download the application from  If you do this from your mobile device it will identify the correct download for your phone and provide it to you.  Alternately, you can download the application on your desktop and then transfer it to the phone yourself.

It’s also nice that Microsoft has realized that not everyone is running Windows Mobile and are providing download for a large number of phones.  The current list is: Android, Blackberry, iPhone, Java 2 Micro Edition, PalmOS, Symbian S60, Symbian S60 1st Edit, Symbian S60 2nd Edit, Symbian S60 3rd Edit, Windows Mobile.  A pretty good list.

Microsoft Tag Limitations

However the only way to “snap” a Microsoft Tag is to use the Microsoft Tag Reader.  Just looking at it I can already see potential applications that might take advantage of Microsoft Tags, but since there isn’t an SDK to work with them.  However, at NRF I spoke with some of the Microsoft Reps and they said it was under consideration.

The other limitation that I see is how the tags are processed.  What happens is Tag Reader “snaps” the tag and the data is then sent to the Microsoft Tag site which then decodes the tag and provides the information required.  This means a couple of things.  First of all, you must be connected to the Internet in order to “snap” a Microsoft Tag.  So disconnected use is out.

The other part of that restriction is that I can not dynamically generate tags on the fly.  For instance, I’d like to generate a unique tag that contains the user ID, and provide a custom tag to direct them to their web account.  However, since each tag must be created at the Microsoft Tag site this isn’t practical.

However it is very cool technology and only in Beta.  I’m looking forward to see how it will be used.

More Information:

Mobile Advance Shipping Notice (ASN) Receiving

One of the most common EDI transactions used in retail is the Advance Shipping Notice (EDI 856).  This notice is sent by the store’s vendor to inform the retailer that a shipment is being delivered and allows the retailer to plan for the delivery of the items in the shipment.

While the ASN alerts the store that the items are being delivered and will be arriving shortly, it is not adequate to update the store’s inventory or the accounting system.  These systems require that someone verifies that the items in the shipment have actually been physically received by the store or distribution center.

In the past, the only way to track the receipt of the shipment was a manual process.  The store manager would receive a print out from the order management system of the expected shipments.  Then once the shipment arrived, someone at the store would locate the printed report, match the PO to the shipping documents, receive the shipment, check that the merchandise matched the order and verify that it was not damaged.  Finally, they manually created a paper receiving report that was sent to headquarters, and ultimately keyed in to the order management system.  This paper based manual process is extremely time consuming and error prone.

However, with a properly designed mobile ASN receiving application, the entire processing of ASN shipments can be fully automated.  As the order management system receives an ASN message from the vendor, a copy is forwarded to the mobile inventory management system.  Then when the shipment is  received, the person at the store uses a mobile terminal to find the ASN and receive the shipment.

The mobile application then scans each carton, or even every item in the shipment, to verify that the correct items have been received.  In addition, the application can track damaged items and rejected shipments.  Once the shipment has been received, a message is then automatically sent to the order management system, where it is audited optionally sends a Receiving Advice message (EDI 861) to inform the vendor that the shipment was received.  All of this with a simple to use mobile appilcation.

The mobile ASN receiving application is a cricital component of any perpetual inventory system and is typically used to track all shipments within the retailer, including shipments from the distribution center and store-to-store transfers.

Motorola Joins the Android Revolution

In a recent development, Motorola is making a major investment in supporting Android on mid-range Motorola phones.  In the high end handhelds they are still supporting Windows Mobile/CE, but in the mid-range they are adopting Android.

This will finally bring a real application environment to the average phone and people will no longer have to make the decision to invest hundreds of dollars in a Blackberry or Windows Mobile Phone.  Now they will have a mobile platform with a complete set of mobile capabilities.

The other advantage that Motorola has in this market is that their legacy in barcode scanning through their Symbol acquisition.  We can now realistically have barcode scanning in a mid-range handheld which will open a whole new world of applications such as ShopSavvy.  In the past Symbol has made attempts to bring scanning to the mobile phone, but with very limited success.

Of course the next question will be with the higher end terminals.  With all of the capabilities that are coming with the Android platform, what will happen to the high-end terminals.

Is my SmartPhone my new computer? YES!

Information Week 10/06/08

Information Week 10/06/08

Guest post from Todd Berner

Information Week put together a very interesting article as it proposes the idea that your smartphone or mobile computer is your next computer.  I think the answer is a resounding yes!

If the last 15 years in IT have taught us anything, it is that our appetite for access to information and communication is almost endless.  We want and need it immediately…right at the very moment it is generated, collected, or required for action.  It should not be separated from the task at hand no matter how trivial the task might be.

Current “smartphone” demand is focused primarily on communication (voice-driven cell phones with Windows Mobile, Blackberry, and I-Phone).  Email, texting, and mobile web access have vastly increased the means by which we communicate as well as the locations and times in which it is available.

The next challenge comes from adding meaningful information to the smartphone… enterprise applications and tools that are built not only to fit within the limits of the smaller technology (CPU, batteries, small screens, etc.), but the work flow that corresponds to the application function and the business rules established by the company.

Should be fun!

Here is the link to the article.

Zebra EM 220 Ultra Mobile BlueTooth Printer

Zebra EM 220

Zebra EM 220

Zebra has just released the Zebra EM 220, a cool new Ultra Mobile BlueTooth Printer.  This printer is 4.99” x 3.13″ x 1.72” and weighs only .52 lbs (with battery).  To understand how small the EM 220 is, compare it to Zebra’s popular QL 220 Plus.  The EM 220 is roughly a third the size and half the weight of the QL 220 (3.57″ x 7.15″ x 2.96″, 1.04 lbs.).

It’s also amazing how much functionality they have squeezed in to this mobile printer.  It includes USB communications making it very easy to interface with, and also includes a BlueTooth and magnetic stripe option.

Of course the small size does have it costs.  The main limitation with the EM 220 is the smaller roll diameter which reduces the number of labels on each roll of label stock.  While in some high volume printing scenarios the smaller spool size will be a problem, in most field service cases, the smaller spool is not a concern and the smaller size and lighter weight will be greatly appreciated.

Overall this looks like a great little mobile printer that will be especially good for out of the office mobile applications with limited printing requirements.  This is typically the case in DSD or field service applications where the printing is limited to leaving a customer receipt.

Related Links:

Retail Investment in Mobile Technology

With everything that is happening with the collapse of the world financial markets and the impact it will inevitably have on retail sales, it makes me wonder what will happen with investment in retail technology, and in particular for us, what does it me to mobile retail software sales.

For those companies in a financial position there are a lot of good reasons to make technology investments including competitive advantage, cost management/reductions, and maximizing ROI.

Reason 1: Competitive Advantage

One of the more compelling reasons to invest in technology during a market downturn is to gain a competitive advantage over your rivals.   Historically companies have trimmed IT expenditures during a recession, but take a look at the case of Best Buy during the post 9/11 contraction, The Inevitable Recession: Start Planning for the Rebound Now, which describes how Best Buy was able to leap frog past Circuit City and CompUSA.  This IT investment allowed Best buy to become the dominant player in consumer electronics.  Best Buy is also continuing this strategy with their Napster acquisition, Best Buy completes tender offer for Napster.

This is the basic strategy of leveraging an advantage to develop or extend a competitive advantage.  So look at anyone doing reasonably well in the retail space to be extending their advantage.  Take for instance Wal-Mart ignites a toy war.  Thus if you have the ability to improve your retail systems when your competitors are unable you may be able to create a sustainable strategic advantage.

Reason 2: Cost Management

When the economy is doing well and everybody is making money, management rarely cares about controlling retail costs.  However, in an economic downturn saving every penny becomes increasingly important.  In retail some of the more important ways to manage costs are reducing inventory costs, while still maintaining adequate stock levels, and reducing personnel costs.

The interesting part, is that these are the same areas that mobile technology can make a real difference.  If you want to manage your inventory levels, you first must have an accurate count of inventory.  This is where Mobile Inventory Management really makes a difference by providing accurate back of the store inventory changes (Receiving, Transfers, and Mark Out of Stock) as well as Physical Inventory and Cycle Count applications.  When combined with the store’s POS records, management has everything required to make well informed decisions.

Reason 3: Maximize ROI

In the past, deploying a new mobile application meant deploying a new mobile infrastructure (mobile terminals, mobile printers, and a wireless LAN), but with the capabilities of modern mobile terminals, adding a new application can be just a matter of loading new software on the terminal.  Thus if a company has already deployed a mobile infrastructure, they can achieve a significant follow on ROI with a small incremental investment,

In many cases this opportunity existing since retailers have deployed a new infrastructure, but have only deployed a minimal set of applications.  Often this investment was part of a DOS-to-CE migration that  was limited to redeploying existing applications with a terminal emulator.  In this scenario, there is a great opportunity to take advantage of the mobile infrastructure that is in place to deploy new mobile retail applications.

Conclusion: Time to Invest in Mobile Retail Technology

Therefore despite the difficult economic environment, it may still be time for your company to invest in Mobile Retail Technology.  A small investment now may be the strategic difference between just surviving the current business environment, and creating a long-term strategic advantage for your company.

Mobile Signature Capture Applications

Customer Signature

Customer Signature Form

If you’ve ever signed for a package from FedEx or UPS, then you’ve used a mobile signature capture application. While signing for deliveries is one of the more popular uses of mobile signature capture, it is just one of many mobile applications that utilize signature capture.

Mobile Signature Capture Applications

In mobile field service applications, one of the most important drivers for the mobile application is a signature capture. Whether this is to authorize payment, verify the delivery or service, or just identifying the person performing the task. All of these uses of mobile signature capture are used to provide a further level of confirmation that the person signing is authorized, similar to signing a credit card receipt.

Here is a sample of some common mobile signature capture applications:

  • Proof of Delivery (POD)/Route Accounting (RTA)
    The application is built to track the delivery of packages to a customer, or multiple customers on a route.  In this application, the recipient of the delivery signs on the terminal to indicate that they have received a delivery.
  • Mobile Point of Sale (MPOS)
    In MPOS the application provides a mobile version of the store’s checkout register.  The clerk uses a handheld to scan the customer’s items to be purchased and the signature is used to authorize the credit card payment.
  • Service Authorization
    A Field Service technician uses the mobile application to track the services provided for their customers, and the customer signs the terminal to authorize the performance of the service.
  • Inspection Verification
    In Inspection applications the inspector uses the terminal to provide a thorough and structured inspection of the site.  Upon completion, the inspector signs the terminal to verify that they have performed the specified inspection.

Saving the Signature

In principle signature capture is very straightforward, just sign on the line and the application saves the signature.  But as they say, the devil is in the details.  All signature capture solutions start the same way, they capture mouse events as the user draws their signature.  It’s once the signature has been captured the question becomes how to store the signature.  The typical choices are to save the signature as an image file or as a meta representation of the signature.  As usual there are advantages to each.

In the case where the signature is stored as an image file (.gif, .jpeg, or .png), the advantage is the ease of drawing the signature.  Just display the image file.  However what you gain in ease of use, you lose in efficiency and flexibility.  The size of a typical image signature is a minimum of 1KB and increases as the size of the image increases.  Individually this is not a large file, but as the number of signatures grows, the data space can become significant.  Also, scaling of the image can be a challenge.

The other method to store the signature is to save a condensed representation of the data that can be easily reconstructed.  In this case, the signature is saved as a series of strokes that is then stored in a compressed format.  This advantage of this method is that the file can easily be generated when signing and typically creates a signature in the 100-200 byte range.   However, in order to display the signature a program must be run to convert the data back to an image format.  In addition, there is not a standard format for storing the signature information so a different format and display program is required by each vendor.

StepOne Mobile Applications

StepOne Systems provides a wide selection of mobile signature capture applications.  If you are interested in mobile signature solution contact us.