Are You Ready For A Global Audience
 

Are You Ready For A Global Audience

on

  • 1,474 views

Understanding the process and importance of internationalization

Understanding the process and importance of internationalization

Statistics

Views

Total Views
1,474
Views on SlideShare
1,466
Embed Views
8

Actions

Likes
3
Downloads
23
Comments
0

1 Embed 8

http://www.slideshare.net 8

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Are You Ready For A Global Audience Are You Ready For A Global Audience Presentation Transcript

  • Are You Ready For A Global Audience? Understanding the process and importance of internationalization Presented by Jeff Knorr Moderated by Kevin Perry October 22, 2008
  • What Is Internationalization? Internationalization + Localization = Globalization Globalization (G11n): The total effort required to prepare your product for the rest of the world. Internationalization and localization are essential to any successful software globalization plan. Internationalization (I18n): Designing, building, and/or re-engineering products so they can be easily adapted into target languages and regions without requiring subsequent engineering changes to the core application. Localization (L10n): Adaptation of a product to a particular language & culture. Translation & content adaptation required to meet cultural needs. Internationalization? You keep using that word. I do not think it means what you think it means. * * The Princess Bride, 20th Century Fox, 1987
  • Software Globalization (Breaking It Down) L10N G11N G11N I18N
  • Should I Consider Internationalization? You should if any of these statements apply to you… “I have never gone h “I have a product with language- global with my product specific functionality that needs to before.” be modified for new markets.” “I want to address l10n support/efficiency issues “I want to support experienced in past efforts.” locales beyond Western Europe.” “I do not have enough I resources internally to “I am developing new internationalize my product and want to do it product.” p right the 1st time!” time!
  • Why Internationalize? Internationalization Helps Your Bottom Line Improving the end-user’s experience will sell products. Allows simultaneous release of your product in all targeted markets. No software development needed for localized versions Saves time and money in localization In some cases localization is not technically possible w/out i18n Allows streamlining of localization; minimizing manual tasks Maintenance pertains to all language versions instantly p g g y Move to additional markets is relatively easy
  • Internationalization Return on Investment (ROI) Overall Costs of Classic Development vs. Internationalized Development • Low-level Software Development/ Bug-fixing • New Locale Feature Development • UI Re- engineering • Localization Effort • Testing Cycles Classic Development Internationalized Development
  • Goals of Internationalization Increase return on investment Improve time-to-market p Reduce internal costs Create higher quality products customized to global end-users Become self-sufficient in developing internationalized products from the start Successfully & efficiently localize into g y y global markets without external internationalization support
  • Pitfalls of Not Internationalizing Poor quality localized product Potentially impossible to support more complex languages y p pp p g g (Asian & Bi-directional) Increased costs and duration for L10n effort Increased involvement of product developers in L10n efforts Simultaneous release in multiple languages not likely Product maintenance challenges g
  • Internationalization Assessing support for international markets - Base functionality y features in product that are locale-specific? features to be externalized or packaged? - Currency date/time formats address formats graphics colors numeric Currency, formats, formats, graphics, colors, formats must be internationalized or customizable many programming or d t b i database platforms have global f t l tf h l b l features England: 12,345.67 Germany: 12.345,67 Switzerland: 12’345,67 Swiss money: 12 345.67 12’345.67 France: 12 345,67
  • Types of Internationalization Support Issues String Externalization (resourcing infrastructure) Font Support GUI Modifications Character handling g (Far East characters, Arabic) - Multiple-Byte Support - Bi-Directional Support - Unicode Migration Locale/Language-specific features - Input methods - Sorting - Searching - B i Business rules l
  • Types of Internationalization Support Issues Database modifications to support & store international data Data Presentation / User interface Translation Process Support (Localization Readiness) Custom Development to support international data handling, storage, & retrieval
  • Visualizing the Software Globalization Process Translation “Classic”Gl b li d! “Cl I18 t”Globalized! Product Process ( P I18n PProcess (no d i P L10n L10 I18n P I18 Process Hello ll こんにちは Once the core application is i18n) Internationalize ONCE Resource files (UI strings) are With Internationalized internationalized, all locale- L10n translated, UI is (i.e. i18n ofimages Development “resized”, an The typical development scenario Localize MANY specific functionality is isolated to Engineering isare re-designed, and localized alreadywhere an English version onespecific resources thatthe locale developed product), can product is developedare tested.or software versions with little core product is generalized so be modified without affecting theg nocore functional for OS-levelUI consideration code. level that it can utilize OS international The international capabilities, and design &locale-sensitivean support. After code strings and allow for the easy adaptation of elements are handedreleased, English version is off to L10n locale-specific areas of re- the inseparate versions are files. the form of resource Localization developed for strings, graphics, software (i.e. each language and and locale-specific functions). market by local distributors or y sales offices. Hello Oi Hello Bonjour こんにちは Oi Bonjou 日本 Internationalizatio r語 n Core Product Original Product
  • Standard I18n Process Engage developers in i18n process If no internal i18n expertise, expertise consider partnering with experts Ensure knowledge gained during process is leveraged to forward development & p testing efforts
  • I18n Process - Phase 1 Phase 1: I18n Audit - High level code & architecture analysis; Product-needs assessment - Locate all I18n issues with product, where they exist, & determine best approach for resolving them - Define all i18n tasks/effort required to Enable product (code mods) - Devise Implementation plan - Start scoping L10n effort - Assess ROI
  • I18n Process - Phase 2 Phase 2: I18n Implementation - Address all issues identified during Phase 1 - Establish comprehensive set of i18n requirements - Proto-type i18n solutions before making global changes - R Re-engineer product code f ease i d t d for of L10n and global support - Train development staff on i18n strategy, best-practices, and techniques - Document all code mods; leverage to new product development - Generate L10n Kit
  • I18n Process - Phase 3 Phase 3: I18n Testing - Ensure intl functionality (incl. L10n features) conform to internal & industry specs y p - Develop international test approach - Generate i18n test plans & test cases (leveraging from current QA strategy) - Pseudo-localize test data - Execute tests of international issues/functionality - Resolve any/all i18n defects identified
  • Variations on Internationalization Enablement I18n is not an All-or-Nothing proposition! Multiple ways to p p y phase into i18n - Implement according to language/locale priority - Implement priority components/modules first (front-end) others later (backend/admin) - Implement according to functional priority (i.e. intl data handling, l10n-readiness, etc.) Strategy contingent on current state of product - Stage of development (design, beta, release, etc.) - Product lifespan (legacy, migration plans, etc.) - In-country demands & requirements
  • Why Some Globalization Efforts Fail Internationalization issues are not considered part of the initial development cycle & specification -- it’s an “afterthought” International requirements do not take local user-requirements into account Development team is not familiar with international development issues, or how to deal with them QA team is not familiar with international testing issues, and products aren’t tested on localized platforms & devices Time required for the internationalization & localization process are under- estimated Allowing non-qualified in-country distributors to internationalize, localize, and/or sell the product
  • I18n Implementation Scenarios Team up with I18n Partner to ready products for i18n Partnership along side internal development and QA teams from analysis through anal sis thro gh testing Hire outside i18n experts to fully implement product Outsource i18n with knowledge transfer on backend; internal staff g focuses on new product development Engage i18n experts to conduct i18n analysis & offer Due Diligence as-needed consulting/training; all implementation & d d lti /t i i ll i l t ti testing executed internally
  • Case Examples- Partnership Scenario Conducted Phase 1 (product audits) on all products Partnership Market demand & ROI analysis showed no need for L10n I18n plan to support international data handling only (no L10n-readiness required) Trained majority of development & QA on i18n best practices Participated in Phase 2 (implementation) and Phase 3 (testing) while freezing new product development
  • Case Example- Outsource Scenario Conducted Phase 1 (product audit) Outsource Fully outsourced Phase 2 (code implementation) in parallel with for ard de elopment ith forward development Received handoff & documentation to support i18n- related product maintenance Merged i18n modifications to new code branch & g internationalized diff internally
  • Case Example- Due Diligence Scenario I18n expert conducted Phase 1 (product audit) and Due Diligence devised implementation strategy All implementation & testing (phases 1 & 2) i l t ti t ti ( h executed entirely using internal resources
  • Support Concurrent Product Development & I18n Train development team & finalize requirements (minimize new i18n defects) No requirement to freeze code Branch code & schedule merge/code review milestones Share source mgmt system with i18n implementation team g y p Agile, RAD & other iterative development methodologies support i18n well
  • In Summary Internationalization is a precursor to Localization that generalizes a product so it can handle multiple languages & cultural conventions w/o need for re-design Internationalization addresses several support issues Internationalization lowers cost, increases efficiency, & improves quality of Localization Internationalization costs are a fraction of initial English-only product development Every internationalization plan can be customized to meet specific market, industry, and company requirements