310 likes | 525 Views
open up international markets for US software. faster time to market ... Automobile manufacturing. as an analogy! 24. 4. 24. 5. Some of what needs to be ...
E N D
Slide 1:Overview of software design for international markets
Process and internationalization of software
Slide 2:Why internationalize software?
realities of global market place and US software firms connect from NY to Chicago vs. London-Paris-Berlin open up international markets for US software faster time to market consumes less resources code can be single-sourced reducing maintenance costs Most US software is sold over 60% in foreign markets (33% US, 33% Asia, 33% Europe). US distances are farther appart yet in Europe you step into another culture in less distance than that (NY-Chicago=700 miles; London-Paris=200 miles) Internationalizatiion will allow US software to be sold internationally. Many European firms are already doing it. Faster time to market: once the product is released it is already in international form because international requirements are aoutomatically met. No additional development is needed. Consumes fewer dollars, and man-hours to localize the software. Single-sourcing is possible, tgherefore maintenance is easier and less expensive. maintenance of a single source code is easier than of several.Most US software is sold over 60% in foreign markets (33% US, 33% Asia, 33% Europe). US distances are farther appart yet in Europe you step into another culture in less distance than that (NY-Chicago=700 miles; London-Paris=200 miles) Internationalizatiion will allow US software to be sold internationally. Many European firms are already doing it. Faster time to market: once the product is released it is already in international form because international requirements are aoutomatically met. No additional development is needed. Consumes fewer dollars, and man-hours to localize the software. Single-sourcing is possible, tgherefore maintenance is easier and less expensive. maintenance of a single source code is easier than of several.
Slide 3:Alternatives ways of producing SW for foreign markets….
Sell U.S. version Localize software Internationalize software Automobile manufacturing as an analogy!
Slide 4:Building PORTABLE CODE will reduce the PLATFORM axis Building with reusable or modular code will decrese the complexity of the PRODUCT axis. Developing SW with INTERNATIONALIZED CODE will shrink the COUNTRY/MARKET axis. See next 2 slides for Localized view of German and Kanji screens.Building PORTABLE CODE will reduce the PLATFORM axis Building with reusable or modular code will decrese the complexity of the PRODUCT axis. Developing SW with INTERNATIONALIZED CODE will shrink the COUNTRY/MARKET axis. See next 2 slides for Localized view of German and Kanji screens.
Slide 5:Some of what needs to be internationalized...
Alphabets: Russian Greek Hungarian Numbers and more numbers Sorting: how do you sort on Far Eastern? Directionality of text, spacing and punctuation Calendars types, Calendar order Dates according to calendar used Date order and numeric dates Time formats People’s names Addresses Telephone numbers Measurement systems Standard paper sizes
Slide 6:What does it mean then to internationalize?
Goal is to present users with a consistent look, feel, and functionality …across different language editions of a product. Account for differences in language, culture, and hardware
Slide 7:How to accomplish internationalization?
Module for universal character encoding system, (See UNICODE system in MS Windows), Module for conversion information on date, time, calendar, number system, measurements, and currency formats (See NLS system, National Language Support, in MS Windows), Handwriting recognition engine for East Asian languages and character sets, Multilingual user interface, for users to switch the language and locale of the user interface (UI). (See MUI, Multilingual User Interface, in MS Windows),
Slide 8:How does internationalized SW work?
Slide 9:So, wouldn’t you rather build a generalized framework instead of translate software for each new market?End software design
Slide 10:Chinese numerals
David: Try your multiplication tables with these numbers!? How about programming them?
Slide 11:Russian alphabet: http://www.russianembassy.org/
Let’s see an example!
Slide 12:Loren: Can you find those characters on your key-board?
Slide 13:Greek alpha-bet
Slide 14:Hungarian alphabet: what does this mean to a software designer? …to a systems analyst?
Lower case: a,á,b,c,cs,d,e,é,f,g,gy,h,i,í,j,k,l,ly,m,n,ny,o,ó,ö,õ,p,q,r,s,sz,t,ty,u,ú,ü,û,v,x,y,z,zs Upper case: A,Á,B,C,CS,D,E,É,F,G,GY,H,I,Í,J,K,L,LY,M,N,NY,O,Ó,Ö,Õ,P,Q,R,S,SZ,T,TY,U,Ú,Ü,Û, V,X,Y,Z,ZS
Slide 15:Far Eastern script: http://www.thaiembdc.org/index.htm
Let’s see a sample text ?!
Slide 16:?????????????????????????????????????????????? ??????????????????????????? ?????? ???????? ?? ?????????????????????????????????????? ????????????????????? ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ????????? 9 ?????? 2548 ? ????????????? ?????????????
Sort that one Brett!
Slide 17: Vertical text read with English characters
In most, though not all, Far-Eastern texts punctuation is omitted.
Slide 18: ?????????27????????????????????????????30?????????????????,?????????????????????,????????????????????????? ???,????..
Notice the directionality in this Chinese text, also note the punctuation and the Arabic numerals! The point is that with the exception of the size of the alphabet it can be computerized.
Slide 19:Upper case and lower case numbers? You are kidding, right?!
Upper case Roman numerals: I II III IV V VI VII VIII IX X Lower case Roman numerals: i ii iii iv v vi vii viii ix x Also used in the US!
Marland: How would you design an accounts receivable aging sw for the Hebrew calendar?Slide 21:Calendar order and format
Scott: … so when a German business partner writes 03/04/05 what does he/she mean in your calendar?
Slide 22:Date according to calendar in use
Slide 23:Date order…
Slide 24:Time formats …
Slide 25:Telephone numbers …
Slide 26:Addresses ….
Permutations of : Name Company Number Street name City, state, ZIP
Slide 27:Alternatives for producing SW for foreign markets ...US version...
Sell the US version Produce once, Maintain once, in English, Insert foreign dates, number styles, currency as needed, Provide service in English. Absorb expense of producing the software only once: time, programming, testing, maintenance cost. When used in foreign markts software processes foreign data as if it were US data. That is data is input in US defined fields. Service to users is provided in English, updates are in English. Assumes that all users speak English. Data can be handled in all language formats (see numeric fields!) Assumes the same punctuation, character sets, etc. Absorb expense of producing the software only once: time, programming, testing, maintenance cost. When used in foreign markts software processes foreign data as if it were US data. That is data is input in US defined fields. Service to users is provided in English, updates are in English. Assumes that all users speak English. Data can be handled in all language formats (see numeric fields!) Assumes the same punctuation, character sets, etc.
Slide 28:Alternatives for producing SW for foreign markets…Localize...
Localize Translate into each foreign language user interfaces on-line help tutorials sample programs printed documentation Replace US bias with specific local country bias Develop a version for each market to be entered Costs may be high! Translation costs may become prohibitive, $0.32/word to translate, verify, and retranslate 1/2 million words average in SW (750 pages) Assume 20 language simultaneous release $3.5 million for project. Huge amount of time required Translating 200 words/hour, top translator 1/2 million words per project Assume 20 language simultaneous release Use about 16 translators/language, average About 800000 person hours 32 translators working! Replace icons, wording, currency, number bias, date bias, etc. Consider maintenance costs too: in 20 versions i.e. in 20 languages Consider service in 20 languagesTranslation costs may become prohibitive, $0.32/word to translate, verify, and retranslate 1/2 million words average in SW (750 pages) Assume 20 language simultaneous release $3.5 million for project. Huge amount of time required Translating 200 words/hour, top translator 1/2 million words per project Assume 20 language simultaneous release Use about 16 translators/language, average About 800000 person hours 32 translators working! Replace icons, wording, currency, number bias, date bias, etc. Consider maintenance costs too: in 20 versions i.e. in 20 languages Consider service in 20 languages
Slide 29:What does it mean then to localize?
Users expect localized software should … Support the same basic set of features that the original-language editions of the product do, Have the same level of quality, Interact smoothly with other language editions, Seamlessly interact with cultural differences.
Slide 30:Localized Kanji screen: http://web-japan.org/index-k.html
Note that the command structure is in English. Data input and dialogue boxes are in Kanji.Note that the command structure is in English. Data input and dialogue boxes are in Kanji.
Slide 31:Alternatives for producing SW for foreign markets …Internationalize…
Results in a framework and a structure, One version for multiple markets: ease of distribution, Reduces development and testing costs, Reduce maintenance costs, Native language support, Additional languages can be added later, End user flexibility to switch between User Interface (UL) languages. Localization takes place easily, on demand. Consider the automobile: Japan, England, and some others drive on the left side. therefore, steering wheel is on the right side of the car. Imagine building a car chasis with movable steering wheel from left to right. Build software a lot easier! Small settings will localize the SW. Only need to develop one version. this will reduce development, testing, maintenance, and installation costs. Help and support will be in the user’s language. Consider the 3 dimensional complexity of software development: Product axis Platform axis Coountry/Language/Market axis See next slide!Localization takes place easily, on demand. Consider the automobile: Japan, England, and some others drive on the left side. therefore, steering wheel is on the right side of the car. Imagine building a car chasis with movable steering wheel from left to right. Build software a lot easier! Small settings will localize the SW. Only need to develop one version. this will reduce development, testing, maintenance, and installation costs. Help and support will be in the user’s language. Consider the 3 dimensional complexity of software development: Product axis Platform axis Coountry/Language/Market axis See next slide!