Markus Wagner Sprachdienstleistungen

Lokalisierung und Internationalisierung
von Software

In der Anfangsphase eines Softwareprojekts sind Zeit und Geld oft rar. Bei Fertigstellung ist das Produkt dann zunächst nur in der Sprache der Entwickler verfügbar. Um ernsthaft mit einem Produkt auf internationalen Märkten bestehen zu können, muss dieses jedoch fachgerecht internationalisiert und lokalisiert werden.

Lokalisierung? -- Internationalisierung? -- Was ist das?

Diese beiden Begriffe werden oft nicht eindeutig verwendet oder werden gar gänzlich miteinander verwechselt. Man könnte annehmen, dass mit beiden Begriffen einfach verschiedene Aspekte desselben Vorgangs gemeint sind, doch dem ist nicht so. Zwar spielen beide Prozesse eng zusammen, sind jedoch genau definiert:

Lokalisierung (l10n im "Entwicklerjargon")
beinhaltet die Übersetzung sowie kulturelle Anpassung eines Softwareprodukts. Voraussetzung dafür ist eine fachgerecht vorgenommene Internationalisierung. Oft geht die Lokalisierung über eine bloße Übersetzung hinaus -- so muss das Produkt oft weitreichend an die Zielkultur angepasst werden oder das Layout muss vollständig überarbeitet werden.
Internationalisierung (i18n im "Entwicklerjargon")
umfasst alle Schritte, die zur Vorbereitung eines Softwareprodukts auf die Lokalisierung nötig sind. Hierzu ist es meist notwendig, zusätzliche Bibliotheken oder Module hinzuzufügen, die dynamisch Übersetzungen für Programmtexte laden oder die grafische Oberfläche anpassen. Auch müssen "hard-coded strings", also Programmtexte, die direkt einprogrammiert sind, durch dynamisch nachladbare Texte ersetzt werden.

Natürlich sind sowohl Internationalisierung als auch Lokalisierung Teil der Softwareübersetzung im weiteren Sinne. Daher bieten wir beide Dienste auch in Kombination an. Nicht jedes Übersetzungsbüro kann dies bieten. Wir jedoch verfügen sowohl über die nötige übersetzerische als auch softwareentwicklerische Kompetenz. , um Ihre individuelle Lösung zu erhalten, die wirklich aus einem Guss ist.

Fallen bei der Lokalisierung

Wird ein Programm nicht sorgfältig genug internationalisiert, rächt sich dies meist erst nach einiger Zeit durch plötzlich auftauchende Probleme und Fehler. Dies können Logikfehler, grafische Fehldarstellungen oder Formatierungsprobleme sein. Ganz gleich, welche Fehler auftreten, die Qualität des Produkts leidet und die Fehler im Nachhinein zu beheben ist teuer. Es besteht auch immer ein Risiko, dass dieselben Fehler nach Änderungen am Originalprogramm wieder auftauchen. Unser nimble-System geht diese Probleme an der Wurzel an.

Im Folgenden sind einige häufig auftretende Fehler erklärt, die durch mangelhafte Internationalisierung bedingt sind. Unsere Internationalisierungstechnik umschifft all diese Fehlerquellen.

Pluralformen

Vielleicht haben auch Sie schon einmal einen Programmtext wie "1 Buchung(en) bestätigt" erblickt. Dabei handelt es sich um das Ergebnis einer Technik, mit der Entwickler Zeit sparen. Die so gewonnene Zeit kann dann dazu genutzt werden, die Kernfunktionalität des Programms zu erweitern. Deutsche und Englische Versionen eines Programms bleiben bei Anwendung dieser Technik benutzbar, wenn auch schlechter verständlich als sie sein könnten. Viele, insbesondere nichteuropäische, Sprachen verfügen jedoch über Pluralformen, die nach äußerst komplexen Regeln gebildet werden. Für all diese Pluralformen kann nicht einfach ein Monstrum an Klammern und Schrägstrichen stehen. Hier muss fachgerecht lokalisiert werden.

Für die Entwickler bedeutet dies jedoch entgegen der Erwartungen keine Mehrarbeit, etwa in Form zusätzlich zu implementierender Logik. Denn unsere Software enthält diese bereits. Ihre Entwickler können sich weiterhin auf die Umsetzung der Business-Logik konzentrieren. Sogar Zeiteinsparungen sind möglich -- die nimble-Bibliothek enthält nämlich auch universelle Formatierungsroutinen, die auch bei einsprachigen Projekten bereits ihre Vorzüge ausspielen können. Sprachliche Aufgaben sind somit sauber vom Programmcode entkoppelt und können völlig an technische Redakteure und Übersetzer delegiert werden.

Auch im Deutschen ist der Satz "Eine Buchung(en) bestätigt" grammatikalisch falsch. Durch einen verfeinerten Umgang mit Pluralformen können Sie demnach nicht nur auf internationaler Ebene besser aufgestellt sein, sondern auch die Qualität Ihres Produkts in Bezug auf den Ursprungsmarkt verbessern.

Zeichensatzfehler

ñ Õ×ÅÒÅÎ, ÞÔÏ ÷ÁÍ ÔÁËÏÇÏ ÁÂÓÏÌÀÔÎÏ ÎÅ ÎÕÖÎÏ.

ß óâåðåí, ÷òî Âàì òàêîãî àáñîëþòíî íå íóæíî.

 ã¢¥à¥ , çâ® ¬ â ª®£® ¡á®«îâ ® ¥ 㦠®.

Я уверен, что Вам такого абÑолютно не нужно.

Und genausowenig bräuchte ich derartige VerdrieÃlichkeiten.
Fehler bei der Konvertierung in andere Zeichensätze können zu Datenkorruption führen.

Sollte der rechts abgebildete Text Ihnen bekannt vorkommen, haben Sie bereits am eigenen Leib erfahren, wie Zeichensätze durch falsch eingestellte oder zu alte Software falsch interpretiert werden.

Zwar hat dieses Problem in den letzten Jahren an Schärfe verloren, da nun der UTF-8-Zeichensatz nahezu unangefochtener Standard ist, allerdings zeigt es sich überraschenderweise immer noch an einigen Stellen. Durch Fehlinterpretationen des Zeichensatzes werden lokalisierte Texte teilweise unlesbar. Auch Datenkorruption ist möglich, wenn der Fehler im Programm an einer ungünstigen Stelle liegt. Da es sich bei Zeichensätzen um eine variable Konfigurationskomponente handelt, reichen die üblichen Unit-Tests und Integrationstests oft nicht aus. Unsere Bibliotheken sind soweit wie möglich umgebungsunabhängig gestaltet und funktionieren daher in jeder Konfiguration korrekt.

Formatierung von Zahlen, Datum und Uhrzeit

Zahlen und Daten plattformübergreifend korrekt darzustellen, ist schwierig, insbesondere, wenn noch Grammatikregeln zu beachten sind. Unsere Bibliothek kann diese Aufgabe weitgehend automatisieren. Oft wird auch vergessen, dass Millionen, Milliarden & Co. sprachspezifische Einheiten sind. Deutsch, Englisch und Russisch verwenden etwa drei verschiedene Systeme. Im Hinblick auf die Benutzerfreundlichkeit wäre es doch wünschenswert, dass abhängig von der Sprache die richtigen Zahlwörter zum Einsatz kommen und der Nutzer nicht darauf angewiesen ist, Nullen zu zählen.