As you start designing applications for BlackBerry® devices, think about how you can create rich, compelling, and personal experiences for your users. Most users want applications to be intuitive and satisfying to use. Consider additional attributes that are important to the majority of your users. For example, most game enthusiasts want to play entertaining, visually appealing, and challenging games. Contrast these attributes with utility applications that need to focus on productivity and efficiency.
The design process involves evaluating choices and making decisions. As designers, you shape the user experience by balancing user goals with the data, environment, and usability requirements of the application. The best way to find out if the application successfully integrates the most important attributes and requirements is to evaluate it with users.
This section provides guidelines on how to approach application design, with specific considerations for BlackBerry devices. It does not tell you how to build an application but it can help you move in the right direction. For information about developing the UI for BlackBerry device applications, see the BlackBerry Java Application UI and Navigation Development Guide.
Consider the following guidelines:
- Before you design your application, become familiar with other BlackBerry® applications. You can use the applications on a BlackBerry device or the BlackBerry Smartphone Simulator. Note the behaviors that users expect in BlackBerry applications. For example, if a phone number appears in a text field, users expect to be able to call the number by clicking it.
- Use BlackBerry UI components where possible so that your application can inherit the default behavior of the component. Users are familiar with default behaviors and do not have to learn new behaviors for the components that you implement in your application. Using BlackBerry UI components also makes the layout more extensible on BlackBerry devices with different screen sizes. For more information, see the "Components" section.
- Follow the standard interaction behaviors as closely as possible so that a particular user action produces a consistent result across applications. For example, allow users to see the next or previous image by swiping across the screen. For more information, see the "Interaction" section.
- Provide an intuitive UI. An intuitive UI responds to the expectations of your users. Users form their expectations based on their experience using BlackBerry device applications and general software UI conventions. For example, when users press the Space key twice, they expect the BlackBerry device to insert a period and capitalize the next letter.
- Design a UI that allows users to explore the application without fear. Allow users to change their minds and undo commands. Be forgiving. Users sometimes click the wrong menu item or button accidentally. For example, use an alert dialog box to notify users of a critical action such as deleting data from their BlackBerry devices.
- Create a seamless experience for users by anticipating tasks that users might need to do next. Provide efficient ways for users to access other features. For example, allow users to compose Facebook® and Twitter® messages (in addition to email messages, PIN messages, and text messages) from the Messages menu.
- Take advantage of known variables such as the location of the BlackBerry device. For example, when the device enters a certain geographical area, you might be able to push an application or location-specific information to the device.
- Early in the design process, consider whether your application requires localization. If your application does not require localization now, consider designing your application so that it would be easy to localize it in the future. BlackBerry devices are sold all over the world and BlackBerry device applications are translated into over 30 languages, including languages that are not based on a Latin alphabet. Some BlackBerry devices also feature a localized keyboard. For more information, see the "Localization" section.