Top Banner
Software Internationalization By: Howie Ludewig
32

Software Internationalization

Jan 21, 2016

Download

Documents

lihua

Software Internationalization. By: Howie Ludewig. Contents. Introduction Terms and Definition Economics of I18n I18n Process New Software Developed Domestic Software Quality Assurance I18n Companies and Tools Conclusion. Introduction. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

Internationalization

Software Internationalization By: Howie LudewigPreviously titled Globalization through software internationalization while Maintaining localization 1ContentsIntroductionTerms and DefinitionEconomics of I18nI18n ProcessNew SoftwareDeveloped Domestic SoftwareQuality AssuranceI18n Companies and ToolsConclusion

IntroductionIn economics, Internationalization has been viewed as a process of increasing involvement in international markets. In software this is accomplished by adapting computer software to different languages and regional differences.

Terms and DefinitionInternationalization is often abbreviated as I18N because of the 18 letters between the start and end. It often used to describe the extension of software to include different things needed for each region you plan on selling your product to.Localization or L10N is taking the larger software and focusing on the region version to make sure it maintains a domestic feel for the end user.Globalization or G11N is the combination of the twoEconomics of I18n

Economics of I18N cont.IT has dropped 6.9% or 6 trillion dollars since 2008Largest decrease seen in IT everExpected to increase by the end of 2010 by 3.3%Full recovery by 2012Most of the increase in spending will be into software.Hardware will not be in the IT drivers seat anymore, Peter Sondergaard, Senior Vice President of Research Content for Gartner.Economics of I18n cont.ConsiderationsWho is my target market?Small internal softwarePrecise software without many other usesBroad software Ease of adaptabilityDeadline to release softwareCompetition from other softwareCertification for other regionsI18n ProcessNo set lifecycle, instead combined with most software lifecyclesLifecycles that dont combine well with software I18NRADAgile I18N can be best viewed as a large high-risk featureTwo different views to creating I18n softwareCreating new softwareAdding to existing softwareNew SoftwareInternationalizationDesignImplementation TestingLocalizationDesignImplementationTestingI18n - DesignI18n requirementsSeparate section from other requirementsRequirements should still be clear, precise, testable and maintain other traits of regular requirementsRequirements for each supported cultureRequirements for each feature determining how this will be accomplishedIdeally having a person with in-depth knowledge of each culture partaking in creation of requirements.Write requirements for reusability when possible

I18n - DesignCover how code will be separated from dataResource filesSeparate programs with data hardcodedCombinationCover risk for each feature/cultureSome might require only one or two requirements while other require whole sectionsUnderstand all cultures requirements and adhere to them

I18n - ImplementationAll code must be written to meet both software requirements and I18N requirements.Features must maintain a way of separating code from data.Special consideration to what data is being entered and outputted Magic numbers can cause wrong conversionsGraphical User Interfaces(GUI) will sometimes follow different rules then other features.I18n Implementation - GUIMost of users time is spent on GUI, so creating different versions can make multilingual user interface(MUI) feel more localized.Having many MUIs can cause for large increases in testing, so some might be combined if culture differences are smaller.Features can know what numbers to use for conversions from the given MUI labelsTradeoff between L10N and reusabilityI18n - TestingSeparate testingDoes the feature do what it shouldDoes the feature do what it should for the given cultureMake sure it works right before you worry about each cultureIf possible have someone with knowledge on the culture on the testing team While the result might be considered correct it may be worded awkwardly or difficult to understand for the given cultureL18N - ConsiderationsL18N should be done alongside I18N when possibleMaintain level of risk determined ahead of timeIdeally create teams for each culture containing: specialists in the culture a developer involved in the I18N process

L10n - DesignMost important stage in dealing with the risks involvedL10N teams are put togetherResources are gatheredAlphabets (symbols, letters, number system)Language dictionariesEtc.Like most new software being created more detailed requirements and risk analysis done in this stage the less problems will occur down the line

L10n Design cont.RequirementsSeparate section from other requirementsRequirements should still be clear, precise, testable and maintain other traits of regular requirementsCultural specifications should be documented hereRequirements for each feature and what will be needed for your regionExtra requirements should be added to particularly complex differences.

L10n - ImplementationL10N will create the data files needed for the softwareAny change to data files or updates needed should be done by the regional teamData files should be updated and returned in a timely manner so development and testing can use themHeavy involvement in the MUI is greatly important, as it is what the user sees most and will have the greatest impact on if your product is cultural accepted

L10n - TestingFocus directed towards your regionMake sure to test with the current revision of the core-libraries and featuresAny bugs in features/core-libraries found need to be redirected to development teamTesting on cultural-dependent libraries A bug will include:Wrong formatWrong UnitsAwkward appearance or feelDeveloped Domestic SoftwareTaking already developed domestic software and making I18N is a complicated process breaking it down into phases helps ease this.The level of risk to reward can change drastically because the level of risk is greater and research into the rewards needs to be doneI18N phasesPreparingImplementingTesting

Preparing Domestic SoftwareLock the source code completely during this phasePrepare files for L10NResearch terminology for the region and develop a localized GlossaryCheck and remove magic numbersIdentify what corrections will be needed in the GUI to make it compatible with your regionThese will all be combined into a L10N kit that will be referenced through out the project and acts like the requirements phase of new software

L10N KitThis kit will be used to help localize each section and should include:The Glossary that was createdSource codeReference materialsStyle guideContact information for the regionThe Review processSchedule Tracking

Implementing PhaseThis will largely consist of translating strings and changing the UIIsolate translatable strings from the software and add them to your glossary which can be used as a reference file. Allow for multiple formats, lengths, and other customizations that are neededKeep your L10N kit up to date as much as possibleCheck for the shortcut keys, tool-tips, menus, sorting, and possibly button pictures that will need to be adapted to whats most common for the region you are localizing to.Testing PhaseTesting should be kept separate from system testing.Focus on testing the localized versionsIf a test suite was kept from the domestic version this can be a great way to test that functionality was not lost.Bugs can be identified the same as before if it doesnt fit right its a bug even if the information is rightExperts in the region your testing for is a must for this phaseQuality AssuranceA quality assurance engineer has more to asses then would be needed in a domestic product. Quality needs to be defined for each regionIf your company is new to I18N market there is training and certification available for example:The International Software Testing Qualifications Board (ISTQB) Has two levels of certification: Foundation and AdvancedISTQB develops and maintains internationaly uniform curricula and examsI18N Company SisulizerVisual Software Localization ToolScans for embedded strings and numbersWorks with .NET, C/C#/C++, VB, Java, HTML, and many othersDoes simple translations without releasing source code to outsourcerScans code, translate and lets you build with new code already inserted.I18n Company - Lingo PortCreated Globalyzer SoftwareCurrent release 3.0Contains Server, Client, Command Line softwareAutomatically scans for adapting Existing Code for:Embedded StringsLocale-Limiting methodsUnique programming patternsProvides source control for finding, tracking and fixing I18N issues during developmentAlso offer evaluation, assessment, consulting, and outsourcing at additional costs.I18N Company RIC InternationalOffers focused translation for Technical subjects including: Aerospace & Defense, Chemicals, Healthcare, and energyHas Quality CertificationISO 9001:2000 compliantASTM std F 2575-o6 compliantEN 15038 compliantCan be very cost saving on highly technical projects with the benefit of having quality assurance.ConclusionAny software company wanting to remain in the completive world of software development at some point must begin to look at the global market.Expanding your software to I18N can greatly increase profits if handled correctly.Can work in with your companies already made softwareCan be added to your companies already used lifecycleQuestions?

References[1] International, Dr. (2002). Developing International Software. Redmond, WA: Microsoft Press.

[2] Kersten, Gregory E.; Mik Kersten,; Wojciech Rakowski,. "Software and culture: beyond the internationalization of the interface. (Research Note)." Journal of Global Information Management. 2002. RetrievedMarch 26, 2010fromhttp://kerstens.org/mik/publications/softwareAndCulture-jgim2002.pdf

[3] RIC International Inc. 1999-2006. Software Localization Process Outline. RetrievedMarch 26, 2010fromhttp://www.ricintl.com/software-localization-services.html

[4]Internationalization: Pertaining to C++. RetrievedMarch 26, 2010fromhttp://h30097.www3.hp.com/cplus/intzln.pdf

[5]History Status of ISTQB Syllabi. RetrievedMarch 26, 2010fromhttp://www.istqb.org/members.htm

[6]AdMob Mobile Metrics Our Insights on the Mobile EcosystemMarch 25, 2010. RetrievedMarch 26, 2010fromhttp://metrics.admob.com/

[7]Gan tner Newsroom Spending to rebound in 2010October 18, 2009RetrievedMarch 26, 2010fromhttp://www.gartner.com/it/page.jsp?id=1209913