Checklist: Application design

The checklist provides some guidelines that you can follow when you create an application with national language support.

Complies Not applicable Rule
The existence of a specific character set within a system or its components must not be assumed.
Converting character case must be definable for each language and code page.
Folding must be definable for each language and code page.

Folding is the process in which characters that can be printed or displayed are substituted for those that cannot be printed or displayed on a particular device.

The use of a graphic character for software control purposes must not preclude the use of the same character in the text of messages, menus, prompts, input fields, or output fields.
The set of characters allowed for use in the entry of data must be definable by the system operator, a user, or an application.
Graphic symbols and icons must be translatable.
All characters on the active code page must be accessible.
Language-dependent parts of a product must be isolated from non-language-dependent parts for easy modification.
The design of a product must allow for the national language support of the various components of the product to be independent of each other.
National language exits must be provided at strategic points.
Diagnostics must be enabled.
Logical layouts different from a given physical keyboard layout must be available to the user.
All user interface text and presentation control information must be isolated from the running code.
Functions dependent on display field length and display field position, or display field position alone, must not be designed in such a way that they are affected by user-interface text expansion.
A method must be provided to allow for the identification and tracking of panels and messages during the translation process.
Variables must be permitted to assume any location and order within a display field.
Messages and other displayed words or phrases must be complete entities and must not be constructed from individual words or phrases.
Entry of end-user commands, keywords, or responses must be possible without regard to uppercase or lowercase characters.
A product with national language-dependent functions must be designed to facilitate the addition of other countries or national languages.
Lowercase alphabets should not be assumed to be invariant.
Character sets should be definable by the operator, a user, or an application.
Special characters, including punctuation marks, should be definable and not program dependent.
User-interface text modules should be packaged separately from the running code.