Globalization Of The Testing Process Rostislav Shabalin Microsoft Corporation World-Ready software from the QA’s Perspective.

Slides:



Advertisements
Similar presentations
Requirements for a UI Test Framework Stanislaw Wozniak Bernie Miles.
Advertisements

The creation of "Yaolan.com" A Site for Pre-natal and Parenting Education in Chinese by James Caldwell DAE Interactive Marketing a Web Connection Company.
Chris Pratley Lead Program Manager Microsoft Office.
SolidWorks Enterprise PDM Data Loading Strategies
Automating Software Module Testing for FAA Certification Usha Santhanam The Boeing Company.
High level QA strategy for SQL Server enforcer
The Evolution of Localizability Testing & Pseudo Localization Models Bj Rollison, Test Training Manager Microsoft, Inc.
HP Quality Center Overview.
Prashant Lambat Sr. Manager SQA Engineering Symantec Corporation, Pune Date: 29 th January 2011.
Automation Testing Presentation Phil Hunter Phil Hunter - Automation Presentation 1.
05 | Define End Value for the Software Iteration Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM.
Multilingual support; interface languages Course material prepared by Greenstone Digital Library Project University of Waikato, New Zealand andNational.
1 Software Testing and Quality Assurance Lecture 14 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Problem with Software Requirements are complex The client does not know the functional requirements in advance Requirements may be changing Technology.
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
Introduction to Software Testing
Copyright 2009 (c) Microsoft Corporation.
Windows XP Language Interface Packs (LIPs) - Localized OSs for the Masses Russ Rolfe Program Manager.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
26 April 2001 Unicode and Windows XP, IUC 18 (Hong Kong) Unicode and Windows XP Cathy Wissink Program Manager, Globalization Windows Division Microsoft.
October 15, 2004 – 1 Welcome IPMA and SolutionsIQ Professional Event Testing, Testing, 1…2…3… Improving software quality -- one bug at a time.
Students: Nadia Goshmir, Yulia Koretsky Supervisor: Shai Rozenrauch Industrial Project Advanced Tool for Automatic Testing Final Presentation.
Estimation Wrap-up CSE 403, Spring 2008, Alverson Spolsky.
Lesson 4 Computer Software
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
Internationalization (I18N) Sufficiency Testing Presented to Seattle Area Software Quality Assurance Group June 19, 2003.
Globalization Testing- Getting your software World-ready Anuj Magazine (Manager, Products) Citrix R&D India Pvt. Ltd.
SOFTWARE INTERNATIONALIZATION Dallas Ramsden. Internationalization GOAL Software that can run ANYWHERE in the world without having the source code changed.
Company Confidential 1 This presentation is solely for the use of Patni personnel. No part of it may be circulated, quoted, or reproduced for distribution.
Bing Hong OSIsoft Internationalization &
Enter into new markets more easily Lower cost and time for development and translation Increase customer satisfaction and adoption Avoid costly mistakes.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
16 October Reminder Types of Testing: Purpose  Functional testing  Usability testing  Conformance testing  Performance testing  Acceptance.
Robert Crawford, MBA West Middle School.  Explain how the binary system is used by computers.  Describe how software is written and translated  Summarize.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
Using the Right Method to Collect Information IW233 Amanda Murphy.
Construction, Testing, Documentation, and Installation Chapters 15 and 16 Info 361: Systems Analysis and Design.
Group 2 : Team Battleship Team Members: Zhen Cai Christopher Campbell Justin Doll Jason Miller Nicholas Rimer Raeginald Timones.
Copenhagen, 6 June 2006 EC CHM Multilinguality Anton Cupcea Finsiel Romania.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
ICP Tool Pack ICP Regional Coordinators’ Meeting Washington, DC May 19, 2004 Vilas Mandlekar The World Bank.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Module 7: SQL Server Special Considerations. Overview SQL Server High Availability Unicode.
Next generation localization testing Taras Tovstyak, ELEKS.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
ARC303 Planning a Global Release: Many Countries, Many Languages, One Process Houman PournassehRuss Rolfe Program ManagerProgram Manager Global Platform.
Waste Management Inspection Tracking System (WMITS)
Software Design and Architecture
 Is it a struggle to keep on top of program or donor information?  Are you wasting postage and effort mailing to your entire list rather than tailoring.
T Iteration Demo LicenseChecker I2 Iteration
Setting up localization collaboration for successful globalization. Sanghwan Lee.
This has been created by QA InfoTech. Choose QA InfoTech as your Automated testing partner. Visit for more information.
Tool Support for Testing
Pradeep Janakiraman Vice President / Head Offshore Services Delivery
WEBINAR: Becoming Agile In Software Testing: The Government Edition
Software Quality Engineering
Introduction to Software Testing
Design and Programming
Multilingual Application Testing
Branching and Merging Practices
MULTILINGUAL USER INTERFACE
Open Source Tool Based Automation solution with Continuous Integration and end to end BDD Implementation Arun Krishnan - Automation Manager Maria Afzal-
Zach Wahl and Tatiana Baquero Project Performance Corporation (PPC)
McGraw-Hill Technology Education
Software Testing Lifecycle Practice
that focus first on areas of risk.
Improving Your Testing
Presentation transcript:

Globalization Of The Testing Process Rostislav Shabalin Microsoft Corporation World-Ready software from the QA’s Perspective

Vision Statement World-Ready process builds World-Ready applications

Goal And Objective Product seen as local in every market Best functionality for any language or country Ship worldwide Minimal allocation of resources On schedule QA that guarantees world-readiness

Today’s Situation Single-binary product Globalized services of the OS World-ready applications of the OS Simultaneous release of localized versions No-compile localization MUI language skins LIP

What Brought Us Here? Not the programmers! Programmers too, of course QA made world-ready Organizational effort Technical approach to the problem Changing human minds World-ready QA works only with world- ready development

Shipping Global Products

Organizational Effort No single-country functional requirements No language-specific Development Testing Country-specific planning is a part of global process Results in global specifications

Changing People’s Minds Things that people value Source of income: pay check’s foreign part Appreciation: managers remember Internationalization is hard Professional challenge It helps when the problem is technical – that is, in the field known to your team

Formalizing The Task Being culture-authentic does not sound technical How does a guy from Washington know what people want in Beijing? Globalized functionality is achieved through technical tasks Verification of globalization is a technical, not a linguistic, task

New Test Breakdown Globalized Test of core features Verification of Localizability Test of Localization

Development Timeline Globalization

Globalization Of The Test - Goals Globalization - property of the functionality, not an application’s feature Functions must be tested for globalization Globalized test covers Multilingual text handling Processing of multiple scripts Proper handling of encodings Locale awareness Following the locale or user’s settings

Place Of The NLS Functionality NLS (language/locale) support becomes a core feature First to be tested NLS support - prerequisite for testing any application The only area where language or locale- specific functionality exists

Globalization Of The Test Step By Step Prepare test – globalize functional test cases Prioritize Select the platform Create the environment Run Select test data Classify problems Track defects properly

Prioritization Applications from the High-risk group Running on multiple platforms Interacting with legacy code Converting encoding of text Natural QA choice List Known Globalization offenders Anything that handles locale-related data Text parsers and processors, database applications, etc

Platform Of Choice Convenient choice: English Windows XP System, User, Input locales – change as needed Localized OS – use to interact with Localized names of built-in elements OS Environment of your market MUI version of Windows If the code has to adjust to the UI settings of the operating system

Test Environment – Bumpy Road East Asian System locale Non-Unicode data path assumes single-byte text European System locales OEM vs. Windows “ANSI” User Locales with “tricky” rules Special sorting rules: Spanish locales, placement of “ch” “Hand made numbers” under “exotic” locales: –if(CSng(sAppV1&“.”&“sAppV1)>= 5.5)

Globalize The Test Data Match the environment “Hard to process” data “DBCS” data in search for DBCS failures “Risky” SBCS (Windows vs. OEM) 3-byte UTF-8 in search for buffer overruns Match the task Application-specific “risky” characters “Dotless I” for case conversion and sorting

Running Tests Classification of problems Easy to categorize well-defined symptoms Loss of functionality Data loss Display problems –Fonts –Encodings Hard-coded locale Single defect database

Some Types Of Test To Globalize Specification-based Risk-based Model-based Code coverage Performance Hardware and Application Compatibility Usability Functionality-based

Demo Example of a globalized test

Post-ship Strategy Global Product Support Service Works with global defect database Single-Binary Service Pack World-Wide feedback collection

Development Timeline Localizability

Localizability Testing Tools Code review Pseudo-localized build Pilot localization Place After the code is complete; before translation

Pseudo-localized Build Pseudo-localization - stress the build Covers it all – whatever localizers can do Stresses the testers Breaks the test tools Pilot localization It’s a real thing Takes time to start Does not cover all aspects of translation May cover your best market though

Demo Verify the localizability of the tested application

Test Tools In The World-Ready Test Globalization of tools Pros Globalization benefits from formalization: automation is highly formalized Easy to repeat; eases the task of understanding Helps vendors to test localization Cons No universal tool so far Makes test tools more complex then the tested application If it’s too hard, it’s not needed

Development Timeline Localization

QA And Localization Less advanced then once Functionality is tested already Localizability is unlikely a problem Need not to be done on campus New QA task: manage the risks of outsourcing

Available Options Option 1: development team per language Seems to be “natural” The goal of World-readiness is not intuitive Known to be bad “Us vs. Them” mentality Release deltas Split and wicked codebase Mess with technical support and maintenance Option 2: single-country market

Recommendation Make sure the world-readiness is the goal of development process Make the globalization a technical problem Break the language/country tie in development

Resources GlobalDev, portal to internationalization Developing International Software Chapter on MUI and MUI aware applications us: Dr. International