12/31/12

Mobile site development - basic points to remember

A mobile site is a powerful mechanism to reach out to millions and billions of users. Though there are similarities with a desktop site, the development of a mobile site is significantly different from a desktop site and comes with a lot of unique challenges and frustrations. Following are some of the points to keep in mind:
  • mobile site audience
    • The mobile user is most likely on the move and accesses the site via small mobile devices
    • The user's patience is limited by the fact that the devices have a limited real-estate and a slower connection compared to a desktop site.
    • The user is expecting to see a simple and intuitive site with easy access to all the important areas of the site.
    • The user will not appreciate or tolerate any unnecessary complexity or slowness on the site.
    • A lot of companies offer mobile versions of their desktop sites and the user has multiple alternatives if the user is not happy with your mobile site
  • mobile devices
    • The real-estate on the mobile devices is limited
    • The devices are not connected to a local access point but work via cellular networks. 
    • The devices run on different mobile operating systems and each operating system comes with its own browser and associated quirks.
    • The device is also a phone, a music player, a video player and much more than just a browser.
  • mobile site look and feel
    • If you are developing a mobile version of a desktop site, the mobile interface needs to be consistent with the desktop site. Though the colors and themes do not have to be exactly the same, there should be an element of familiarity with the desktop version. The users must feel that they are experiencing a concise version of the desktop site.
    • If you are developing a mobile version of a desktop site, the mobile site should behave the same way as the desktop i.e users must experience similar results when they take similar actions on both versions.  
  • mobile site development and testing
    • Mobile sites need to work on mobile devices that run on different operating systems like ios, android,windows and blackberry. This can lead to behavioral quirks and can cause development and testing headaches. This additional complexity must be kept in mind while scoping the time for mobile tasks. 
    •  If you are developing a mobile version of an existing desktop site , it is very likely that you are sharing class libraries between both the versions. Great caution must be taken to ensure that the common libraries are not tampered with in an undesired manner. We need to pay attention to the versioning of the libraries and regression issues every time we make any changes to the common libraries. If any changes are made, care must be taken to do regression testing on both the mobile and site versions. 
  •  mobile network issues
    •  Since the mobile devices are well - mobile, all the communication is wireless and happens through cellular towers that are provided by the cell providers like verizon and sprint. As a result the network speed is limited and there is bound to be some latency involved. It would be wise to reduce the number of requests between the client and server. 
    • Mvc 4 has a concept called bundling that allows us to bundle multiple javascript/css files required on a page and cuts down the number of requests made to the server. Custom bundling also reduces the size of the js/css files.