이세영 SW공학센터 공학박사


▲ 이세영 SW공학센터 공학박사



한 캐나다 이용자가 새로 구입한 소프트웨어를 설치하는 중에 <그림 1>과 같은 화면을 만났다. 제품 사용을 위한 기본 언어를 설정하는 단계의 인터페이스이다. 캐나다식 불어가 공용어인 퀘백주에 거주하는 이 이용자가 언어 선택을 위해 캐나다 국기를 클릭했더니 영어로 화면이 바뀌고, 궁여지책으로 프랑스 국기를 선택했더니 프랑스식 불어가 선택되는 바람에 고생 끝에 결국 해당 소프트웨어를 반품하기로 결정했다. 영어와 불어를 모두 공식언어로 채택하고 있는 캐나다와 같이 다국어를 공식언어로 사용하고 있는 국가의 이용자를 배려하지 못한 인터페이스 상의 오류인 셈이다.




▲ <그림 1> 제품의 기본 언어 선택을 위해 국기 이미지를 사용하는 것은 대표적인 글로벌 이용자 인터페이스 오류이다.



소프트웨어 제품을 다양한 글로벌 환경에 대응할 수 있도록 개발하고 세계적 수준의 품질을 확보하기 위해서는 일반적인 소프트웨어 개발 과정에 더하여 추가적인 소프트웨어 글로벌화(Globalization, G11n) 전략이 요구된다.

이러한 전략은 글로벌 시장에 적응할 수 있는 소프트웨어가 되도록 기술적인 기반을 갖추는 과정인 국제화(Internationalization, I18n)와 이후 국제화된 소프트웨어에 실제 개별적이고 구체적인 언어, 문화, 지역 정보를 추가하여 목표 지역시장에 적합하도록 서비스를 완성하는 작업인 현지화(Localization, L10n)로 구성된다. 국제화는 제품의 핵심 비즈니스 로직과 기능이 포함된 글로벌 코드와 현지화 요구에 따라 변경 가능한 자원 파일을 분리하도록 설계하고 구현하는 기술적인 절차로써, 현지화 능력을 결정한다는 뜻에서 글로벌화와 동일한 의미로 사용되기도 한다<그림 2>. 이처럼 국제화와 현지화를 적용하여 다양한 언어, 문화, 지역의 이용자에게 제품을 서비스할 때의 장점은다음과같다.
• 단일 제품을 개발하고, 유지보수 한다.
• 새로운 지역시장을 개척할 때 효과적이고 효율적인 확장이 가능하다.


▲ <그림 2> 국제화 기술이 적용된 글로벌 소프트웨어의 기본 아키텍처







<이하 상세 내용은 컴퓨터월드 8월 호 참조>

저작권자 © 아이티데일리 무단전재 및 재배포 금지