Internationalization of Cisco’s TelePresence
About Cisco TelePresence
Cisco TelePresence, which debuted in 2006, is an advanced video conferencing system developed by Cisco Systems. Designed to link together conference rooms at any two points in the world, TelePresence provides a 1080p video feed along with spatial audio, creating a virtual conference room.
Scope of Work
Cisco initially hired Lingoport to audit TelePresence source code for internationalization (i18n) issues in order to avoid potential costly issues before moving on to localization (L10n). Through a static analysis of the TelePresence code using Globalyzer—a client/server software internationalization system—Lingoport was able to establish a clear picture of the internationalization issues and create a well-defined path toward internationalization. This avoided the uncertain trial and error outcome of relying on iterative testing, script-based searching or human line-by-line review, which are slow, incomplete and error prone processes. With this understanding, Lingoport architects and Cisco engineering discussed best alternatives for an internationalization architectural approach, and built plans that accommodated release cycles for concurrent i18n and new feature development. Cisco then contracted with Lingoport to implement internationalization development and testing services.
Though there had been initial efforts in some of the code to support internationalization, there was a large effort needed. TelePresence included several distinct application components, including multiple programming languages as well as sophisticated hardware and build environments. Concurrent product development was extremely active. A nearly year-long project plan was developed to support the release of TelePresence into 28 languages, and a number of additional locales. This plan was implemented within a busy development, testing and release schedule that had already been set.
In order to maintain the original development schedule and implement a robust internationalization plan, teams were augmented and allowed to branch off and work on their piece of the code.
The Lingoport Solution
Through the use of Lingoport’s Globalyzer i18n software, the teams were able to itemize and walk developers through code refactoring efforts. This facilitated tasks such as string externalization and changing methods/functions/classes and programming patterns that inhibited or prevented locale support requirements. Globalyzer also made the effort more scalable as developers had a clear path of action and utilities to speed up the process. Lingoport’s engineering team added internationalization support to the architecture and refactored code to support worldwide locale requirements. Additionally, when Cisco engineering added new code and features to the build, it was checked using Globalyzer for new i18n issues. Internationalization criteria were added to testing protocols and functionality was assured. Lingoport and Cisco also coordinated with localization efforts so that L10n testing could be integrated with i18n functional testing, without delay.
In May of 2011 Richard Faubert, QA Manager at Cisco, joined Adam Asnes of Lingoport and Gary Condon of Sajan to review and discuss some of the challenges faced in internationalizing and localizing TelePresence. Click here to view “Internationalizing and Localizing Cisco’s TelePresence – A Case Study.”
Internationalizing a large code base is an extensive effort, but it can be successfully executed even on an actively developing product. Using Globalyzer, developers can accurately gain valuable metrics for planning, step through and fix issues during implementation and facilitate i18n verification and testing. Lingoport’s services expertise ensured successful delivery, on time, and on budget. Augmenting the development team with expert tools and help from Lingoport allowed Cisco to concentrate on new feature development while the internationalization experts at Lingoport were able to refactor the existing code base.
When developing new software, internationalization can be an integral part of the process in order to avoid costly subsequent localization mistakes and a potential loss of revenues from new target markets. Internationalization issues, from basic to complex, are likely to develop with large development teams even when internationalization is within the product development requirements. Thinking that it won’t happen is a bit like thinking developers won’t accidentally create bugs and inefficiencies in code. Internationalization products that identify issues, help with remedies and monitor global readiness ensure quality and on-time global releases. Using an adaptable i18n tool like Globalyzer allowed Cisco TelePresence to be successfully internationalized in a timely and predictable manner.