Shift-Left approach in software localization. Pei-Yi Lin & Thomas Chou IBM Loc. World Tokyo, April 13-15, 2016

Size: px
Start display at page:

Download "Shift-Left approach in software localization. Pei-Yi Lin & Thomas Chou IBM Loc. World Tokyo, April 13-15, 2016"

Transcription

1 Shift-Left approach in software localization Pei-Yi Lin & Thomas Chou IBM Loc. World Tokyo, April 13-15, 2016

2 About the Authors Pei-Yi Lin is test lead on globalization testing for various IBM Lotus, Rational and Websphere products in IBM China Development Lab GSSC. Currently, she is focusing on IBM s mobile solutions on Cloud and Automation. Thomas Chou is a Globalization Project Manager working for Global Shared Services Center (GSSC) team in CDL Taipei currently. He led testing projects for IBM Lotus products in the past. Now he is project manager for IBM Industry Solutions products. He is also a IBM certified IBM Lotus products Administrator/Developer and he has extensive knowledge of Cloud computing and Agile.

3 About IBM Global Shared Services Center A world-class Services Center to provide comprehensive end-to-end globalization services

4 Agenda Background Challenges Goals and Best Practices Summary

5 Background In tradition, software companies are adopting phase by phase software globalization process. That might caused more management effort and decrease efficiency and cost control. English Software Globalized Software Translated Software Core Development Functional Testing System Testing Integration Testing Defect Fixing Verify Globalization Support Verify translatability Globalization Defect Fixing Translation Translation Testing Translation Defect Fixing

6 Agenda Background Challenges Goals and Best Practices Summary

7 Challenges The way to seek a balance to improve software globalization capability, quality and costs. Quality Cost Time

8 Agenda Background Challenges Goals and Best Practices Summary

9 Goal Agile software development life cycle as a continuum moving from left to right, the design analysis, development, test and translation; the more effort that is shifted left or earlier in the process.

10 Left-shift software development Target on Left shift globalization in software development cycle How we organize ourselves to deliver Globalization services Phase Solutions What enabling technology we use to deliver left shit localization? Design How we improve globalization experience in design phase? Development & Test How we increase the efficiency in development and test? Build Delivery How we deliver translation build with shorter cycle? Left-shift localization Globalization Assets Leverage development knowledge asset and libraries Supporting Tools Automatic code review process and stream line testing Build pipeline Adapt globalization pipeline to provide build in time.

11 Design Design in Globalization Support Software globalization guides are available for development, design, implementation and testing Define what multicultural support is required China: GB18030 Define what translations are required Quebec: English and French

12 Design Globalization Enablement considerations Coding with globalization requirements Collation, cultural formatting, etc. USA: 04/14/2016 FR : 14 juil ZH : 2016 年 4 月 14 日 Data input, output, and computation Minimize changes to existing codes Use globalization supported libraries, e.g. ICU4C/ICU4J, Dojo toolkit, or any applicable libraries

13 Development Implement with best practice Accumulated knowledge base to provide best practice, to provide suggestion on design Cultural selectability Bidi language UI/Translatability Unicode/Characters Cultural format Data handling Development tools, libraries and existed frameworks G11n libraries G11n Knowledge G11n Guidelines

14 Development Globalization Code Analyzer Build up globalization rules from code review community knowledge base Running Code Scan from Cloud without actually keeping source code Assess the potential G11N deficiencies in sources Evaluate the efforts to make software globalized G11n Code Scan Engine

15 Development Globalization Code Analyzer Evaluate the current globalization support Technologies used Globalization development design guide Source code analysis

16 Test Reuse Test assets Most of testable code design focus on functional test currently. TDD, ATDD, BDD...etc. Leverage functional test assets for Globalization Testing and Translation Testing Agile Demo Scrum Daily Meeting User Stories Iterative Development Product Backlog Product Owner TDD Working Software

17 Test Reuse Test assets Behavior Driven Development test script sample

18 Translation Globalization Pipeline A DevOps service on cloud featuring best of breed machine translation and post-mt editing capabilities Open source SDKs (java, javascript, mobile plugins) that enable app developers to update translations in their applications without having to rebuild or redeploy Support and automate the push of new source content for translation

19 Translate dynamically Translation Globalization pipe line overview Application developer App Globalization Pipeline Dashboard Globalization Pipeline Service on Bluemix Integrate with DevOps services Build/Deploy the app Source files MT Adapter Application developer App Translated files Continuous Delivery Machine Translation service

20 Translation Restful API and SDKs Java SDKs JavaScript/Node.js SDK

21 Translation - Globalization pipeline

22 Agenda Background Challenges Goals and Practices Summary

23 Summary Translation Machine translation Globalization pipeline Translation Design Design Design with globalization requirement consideration Test Development Test Continuous globalization testing Development Find and fix g11n defects in early stage with Code Scanner and Automation

24 Takeaway Points Design in globalization, consider cultural support prior to product development Better test method to improve software localization quality and costs Leverage globalization pipeline to get real time translation build and reduce translation effort

25