An M Files reader asked about the difference between SMS, WAP and J2ME applications, so let me start by explaining the SMS versus WAP approaches for developing a sample mobile application, say movie ticketing.
The SMS Approach
For the SMS approach, we need to develop an application that will receive SMS commands and respond via SMS. To select the movie, cinema and showtime, the user will need to send and receive SMS messages in a conversational manner based on menus, like this.
User: buy movie ticket System: Select a movie: Harry Potter Spiderman The Simpsons Movie User: 11 System: Select a cinema: North Mall South Mall East Mall User: 22 System: Select showtime: User: 1730 System: You have selected Harry Potter, South Mall Cinema at 5.30pm. Enter your credit card number, expiry date (MM/YY) and name.
...and so on. Notice that it becomes quite tedious to use because you need to wait for the system to respond to each command. Because SMS delivery is not guaranteed to be reliable, problems may happen -- What if an SMS message is delayed, or lost during transmission? If you provide this SMS ticketing service, you will have to bear the mobile operator charges for sending SMS messages to the users.
The WAP Approach
A WAP application is very similar to a web-based application; they are both browser-based applications. Often the same development tools are used, such as Microsoft Visual Studio. With the WAP approach we need to develop an application with minimal screen space in order to fit the tiny screens on most mobile phones. In WAP the above transaction looks like this:
User clicks on the WAP browser on the phone, enters a URL to our WAP site. The WAP site displays: "Select a movie: - Harry Potter - Spiderman - The Simpsons Movie"
User presses the joystick/navigation keys to move the cursor to "Harry Potter" and clicks it. The WAP site displays: "Select a cinema: - North Mall - South Mall - Each Mall"
User presses the joystick/navigation keys to move the cursor to "South Mall" and clicks it...
I won't cover the rest of the transaction, but as you can see the usage process becomes a lot simpler with pointing and clicking, just like you would do with a web browser on your PC. WAP also supports simple forms, so the user may easily enter the credit card information into properly designated fields -- with SMS the user needs to remember the sequence of fields and their input formats. WAP offers better security -- the credit card information may be transmitted to our server via SSL encryption.
In summary, SMS is great for alerts and very simple applications, otherwise you should use alternatives like WAP and J2ME. Stay tuned for my next post in which I'll discuss WAP versus J2ME.