Tuesday, 2 November 2010

iPhone - To keep in mind

There are some advices from the "iPhone Human Interface Guidelines" (see Apple 2010) I have to keep in mind. It necessary to follow theses advices to create a excellent application and to have the change to be part of the App Store.

List of advices: 

  • Mobile: The iPhone is a mobile device. 
  • Is not a PC: An iPhone application is not the same as a desktop application. Although these seem merely common-sense statements, it is nonetheless paramount to keep them in mind as to embark on developing software for these devices.
  • Screen size is compact: Use the compact screen size as a motivation to focus the user interface on the essentials. There is not the room to include design elements that aren’t absolutely necessary, and crowding user interface elements make applications unattractive and difficult to use.
  • Minimal user help: Mobile users don’t have the time to read through a lot of help content before they can use an application.
  • Memory is limited: Memory is a critical resource in the iPhone, so managing memory in an application is crucial. Take care to avoid allocating more memory than is available on the device. 
  • Not Multitasking: Only one application is visible in the foreground at a time. When people switch from one application to another, the previous application quits and its user interface goes away. When people restart a suspended application, it can instantly resume running from the point where it quit, without having to reload its user interface.
  • Think about the User: 
    • What is user’s motivation for using the application?
    • What is the user’s experience while using the application?
    • What is the goal or focus of the application?
    • How does the application organize and display the information people care about? Is there a natural organization associated with the main task of the application?
  • Metaphors: When possible, model your application’s objects and actions on objects and actions in the real world. This technique especially helps novice users quickly grasp how your application works.
  • Direct Manipulation: Direct manipulation means that people feel they are controlling something tangible, not abstract. The benefit of following the principle of direct manipulation is that users more readily understand the results of their actions when they can directly manipulate the objects involved.
  • Feedback: In addition to seeing the results of their actions, users need immediate feedback when they operate controls and status reports during lengthy operations. Your application should respond to every user action with some visible change. For example, make sure list items highlight briefly when users tap them.
  • User Control: Allow users, not your application, to initiate and control actions. Keep actions simple and straightforward so users can easily understand and remember them. Whenever possible, use standard controls and behaviors that users are already familiar with.
  • Think Top Down: People can tap the screen of an iOS-based device with their fingers or their thumbs. When they use a finger, people tend to hold the device in their nondominant hand (or lay it on a surface) and tap with a finger of the dominant hand. When they use thumbs, people either hold the device in one hand and tap with that thumb, or hold the device between their hands and tap with both thumbs. Whichever method people use, the top of the screen is most visible to them. Because of these usage patterns, you should design your application’s user interface so that the most frequently used (usually higher level) information is near the top, where it is most visible and accessible. As the user scans the screen from top to bottom, the information displayed should progress from general to specific and from high level to low level.
  • Gestures: Users perform specific movements, called gestures, to get particular results. For example, users tap a button to select it and flick or drag to scroll a long list. iOS users understand these gestures because the built-in applications use them consistently. To benefit from users’ familiarity, therefore, and to avoid confusing them, you should use these gestures appropriately in your application. The more complex gestures, such as swipe or pinch open, are also used consistently in the built-in applications, but they are less common. In general these gestures are used as shortcuts to expedite a task, not as the only way to perform a task. When viewing a list of messages in Mail, for example, users delete a message by revealing and then tapping the Delete button in the preview row for the message. Users can reveal the Delete button in two different ways:
    • Tap the Edit button in the navigation bar, which reveals a delete control in each preview row. Then, tap the delete control in a specific preview row to reveal the Delete button for that message.
    • Make the swipe gesture across a specific preview row to reveal the Delete button for that message.

(see Apple 2010, p.6-42)
Apple, 2010. iPhone Human Interface Guidelines. Apple (online). Available at: http://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/MobileHIG.pdf [Accessed 2 November 2010].

No comments:

Post a Comment