INTERNAZIONALIZZAZIONE
E
LOCALIZZAZIONE DEL SOFTWARE
23 luglio 2009
Esame di laurea in Informatica di Diego Benna
SOMMARIO

Sede dello stage e problema affrontato

Strumenti

Soluzioni

Valutazione
Sede dello stage e problema affrontato
DOVE HO SVOLTO LO STAGE

Inizio stage: 7 gennaio 2008

Durata iniziale prevista: 300 ore

Fine stage: 15 marzo 2008



Sede: azienda SanMarco Informatica di Grisignano di
Zocco
Attività dell'azienda: sviluppo di un software gestionale
chiamato Galileo
Ambiente utilizzato: AS/400
1/14
Sede dello stage e problema affrontato
PROBLEMATICA (1)



Area esteri: gestione dei dati di clienti di
nazionalità diversa
Condivisione dei dati di lingue diverse con la
codifica EBCDIC (8 bit) dell'AS/400
Esempio: 2 utenti di nazionalità diversa
inseriscono dati in AS/400 usando EBCDIC
utente greco: CCSID 875
utente inglese: CCSID 37
DATABASE: CCSID 37
2/14
Sede dello stage e problema affrontato
PROBLEMATICA (2)
Dati inseriti dall'utente inglese
Åalson
Glenski
Dati inseriti dall'utente greco
Mένπ
Ωριμα
I caratteri greci sono immagazzinati correttamente soltanto se lo stesso
carattere esiste all'interno di CCSID 37.
Å
G
M
Ω
67
C7
53
67
Il carattere Ω non esiste nella code page
inglese (37). Si ha una conversione
automatica al carattere Å
Supponiamo l'utente greco voglia cercare le parole che iniziano per Ω
Select from DATABASE1 where name LIKE 'Ω%'
Risultato: Ωalson, Ωριμα.
3/14
Strumenti
CORSO E DOCUMENTAZIONE



300 ore di corso prima dell'inizio dello stage
Tecniche di sviluppo software e consulenza
applicativa in ambiente AS/400
Documenti consultati:
International application development
Globalization solution design guide
4/14
Soluzioni
UTILIZZO DI UCS-2


UCS-2 (Universal Character Set, definito da
ISO 10646 nel 1989): i primi 65.536 caratteri di
Unicode (definito e aggiornato da Unicode
Consortium nel 1991)
Utilizzo di UCS-2 nell'esempio precedente
Åalson
Glenski
Mένπ
Ωριμα
Å
G
M
Ω
00C5
0047
03A9
039C
5/14
Soluzioni
PROBLEMA INTERFACCIA UTENTE


Strumento utilizzato per le interfacce grafiche di
Galileo: VisualAge RPG
Problematica VisualAge RPG: non supporta
codifica UCS-2 ma solo codifica EBCDIC
NON SUPPORTA UCS-2 → conversione a EBCDIC
DB2 con campi UCS-2
6/14
Soluzioni
POSSIBILI SOLUZIONI

Riprogettazione dell'applicazione:
usare specifiche architetture per
l'internazionalizzazione
usare strumenti offerti dal linguaggio Java
 Compromesso:
aggiungere tabelle con campi UCS-2 nel DB
mantenendo la parte logica (programmi RPG su
AS/400)
sviluppare interfacce grafiche in Java (supporto di
Unicode)
7/14
Soluzioni
ARCHITETTURA SOFTWARE

Un singolo eseguibile e una singola libreria di
risorse per ogni lingua
meno test
sviluppo più semplice
Architettura SMI
Architettura proposta
8/14
Valutazione
TEMPI (1)
Motivi per cui è stato necessario più tempo ( 300
ore di corso SMI + circa 320 ore contro le 300
previste di stage):



prerequisito dello stage: necessità di
partecipare al corso della SanMarco Informatica
mancanza di conoscenze su
internazionalizzazione e
ambiente AS/400
carenza di documentazione sull'argomento
all'interno dell'azienda
9/14
Valutazione
TEMPI (2)

Ripartizione delle ore di lavoro:
Tempi complessivi (620 ore)
Ripartizione delle ore di stage (320 ore)
10/14
Valutazione
TEMPI (3)

Diagramma di Gantt relativo alle attività:
11/14
Valutazione
RISULTATI (1)
Il lavoro presentato nella mia tesi fornisce
all'azienda:




la conoscenza delle codifiche supportate da
AS/400 e i loro limiti
la definizione delle cause dei problemi riscontrati
in area esteri
la progettazione di architetture che considerano
l'internazionalizzazione
lo studio di una soluzione alternativa che non
richiede la riprogettazione dei programmi RPG
12/14
Valutazione
RISULTATI (2)
Documentazione fornita all'azienda:




Rapporto tecnico sulla codifica usata fino a quel
momento e sulla codifica UCS-2 supportata
dall'AS/400
Documenti di IBM riguardanti l'importanza
dell'internazionalizzazione
Manuale su come introdurre la codifica UCS-2
nelle tabelle di DB2
Programmi che erano soggetti alle problematiche
trattate, riprogettati applicando le 2 soluzioni
13/14
Valutazione
CONCLUSIONI


consapevolezza da parte dell'azienda che i
problemi non possono più essere trascurati e
valutazione delle soluzioni proposte
considerazioni sulle soluzioni:
interessante la prima soluzione proposta
(riprogettazione) ma di difficile attuazione per i
costi.
possibile applicazione della seconda soluzione
(compromesso interfacce grafiche in Java)
 decisione di applicare la seconda soluzione
nella prossima versione del programma
14/14
Scarica

1/14