Quality

Quality software is software that is reasonably bug-free, delivered on time and within budget, meets requirements and expectations and is maintainable. However, quality is a subjective term. Quality depends on who the customer is and their overall influence in the scheme of things. Customers of a software development project include end-users, customer acceptance test engineers, testers, customer contract officers, customer management, the development organization's management, test engineers, testers, salespeople, software engineers, stockholders and accountants. Each type of customer will have his or her own slant on quality. The accounting department might define quality in terms of profits, while an end-user might define quality as user friendly and bug free

An Inspection

An inspection is a formal meeting, more formalized than a walk-through and typically consists of 3-10 people including a moderator, reader (the author of whatever is being reviewed) and a recorder (to make notes in the document). The subject of the inspection is typically a document, such as a requirements document or a test plan. The purpose of an inspection is to find problems and see what is missing, not to fix anything. The result of the meeting should be documented in a written report. Attendees should prepare for this type of meeting by reading through the document, before the meeting starts; most problems are found during this preparation. Preparation for inspections is difficult, but is one of the most cost-effective methods of ensuring quality, since bug prevention is more cost effective than bug detection.

Testing for Localizable Strings (Separate String from Code)

Localizable strings are strings that are no longer hard coded and compiled directly into the programs executable files. To do so for tester is to create a pseudo build automatically or manually. A pseudo language build means is that the native language string files are run through a parser that changes them in some way so they can easily be identified by testing department. Next a build is created using these strings so they show up in the user interface instead of the English strings. This helps find strings that haven't been put into separate string files. Problems with displaying foreign text, and problems with string expansion where foreign strings will be truncated

Two environments to test for the program in Chinese

1. In Chinese window system. (In China)
2. In English Window system with Chinese language support (in USA)

On-line help
  • Accuracy
  • Good reading
  • Help is a combination of writing and programming
  • Test hypertext links
  • Test the index
  • Watch the style
Some specific testing recommendations
  • Make your own list of localization requirements
  • Automated testing
The documentation tester's objectives
  • Checking the technical accuracy of every word
  • Lookout for confusions in the writing
  • Lookout for missing features
  • Give suggestions without justifying

Considering Localization Testing

Testing resource files [separate strings from the code] Solution: create a pseudo build
String expansion: String size change breaking layout and alignment. When words or sentences are translated into other languages, most of the time the resulting string will be either longer or shorter than the native language version of the string. Two solutions to this problem:
a. Account the space needed for string expansion, adjusting the layout of your dialog accordingly
b. Separate your dialog resources into separate dynamic libraries.
Data format localization: European style: DD/MM/YY North American style: MM/DD/YY Currency, time and number format, address
Character sets: ASCII or Non ASCII Single byte character 16bit (US) 256 characters Double byte character 32bit (Chinese) 65535 code points
Encoding: Unicode: Unicode supports many different written languages in the world all in a single character encoding. Note: For double character set, it is better to convert from Unicode to UTF8 for Chinese, because UTF8 is a variable length encoding of Unicode that can be easily sent through the network via single byte streams
Builds and installer: Creating an environment that supports a single version of your code, and multiple version of the language files
Program’s installation, un-installation in the foreign machines
Testing with foreign characters: EXP: enter foreign text for user name and password. For entering European or Latin characters on Windows
a. Using Character Map tool
Search: star-program-accessories-accessibility-system tool-
b. Escape sequences. EXP: ALT + 128
For Asia languages use what is usually called an IME (input method editor)
Chinese: I use GB encoding with pin yin inputted mode
Foreign Keyboards or On-Screen keyboard
Text filters: Program that is used to collect and manipulate data usually provides the user with a mechanism for searching and filtering that data. As a global software tester, you need to make sure that the filtering and searching capabilities of your program work correctly with foreign text. Problem; ignore the accent marks used in foreign text
Loading, saving, importing, and exporting high and low ASCII
Asian text in program: how double character set work
Watch the style
Two environments to test for the program in Chinese
a. In Chinese window system (in China)
b. In English Window system with Chinese language support (in USA)
Microsoft language codes:
CHS - Chinese Simplified
CHT - Chinese Traditional(Taiwan)
ENU - English (United States)
FRA - French (France)
Java Languages codes
zh_CN - Chinese Simplified
zh_TW - Chinese Traditional(Taiwan)
Fr or fr_FR - French (France)
en or en_US - English (United States)
More need consider in localization testing:
* Hot key.
* Garbled in translation
* Error message identifiers
* Hyphenation rules
* Spelling rules
* Sorting rules
* Uppercase and lowercase conversion

Localization Aspects

Terminology
Terminology The selection and definition as well as the correct and consistent usage of terms are preconditions for successful localization:

  • Laymen and expert users
  • In most cases innovative domains and topics
  • Huge projects with many persons involved
  • Consistent terminology throughout all products
  • No synonyms allowed
  • Predefined terminology (environment, laws, specifications, guidelines, corporate language)

Symbols

  • Symbols are culture-dependant, but often they cannot be modified by the localizer
  • Symbols are often adopted from other (common) spheres of life
  • Symbols often use allusions (concrete for abstract); in some cases, homonyms or even homophones are used

Illustrations and Graphics

  • Illustrations and graphics are very often culture dependant, not only in content but also in the way they are presented
  • Illustrations and graphics should be adapted to the (technical) needs of the target market (screen shots, manuals)
  • Illustrations and graphics often contain textual elements that must be localized, but cannot be isolated

Colors have different meanings in different cultures
Character sets

  • Languages are based on different character sets ("alphabets")
  • The localized product must be able to handle(display, process, sort etc) the needed character set
  • "US English" character sets (1 byte, 7 bit or 8 bit)
  • Product development for internationalization should be based on UNICODE (2 byte or 4 byte)

Fonts and typography

  • Font types and font families are used in different cultures with varying frequency and for different text types and parts of text
  • Example: In English manuals fonts with serifs (Times Roman) are preferred; In German manuals fonts without serifs (Helvetica) are preferred
  • Example: English uses capitalization more frequently (e.g. CAUTION) for headers and parts of text

Language and style

  • In addition to the language specific features of grammar, syntax and style, there are cultural conventions that must be taken into account for localization
  • In (US English) an informal style is preferred, the reader is addressed directly, "simple" verbs are used, repetition of parts of text is accepted etc
  • Formulating headers (L10N)
  • Long compound words (L10N)
  • Elements of the user interface(open the File menu -The Open dialog box appears -Click the copy command etc)

Formats

  • Date, currency, units of measurement
  • Paper format
  • Different length of text

a. Consequences for the volume of documents, number of pages, page number (table of contents, index) etc.
b. Also for the size of buttons (IT, machines etc.)

Globalization (G11N)

  • Activities performed for the purpose of marketing a (software) product in regional marketing a (software) product in regional markets
  • Goal: Global marketing that accounts for economic and legal factors
  • Focus on marketing; total enterprise solutions and to management support

I18N and L10N

These two abbreviations mean internationalization and localization respectively. Using the word "internationalization" as an example; here is how these abbreviations are derived. First, you take the first letter of the word you want to abbreviate; in this case the letter "I". Next, you take the last letter in the word; in this case the letter "N". These become the first and last letters in the abbreviation. Finally, you count the remaining letters in the word between the first and last letter. In this case, "nternationalizatio" has 18 characters in it. se we will plug the number 18 between the "I" and "N"; thus I18N
I18N and L10N

  • I18N and L10N comprise the whole of the effort involved in enabling a product
  • I18N is "Stuff" you have to do once
  • L10N is "stuff you have to do over and over again
  • The more stuff you push into I18N out of L10N, the less complicated and expensive the process becomes

Recently Added

May i help you ? What are you searching for ?

Tags

Twitter updates for Software Testing