Ngày nay các hãng phần mềm đang quan tâm mạnh mẽ đến trải nghiệm người dùng bên cạnh những tính năng tuyệt vời mà nó đem lại. Điều này có nghĩa phần mềm đó phải thân thiện với người dùng. Thông thường các phần mềm ban đầu thường được xuất bản bằng tiếng Anh nhưng nó có thể sẽ không được những người Trung Quốc quan tâm vì đa số họ muốn dùng tiếng mẹ đẻ hơn. Họ sẽ tìm kiếm một phần mềm có tính năng tương tự và được hiển thị bằng tiếng Trung Quốc.
Nói một cách đơn giản, nếu mục tiêu của bạn hướng đến là số lượng người dùng, thì bạn phần mềm của bạn phải được xuất bản cho nhiều thị trường quốc tế. Khi đó bạn sẽ cần quan tâm đến bản địa hóa ngôn ngữ cho phần mềm của mình.
Bản địa hóa phần mềm là gì?
Bản địa hóa phần mềm là việc dịch UI/UX của phần mềm sang các ngôn ngữ mục tiêu, trong đó có lưu ý đến các đặc thù về văn hóa và tiến hành các điều chỉnh kỹ thuật và pháp lý cần thiết để phù hợp với văn hóa người dùng.
Ví dụ, bạn có một phần mềm ban đầu được xuất bản bằng tiếng Anh. Bây giờ bạn có nhu cầu phân phối phần mềm đó chi thị trường Việt Nam, Trung Quốc. Bạn sẽ cần dịch UI/UX sang tiếng Việt và tiếng Trung để người Việt Nam và Trung Quốc có thể sử dụng. Trong trường hợp này thì tiếng Việt Nam và tiếng Trung chính là các ngôn ngữ mục tiêu.
Bản địa hóa phần mềm cần tập trung nhiều vào dịch các tính năng của phần mềm bao gồm cả hướng dẫn, các tip để sử dụng. Có rất nhiều yếu tố cần xem xét cho những người thực hiện bản địa, ví dụ như:
- Độ dài cho phép của ngôn ngữ, điều này giúp phần mềm không bị phá vỡ giao diện hiển thị hoặc hiển thị thiếu chuyên nghiệp (không đẹp) khi cập nhật ngôn ngữ mới
- Qui trình nghiệp vụ phần mềm, cần chú ý đến việc chức năng của phần mềm là gì và có thể có các bước qui trình quản lý trong phần mềm đó
- Tính chất chuyên môn của phần mềm, mỗi loại phần mềm dành cho ngành tài chính, ngân hàng, y tế sẽ phải có cách sử dụng từ riêng.
Như bạn có thể thấy, bản địa hóa phần mềm là một quá trình tương đối dài và phức tạp, đòi hỏi nhiều công sức hơn là công việc dịch thuật thông thường.
Giá trị kinh doanh
Có thể bạn đã nghe về Grab – một công ty công nghệ có trụ sở tại Singapore cung cấp các dịch vụ vận chuyển và đi lại bằng xe hơi tại Singapore và các quốc gia Đông Nam Á khác như Malaysia, Indonesia, Philippines, Việt Nam, Thái Lan, Myanmar và Campuchia. Grab xây dựng được cơ sở người dùng khu vực mạnh mẽ với hàng triệu người dùng và hiển thị đến 9 ngôn ngữ vào ứng dụng của mình. Họ khởi đầu là một công ty khởi nghiệp quy mô nhỏ, nhưng nhanh chóng mở rộng sự hiện diện quốc tế của mình bằng cách bản địa hóa sản phẩm của mình cho các quốc gia và đối tượng khác nhau. Điều này giúp cho họ có được lợi thế cạnh tranh, tiếp cận được nhiều nhóm khách hàng và gia tăng thị phần.
Những thách thức đặt ra trong bản địa hóa cho các nhà phát triển phần mềm
Là một nhà phát triển tham gia vào quá trình bản địa hóa phần mềm, bạn có thể phải đối mặt với một số thách thức khác nhau. Một số vấn đề liên quan đến bản địa hóa phổ biến mà các nhà phát triển phải đối mặt gồm có:
- Đồng bộ hóa giữa các hệ thống quản lý dịch thuật và kho lưu trữ mã
- Tải xuống các tập tin bản dịch đúng cách (đúng định dạng và cấu trúc) và theo dõi các thay đổi
- Phát hiện được các bản dịch trùng lặp
- Làm việc hiệu quả với các khóa phức (plural key) và trình giữ chỗ (placeholder)
- Cho phép các đội ngũ dịch thuật xử lý các tính năng khác nhau cùng lúc
- Cung cấp ngữ cảnh cho dịch thuật viên
- Xem trước bản dịch trong giai đoạn thiết kế
May mắn thay, bạn có thể vượt qua những thách thức này bằng các công cụ và quy trình phù hợp. Hãy cùng xem xét nhanh những quy trình công việc phổ biến nhất trong bản địa hóa phần mềm.
Các chiến thuật bản địa hóa phần mềm
Dù nghe có vẻ đơn giản, giải quyết các vấn đề liên quan đến bản địa hóa có thể là một nhiệm vụ đầy thách thức và đòi hỏi chuyên môn của các chuyên gia bản địa hóa. Tốt nhất, đội ngũ phát triển nên xác định được quá trình quốc tế hóa ngay từ đầu và luôn sẵn sàng cải tiến quá trình này. Từ chiến thuật thác nước đến chiến thuật bản địa hóa liên tục, chúng ta đã đạt được những bước tiến dài trong quy trình công việc bản địa hóa phần mềm.
#1. Bản địa hóa theo mô hình thác nước (waterfall model)
Đây là chiến thuật truyền thống của công việc bản địa hóa truyền. Các công đoạn được tiến hành một cách tuần tự (cuốn chiếu), do đó mỗi giai đoạn hoặc bước sẽ bắt đầu khi giai đoạn hoặc bước trước đó đã kết thúc.
Trong chiến thuật này, công việc bản địa hóa chỉ bắt đầu khi phần mềm đã được lập trình xong và sẵn sàng phát hành. Các chuỗi (string) đã được dịch thuật viên và chuyên gia bản địa hóa dịch nay được chuyển trở lại cho các nhà phát triển. Chỉ sau đó, họ mới tải lên các bản dịch theo cách thủ công và tích hợp chúng vào phần mềm.
#2. Bản địa hóa linh hoạt
Trong mô hình bản địa hóa linh hoạt, các đội ngũ phát triển và đội ngũ bản địa hóa làm việc đồng thời. Việc bản địa hóa và dịch các chuỗi được tiến hành theo mỗi phân đoạn tác vụ (sprint). Vì mọi thứ diễn ra theo từng lượt nhỏ, mọi vấn đề phát sinh ở chỗ này hay chỗ khác đều có thể được khắc phục. Hãy cùng xem mô hình này vận hành như thế nào trong thực tế với sự trợ giúp của công cụ thích hợp:
Nhà phát triển đưa mã nguồn mới vào cơ sở dữ liệu của dự án. Phần mềm bản địa hóa tự động nhận dạng các chuỗi mới hoặc chuỗi đã được thay đổi và thông báo cho đội ngũ dịch thuật. Các dịch thuật viên xử lý văn bản, đội ngũ đảm bảo chất lượng rà soát chúng và các bản dịch được gửi lại cho các nhà phát triển. Mọi thứ được đồng bộ hóa để các bản dịch sẵn sàng cho việc phát hành đúng tiến độ. Đây được gọi là một phân đoạn tác vụ phát triển phần mềm.
#3. Bản địa hóa liên tục
Với bản địa hóa liên tục, quá trình phát triển và bản địa hóa diễn ra đồng thời. Trong khi các tác vụ được thực hiện theo nhiều phân đoạn tác vụ trong bản địa hóa linh hoạt, chỉ có một phân đoạn tác vụ liên tục duy nhất trong bản địa hóa liên tục. Các nhà cung cấp dịch vụ bản địa hóa tiến hành xử lý nội dung ngay khi được các đội ngũ phát triển bàn giao. Mỗi đội ngũ luôn luôn nắm được đội ngũ kia đang xử lý gì.
Sau đây là một cách đơn giản để hiểu được sự khác biệt tinh tế giữa bản địa hóa linh hoạt và bản địa hóa liên tục: với bản địa hóa liên tục, luôn có nội dung sẵn sàng chờ được phát hành; với bản địa hóa linh hoạt, bạn cần chờ cho đến khi phân đoạn tác vụ đã được hoàn thành.
Với bản địa hóa liên tục, thời gian hoàn thành bản dịch có thể nhanh hơn. Bản địa hóa không tác động đến quá trình phát triển. Thật vậy, nó còn giúp cho ra các bản phát hành nhanh hơn – tần suất thậm chí là vài lần một ngày. Sản phẩm được chuyển đến tay người dùng cuối nhanh hơn và không có bất kỳ sự chậm chễ nào.
Do những lợi ích này, lĩnh vực bản địa hóa phần mềm đang dần tiến tới áp dụng mô hình bản địa hóa liên tục như một quy trình công việc được ưu tiên.
Đưa công cụ bản địa hóa phù hợp vào quá trình phát triển phần mềm của bạn
Nhiều công ty vẫn dựa vào bảng tính để bản địa hóa phần mềm mặc dù việc chuyển đổi sang hệ thống quản lý dịch thuật (TMS) có thể giúp tăng 75% năng suất.
Kết hợp các thành viên làm việc trong đội ngũ đa chức năng với các công cụ phù hợp là một cách tuyệt vời để tối ưu hóa quá trình bản địa hóa phần mềm. Mặc dù bảng tính là một công cụ hữu ích để theo dõi số liệu và phân tích dữ liệu, nhưng chúng không hiệu quả lắm trong quản lý dịch thuật.
Tích hợp đội ngũ bản địa hóa vào đội ngũ phát triển nghĩa là bạn đang trên đường gặt hái những lợi ích của bản địa hóa liên tục.
Nếu bạn đang xem xét các lựa chọn khác nhau cho phần mềm bản địa hóa của mình, sau đây là một số mẹo có thể giúp bạn đưa ra quyết định sáng suốt:
- Tìm kiếm các giải pháp cho phép bạn tự động hóa nhiều nhất có thể. Các tính năng cho phép bạn tự động hóa quy trình công việc của mình có thể giảm thiểu thời gian chờ đợi vô ích và đảm bảo thời gian đưa ra thị trường nhanh hơn.
Nghĩ về những gì mà nhà phát triển của bạn cần đến. Hãy tìm kiếm giải pháp cung cấp tính năng tích hợp vào kho lưu trữ mã, có các tính năng hỗ trợ chuỗi phân phối phức tạp như webhook và API và cho phép sử dụng tham chiếu đến khóa (key referencing), trình giữ chỗ một cách thích hợp và hơn thế nữa. - Đảm bảo rằng giải pháp này đem đến một môi trường cộng tác tốt. Hãy nghĩ tới các vai trò khác nhau tham gia vào quá trình bản địa hóa và cách giải pháp phần mềm bản địa hóa tiềm năng này đáp ứng nhu cầu của mỗi người.
- Xem xét chất lượng lưu trữ. Phần mềm bản địa hóa bảo mật, sử dụng đám mây là lựa chọn ưu tiên cho các nhà phát triển phần mềm.
- Đặt ra số lượng câu hỏi tùy ý. Nhà cung cấp tiềm năng của bạn nên có các chuyên gia sản phẩm tận tâm sẵn sàng giúp bạn với các thực hành quy trình công việc tốt nhất.
Phần mềm bản địa hóa của bạn nên tập trung vào công việc dịch thuật của bạn và giúp bạn giảm các giao tiếp qua lại vô ích, làm giảm năng suất công việc. Mỗi bên liên quan – nhà thiết kế trải nghiệm người dùng, nhà phát triển phần mềm, dịch thuật viên, LSP và tất cả những người khác – cần có khả năng cộng tác liền mạch. Đó là cách bạn sẽ ngăn chặn được sự chậm trễ không cần thiết và đảm bảo bản dịch không có lỗi cũng như thời gian hoàn thành nhanh chóng.
Mẹo chính cho bản địa hóa phần mềm
Bạn có biết câu nói “đồ tốt mà chủ không biết dùng thì cũng bằng không” không? Cần phải nhấn mạnh rằng dù công cụ bản địa hóa phần mềm là đồng minh của bạn, nhưng bạn vẫn phải xắn tay áo vào việc. Sau khi các nhà phát triển kết thúc quá trình quốc tế hóa, đã đến lúc thực hiện các bước tiếp theo, tức chính là bản địa hóa.
Dưới đây là một số mẹo chính cần ghi nhớ:
- Hãy nghĩ đến việc điều chỉnh quá trình bản địa hóa của bạn sao cho bắt đầu ở giai đoạn thiết kế. Với các tích hợp phù hợp, cách tiếp cận chủ động này có thể rút ngắn đáng kể thời gian đưa ra thị trường của bạn.
- Đảm bảo hình ảnh và biểu tượng cảm xúc của bạn được điều chỉnh phù hợp với các nền văn hóa khác nhau. Hình ảnh bạn đưa vào không được phản cảm về mặt văn hóa.
- Cố gắng đạt được sự chính xác. Bạn càng tập trung thích ứng với một khu vực cụ thể, thì phần mềm của bạn càng phù hợp với các đối tượng mục tiêu của bạn.
- Hãy dùng sách hướng dẫn văn phong (style guide). Đạt đến sự nhất quán về mặt thương hiệu trên các thị trường đa ngôn ngữ không phải là điều dễ dàng, nhưng sẽ đơn giản hơn nhiều khi bạn quy định thành văn bản tông giọng, thông tin về đối tượng, hướng dẫn thương hiệu, v.v.
Lời kết – bản địa hóa phần mềm và những điều cần biết
Đưa một công cụ bản địa hóa mới vào quy trình phát triển phần mềm đã vận hành ổn định từ trước có thể là một nhiệm vụ đầy thách thức. Tùy thuộc vào mức độ bản địa hóa của tổ chức của bạn, mà có thể bạn sẽ cần phải tốn khá nhiều công sức cho việc quản lý thay đổi. Sẽ rất hữu ích nếu có toàn bộ đội ngũ tham gia, nhưng để đạt được điều đó, bạn sẽ cần giải thích sự thay đổi này sẽ mang lại lợi ích như thế nào cho tất cả mọi người.
Hãy nhớ rằng: phần mềm bản địa hóa được bạn lựa chọn phải hỗ trợ các tiến trình của bạn hoặc giúp bạn tích hợp thêm các tiến trình mới. Phần mềm này phải giúp bạn giảm bớt các giao tiếp không cần thiết nói riêng và giảm tải khối lượng công việc liên quan đến bản địa hóa nói chung cho các nhà phát triển của bạn, rút ngắn chu kỳ phát hành phát triển và cho phép thời gian bàn giao bản dịch nhanh hơn. Nhìn chung, đây là một cách chắc chắn để đảm bảo bạn không bị ngộp trong công việc dịch thuật.
Tất nhiên, chúng ta không thể phớt lờ thực tế rằng bản địa hóa phần mềm cũng đi kèm với những thách thức riêng có. Tin tốt lành là có cách để thiết kế quá trình bản địa hóa sao cho rút ngắn được thời gian tiếp thị, tối ưu hóa chi phí của bạn và đảm bảo môi trường tốt hơn cho hoạt động cộng tác liên nhóm. Và có các công cụ giúp bạn thực hiện được điều này.