Tuesday 3 April 2012

The Battle of Mobile UIs - Android VS iOS

As many of you already know, there has been this ongoing battle between the two leading mobile platforms for smartphones, namely Android and iOS. So which is really better? Is there any real winner in this war of the mobile platforms? There probably isn't, in terms of overall user experience. However, we can do an analysis in the HCI context, and there might just be a winner with regards to HCI.



HCI Principles \ Mobile OS
iOS (latest: iOS 5.1)
Android (latest: Android 4.0.4 Ice Cream Sandwich)
Visibility – Users should see what functions are available and what the system is currently doing.
Buttons are generally visible and easy to find. The strength of the OS is in its simplicity and ease of navigation.
With the release of Android 4.0 (Ice Cream Sandwich), “hollow theme” was adopted, which got rid of the previous design for a sharp and high contrast UI theme which gives great visibility to the user.
Consistency – Components such as buttons, labels, messages, colour scheme, and menus should be consistent on all screens.
iOS always adopts a very consistent UI design and provides very clear design guidelines for application developers to follow.
Since Android 4.0, it is generally consistent. However, there were some problems with consistency among application developers. Some of the iOS developers that went over to develop apps for android tried to create an iOS-like feel on android, which causes the app to be inconsistent with the rest of the OS.
Familiarity – Use language and symbols that the user will be familiar with or suitable metaphors which help them transfer similar and related knowledge from a familiar domain.
Because of the consistency of iOS across multiple platforms (the different iPhones, iPads, and Apple TV), it creates familiarity for the users. Moreover, it is also quite similar to Mac OSX in with regards to the theme, icons, and general feel.
Android 4.0 is made to be multi-platform for use in both the tablet and phone. This will create a sense of familiarity for users of both Android tablets and phones. However, due to the availability of custom ROMs, there might be fragmentation in terms of user experience, resulting in a possible compromise in familiarity. Also, the inconsistency of designs in some apps might result in the loss of familiarity.
Affordance – Design things so it is clear what they are for.
iOS does follow a standardized conceptual model which is similar in iOS for all their devices. They also have a policy of enforcing their Human Interface Guidelines which creates a similar experience across their apps. This creates affordance in their UI.
Android follows a standardized conceptual model which gives the UI affordance. However,  this might be vary for different applications and custom ROMs as strict guidelines are not properly enforced.
Constraints – Provide constraints so people do not try to do things which are inappropriate.
This is a basic rule that was definitely enforced in the UI design of iOS and iOS apps.
This is a basic rule that was definitely enforced in the UI design of the stock Android OS. However, due to the availability of custom ROMs and not-so-strict
Navigation – Provide support to enable users to move around parts of the system.
Navigation to apps is done in the form of icons from the home screen and notification pulldown menu. This is quite intuitive for the users, and as a result the learning curve is very gentle for new users.
Navigation to apps can be done in the form of icons in the apps page, icons on the home screen, widgets from the home screen, or notifications pulldown menu. The use of widgets may not be as intuitive for users that are new to android.
Feedback – Rapidly feedback information from the system to the user.
iOS provides rapid feedback to the user in the form of sound alerts, status bar icons (battery, wifi signal, etc), popup notifications, progress bar indicators, notification messages via notification pulldown menu, colour changes with changing states of buttons, just to name a few. Thus, overall they do provide proper and rapid feedback to the users.
Android provides rapid feedback to the user in the form of sound alerts, changing states of widgets, status bar icons, popup notifications, progress bar indicators, notification messages via pulldown notification menu, colour changes with changing states of buttons, etc. Overall it is quite similar to what iOS has, with the exception of having widgets.
Recovery – ability to recover from actions, and errors quickly and with ease.
iOS devices have a physical ‘home’ button which also allows multitasking when double-tapped. This helps with recovery by allowing aborting apps quickly and switching between apps quickly.
The Android UI has ‘back’, ‘home’, and ‘multitask’ buttons either integrated as an on-screen button or as a physical button on the phone. This helps with recovery from actions in a familiar way to android users. The default picture editing app also allows for undoing and redoing in case of mistakes. Edited photos are also saved in another folder separately instead overwriting the original file to allow for easy recovery. Moreover, due to the open source nature of Android, bootloaders such as ClockworkMod Recovery are developed which allows easy backup and recovery of the ROM.
Flexibility – allow multiple ways of doing things which accommodates users with different levels of experience and preferences.
iOS is quite inflexible because it does not have much room for customization unless jailbroken.
Android is extremely flexible due to the customization it provides and the open source nature of the OS. It accommodates both the power user and the average user. Open source also means that very advanced users can even modify the OS to their liking to be used.
Aesthetically Pleasing – visually pleasant, appealing, and friendly.
By my personal opinion, iOS is very visually appealing and a pleasant experience to use, with smooth animations and a beautiful design.
By my personal opinion, Android is aesthetically pleasing only after version 4.0 with improved UI design, smoother and faster animations. Prior to that, I felt Android 2.X has a comparably less-pleasant look, and choppy animations.

All in all, I would conclude that there is probably no clear winner between the two mobile OSes in terms in the HCI context (applying the HCI principles). However, it can be noted that while both platforms generally design their UIs well to provide a pleasant and smooth experience for the users, Android has higher flexibility (accommodating the more tech-savvy people with the ease of customization and open source nature of their OS), whereas iOS focuses more on a holistic, intuitive, and familiar experience across all their products (iPhone, iPad, Apple TV, Mac OSX). Competition is between different mobile platforms is always good, because it will push companies to further improve their products and striving to provide a better user experience. Thus, I look forward to the endless pleasant surprises from these two tech giants will showcase in the future with regards to iOS and Android.

Sources - CS3240 Lecture 2 notes by Prof Bimlesh.
Author's Note (XC): Comparisons between the 2 mobile OSes are a result of my own personal opinions, experiences, and knowledge with the both platforms.

No comments:

Post a Comment