ITモダナイゼーションSummit 2018 ～どうする？最後のレガシー～

既存COBOL資産を有効活用した事例紹介～今後必要となる膨大な種類の漢字にどう対応するか～
2018/4/13
株式会社 日立製作所
公共システム事業部 全国公共システム第一本部

河合 孝志© Hitachi, Ltd. 2018. All rights reserved.

Contents
1.システムを取り巻く環境における文字の課題
2.システム環境におけるCOBOLの現状

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画
4.IMI(共通語彙基盤と文字情報基盤)
5.COBOL資産を国際標準の文字情報基盤に対応させるための課題
6.既存COBOL資産を有効活用した事例紹介～国際標準の文字情報基盤に対応するために～

7.まとめ© Hitachi, Ltd. 2018. All rights reserved.

1

1. システムを取り巻く環境における文字の課題© Hitachi, Ltd. 2018. All rights reserved.

2

1.システムを取り巻く環境における文字の課題
システムを取り巻く環境【オープン化】【システム統合／マイグレーション】●レガシーシステムの再構築●既存業務システムの段階的移行●既存業務システムとの並行稼働●複数業務システムの統合●既存業務システムの段階的移行●既存業務システムとの並行稼働【クライアント環境の更新】●新OS (Windows 7,8.1,10)の段階的導入●新OS (Windows 7,8.1,10)への全面切替【法・制度】●住民基本台帳法●出入国管理及び難民認定法●マイナンバー制度●官民データ活用推進基本法●Society5.0の実現

さまざまなプラットフォーム（OS）環境間でのシステム連携やデータ移行が発生

こんな不安はありませんか？
法改正の時の文字対応って一体何をすればよいの

文字規格の混在で、文字化け・字形差が生じる

外字の移行・統合をどうしたらいいのか分からない

クライアントOSを更新すると“文字コード”が変わるらしい

外字の作成・配布・管理を含めた運用に手間がかかる

文字の重複登録で、業務システム間で名寄せができない

めざすビジョン

お客さまのシステム環境に合わせて、情報システムに必要とされる文字環境（外字を含む）の整備と既存資産を活かし、BPR を実現するデータ流通基盤への対応*1*1 「ビジネスプロセス・リエンジニアリング」（Business Process Re-engineering）の略。 企業活動の目標（売上、収益率など）を達成するために、既存の業務内容や業務フロー、組織構造、ビジネスルールを全面的に見直し、再設計（リエンジニアリング）すること。

© Hitachi, Ltd. 2018. All rights reserved.

3

1.システムを取り巻く環境における文字の課題～2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017～2017年4月11日延長
サポート終了Windows Vista

2020年1月14日延長
サポート終了（予定）Windows 7
JIS2004規格が正式サポート2023年1月10日延長
サポート終了（予定）Windows 8.1
JIS90互換フォント
非サポート

Windows 2000 Server

2010年7月13日
延長サポート終了

Windows 10

JIS90規格標準
OSサポート終了

JIS90互換フォントをサポートするOSが無くなる

2015年7月14日
延長サポート終了

Windows Server 2003

ServerOS

JIS90互換フォントをサポートするOSが無くなる

2014年4月9日
延長サポート終了

Windows XP

ClientOS

JIS90規格標準
OSサポート終了

2010年7月13日
延長サポート終了

Windows 2000

2020年1月14日延長
サポート終了(予定)Windows Server 2008
Windows Server 2012
JIS2004規格が正式サポート2023年1月10日延長
サポート終了(予定)Windows Server 2016
JIS90互換フォント
非サポート(注1) 各OS名称は略称で表記しています。
(注2) 本資料では、Microsoft ®,TM, ®マークは表示していません。
(注3) Windows Server 2003は，Windows Server 2003 R2を含みます。
(注4) Windows Server 2008は，Windows Server 2008 R2を含みます。
(注5) Windows Server 2012は，Windows Server 2012 R2を含みます。

© Hitachi, Ltd. 2018. All rights reserved.

4

1.システムを取り巻く環境における文字の課題

Windows Vista，Windows Server 2008以降の対応
変更点1
JIS X 0213（JIS2004）に対応した日本語入力、日本語フォントを搭載

JIS第1、第2水準漢字の168文字の字形が変更となる。
変更点2
JIS第3、第4水準漢字の文字が標準で入力される。

エンコード方式として、
UTF-16を採用

変更点3
４バイト文字が標準で入力される。
© Hitachi, Ltd. 2018. All rights reserved.

5

2. システム環境におけるCOBOLの現状© Hitachi, Ltd. 2018. All rights reserved.

6

2.システム環境におけるCOBOLの現状

COBOLの利用状況© Hitachi, Ltd. 2018. All rights reserved.

7

2.システム環境におけるCOBOLの現状

新規・改良保守© Hitachi, Ltd. 2018. All rights reserved.

8

2.システム環境におけるCOBOLの現状

システム再構築におけるCOBOL資産の取り扱いは・・・①COBOLからの脱却
 動的プログラミング言語（JavaScript、Ruby、Python、等）
 静的型付き言語（Java、C、Swift、C++、等）②オンライン処理はCOBOL脱却、バッチ処理はCOBOL継続
 オンライン処理は、業務端末要件も加味して、JavaScript、Ruby、Python、Java、C、
Swift、C++、等でスクラッチ開発。
 バッチ処理は、大量データ処理を書きやすい（レコード入出力指向）、計算機は二進数でも人に合わせて十進数が中心（基本的に演算は十進数）のCOBOLを継続利用。

③COBOLの継続利用（保守性が高い）

ターゲット

 静的言語（アプリケーションが稼働時に使うメモリ量を想定可能） 一つの文に多くの処理を詰め込まない（１ステップずつ処理が進み、理解しやすい） 長期にわたる互換性（国際規格が言語仕様を定義、互換性を保ちながら言語仕様が進化）© Hitachi, Ltd. 2018. All rights reserved.

9

2.システム環境におけるCOBOLの現状

システム再構築におけるCOBOL資産の取り扱いは・・・③COBOLの継続利用（保守性が高い）

ターゲット

 静的言語（アプリケーションが稼働時に使うメモリ量を想定可能） 一つの文に多くの処理を詰め込まない（１ステップずつ処理が進み、理解しやすい） 長期にわたる互換性（国際規格が言語仕様を定義、互換性を保ちながら言語仕様が進化）外的環境変化(P:政治面、E:経済面、S:社会面、T:技術面)へ対応するには・・・【オープン化】●レガシーシステムの再構築●既存業務システムの段階的移行●既存業務システムとの並行稼働【クライアント環境の更新】●新OS (Windows 7,8.1,10)の段階的導入●新OS (Windows 7,8.1,10)への全面切替【システム統合／マイグレーション】●複数業務システムの統合●既存業務システムの段階的移行●既存業務システムとの並行稼働【法・制度】●住民基本台帳法●出入国管理及び難民認定法●マイナンバー制度●官民データ活用推進基本法●Society5.0の実現

注目© Hitachi, Ltd. 2018. All rights reserved.

10

3. 政府が推進するSociety5.0、
デジタル・ガバメント実行計画© Hitachi, Ltd. 2018. All rights reserved.

11

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画
未来投資戦略などの政策にて、 Society5.0の実現に向けてSociety5.0基盤構築の加速をうたっている。
Society5.0実現に向けた政府動向と府省の取り組みについて紹介する。

Society5.0
基盤構築の加速

政策動向の動き

実現に向けた府省などの取り組み
データ連携のための相互運用性の確保
データ等の標準化© Hitachi, Ltd. 2018. All rights reserved.

12

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

未来投資戦略2017
Society5.0の実現に向け、先端技術をあらゆる産業、社会生活に導入していくことが必要だと、未来投資戦略などで示している。
*1

Society5.0の実現に向けて、施策がより具体化*1 「Internet of Things」の略。センサーやデバイスといった「モノ」がインターネットを通じてクラウドやサーバーに接続され、情報交換することにより相互に制御する仕組み。

引用：内閣官房日本経済再生総合事務局 未来投資戦略2017-Society5.0に向けた改革-© Hitachi, Ltd. 2018. All rights reserved.

13

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画
未来投資会議2017年11月17日

 「第4次産業革命」で世界最先端をめざすために必要な事項を整理
 5つのイニシアティブにて、Society5.0基盤構築の加速を宣言

新しい経済政策パッケージ2017年12月8日

 「新しい経済政策パッケージ」へSociety 5.0のインフラ整備として横断的なデータ連携基盤構築を推進 国内の整備にとどまらず、欧米との連携を年頭に、日米欧10億人のデータ共通市場の整備をめざす 2020年までに全国に展開できる基盤を整備。
2019年G20でSociety5.0を世界に発信。

総合科学技術・イノベーション会議(CSTI*1)

2017年12月25日

 Society5.0の実現に向け「人工知能」と「データ連携基盤」を両輪として推進
 「データ連携基盤」の推進は、CSTIが司令塔となり、SIP*2／PRISM*3を中核に、分野毎、分野間のデータ連携基盤を整備する*1 Council for Science, Technology and Innovation*2 内閣府総合科学技術・イノベーション会議が司令塔機能を発揮し、府省の枠や旧来の分野を超えたマネジメントにより、科学技術イノベーション実現のために創設した国家プロジェクト。
Strategic Innovation Promotion Programの略称*3 政府研究開発投資目標(対GDP比1%)の達成に向け、2018年度に創設する官民研究開発投資拡大プログラム。
Public/Private R&D Investment Strategic Expansion PrograM© Hitachi, Ltd. 2018. All rights reserved.

14

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

出典：Society5.0重要課題ワーキンググループ（第1回）資料3© Hitachi, Ltd. 2018. All rights reserved.

15

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

Society5.0 重要課題WGでの整備方針

データ流通の拡充、相互運用性の実現
Society5.0アーキテクチャの整備
日本発の国際標準化© Hitachi, Ltd. 2018. All rights reserved.

16

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

デジタル・ガバメント実行計画について（平成30年1月16日開催「eガバメント閣僚会議(第４回)」資料1-1「デジタル・ガバメント実行計画について」より抜粋）*1*2*1 「chief information officer」の略。最高情報責任者を意味する。
*2 「National center of Incident readiness and Strategy for Cybersecurity」の略。内閣サイバーセキュリティセンターを意味する。

© Hitachi, Ltd. 2018. All rights reserved.

17

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

デジタル・ガバメント実行計画について（平成30年1月16日 資料1-1より抜粋）© Hitachi, Ltd. 2018. All rights reserved.

18

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

データ標準の社会全体への展開について

出典：第30回新戦略推進専門調査会電子行政分科会 第12回規制制度改革ワーキングチーム
第13回各府省情報化専任審議官等連絡会議 合同会議 資料2© Hitachi, Ltd. 2018. All rights reserved.

19

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

デジタル・ガバメント実行計画について（平成30年1月16日 資料1-1より抜粋）© Hitachi, Ltd. 2018. All rights reserved.

20

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

データ標準の社会全体への展開について

出典：第30回新戦略推進専門調査会電子行政分科会 第12回規制制度改革ワーキングチーム
第13回各府省情報化専任審議官等連絡会議 合同会議 資料2© Hitachi, Ltd. 2018. All rights reserved.

21

3.政府が推進するSociety5.0、デジタル・ガバメント実行計画

データ標準の社会全体への展開について

出典：第30回新戦略推進専門調査会電子行政分科会 第12回規制制度改革ワーキングチーム
第13回各府省情報化専任審議官等連絡会議 合同会議 資料2© Hitachi, Ltd. 2018. All rights reserved.

22

4. IMI(共通語彙基盤と文字情報基盤)© Hitachi, Ltd. 2018. All rights reserved.

23

4.IMI(共通語彙基盤と文字情報基盤)

出典：データ連携基盤サブワーキンググループ（第１回）資料4-1© Hitachi, Ltd. 2018. All rights reserved.

24

4.IMI(共通語彙基盤と文字情報基盤)

出典：データ連携基盤サブワーキンググループ（第１回）資料4-1© Hitachi, Ltd. 2018. All rights reserved.

25

4.IMI(共通語彙基盤と文字情報基盤)

デジタル・ガバメント実行計画について（平成30年1月16日開催「eガバメント閣僚会議(第４回)」「デジタル・ガバメント実行計画」より抜粋）© Hitachi, Ltd. 2018. All rights reserved.

26

4.IMI(共通語彙基盤と文字情報基盤)

出典：データ連携基盤サブワーキンググループ（第１回）資料4-1© Hitachi, Ltd. 2018. All rights reserved.

27

5. COBOL資産を
国際標準の文字情報基盤に対応させるための課題© Hitachi, Ltd. 2018. All rights reserved.

28

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
独立行政法人 情報処理推進機構（IPA）が平成22年度電子経済産業省推進費（文字情報基盤構築に関する研究開発事業）を受託
 行政で使われる文字を整理
戸籍統一文字55,270の漢字

住民基本台帳ネットワークシステム統一文字
19,563の漢字同定・整理して58,842字を国際規格と対応付け or 新規提案

• JIS漢字，常用漢字，表外漢字，人名用漢字まで含めて整理• 文字図形，各種文字コード，読み等の情報を一覧化• フォントを整備© Hitachi, Ltd. 2018. All rights reserved.

29

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
 同定・整理した全ての文字を国際標準で使えるようにする• ISO/IEC 10646 (Unicodeの国際標準版) に登録済みの文字と対応付け• ISO/IEC 10646 に登録されていなかった文字を提案し標準化• UnicodeコンソーシアムにIVD(*)提案し，規格上はひとつの文字に包摂（統合）された複数の文字を、IVS(*)を使って区別できるようにする

外字のないデータ流通の世界へ(*) IVD: Ideographic Variation Database(*) IVS: Ideographic Variation Sequence/Selector© Hitachi, Ltd. 2018. All rights reserved.

30

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
IT総合戦略本部
新戦略推進
専門調査会
電子行政
分科会

パーソナルデータ
に関する検討会
人材育成 ・・・
分科会

各府省CIO
連絡会議

電子行政オープン
データ実務者会議

政府情報システム
刷新等WG

情報セキュリティ
政策会議

塗りつぶし部分:: 関連する会議体

報告

協力依頼

情報共有基盤推進委員会
委員長
須藤修 (東京大学情報学環長)
有識者武田英明 (共通語彙基盤WG座長)，林史典 (文字情報基盤WG座長)
関係団体
一般社団法人情報サービス産業協会(ソフト業界)，
一般社団法人電子情報技術産業協会(ハード業界)
オブザーバ
内閣官房 (IT総合戦略室，社会保障改革担当)，総務省 (行政管理局)
共通語彙基盤WG<実施内容>
・ 情報連携用語彙基盤DBの構築
・ APIカタログの整備
・ 情報連携用ツールの整備

文字情報基盤WG<実施内容>
・ 標準化の実施（フォントの整備）
・ 導入ガイドの作成
・ 文字情報DBの構築

文字情報検討SWG※ 各委員会，WGの設置主体は経済産業省，事務局は IPA※ 各WGの下には，具体的な検討を行うSWGを設置

運用検討SWG
文字情報基盤DB検討SWG© Hitachi, Ltd. 2018. All rights reserved.

31

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
 2017年12月20日付で，国際標準で58,840字が利用可能に
既存のISO/IEC 10646のコードにない文字について，・ SC 2 に提案
・ SC 2/WG 2/IRG で漢字の協議
・ 国際投票・ 規格発行

文字情報基盤文字を規格化完了

数次に
分けて提案

※ 正確には，漢字2字と変体仮名約300字が未規格化

2017-06-20 Unicode 10.0.0 発行
2017-12-14 Unicode コンソーシアムにIVD登録
2017-12-20 ISO/IEC 10646:2017 発行 (Unicode 10.0.0相当)© Hitachi, Ltd. 2018. All rights reserved.

32

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・ ユニコード (ISO/IEC 10646) の全体像
21ビットの空間に文字を定義• 全てが2バイトコード（と2バイトコードの組み合わせ）• 一つの面に65536の
コードポイント（16ビットで表現）• 0面～16面の合計17面を使う（21ビット）• 0面に定義された文字しか使わないなら，2バイト固定長と同等

17面

256

256
© Hitachi, Ltd. 2018. All rights reserved.

33

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・ ユニコードの代表的な符号化方式• UTF-160面
2バイトの固定長
1面～16面4バイトの固定長（2つのコード位置を組み合わせる）
2つのコード位置の値のビット列を組み合わせて
1面～16面の21ビットのコード位置を表現• UTF-8
0面～16面
1～4バイトの可変長で表現（若いコード位置ほど短い）(説明略)© Hitachi, Ltd. 2018. All rights reserved.

34

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・ ユニコードの符号化方式 UTF-16• 0面の文字は，2バイトで表現• 1面～16面の文字位置を，サロゲート文字のペアで表現(2バイト+2バイト＝4バイト)• 0面のD800～DBFFの領域と，DC00～DFFFの領域を特別に確保• 1面～16面の文字の表現
0面のD800～DBFFから1つ，DC00～DFFFから1つを拾い，両者を合わせて1面～16面の21ビットのコード位置を表現
17面

サロゲート文字のペア (ビットで表現)
110110wwwwxxxxxx --- 16ビット
110111xxxxxxxxxx --- 16ビット

21ビット表現に再構成

D800～DBFF
DC00～DFFF

uuuuu xxxxxx xxxxxxxxxx

IVSに使われるコードは第14面⇒ 4バイトで表現要(ただし，uuuuu = wwww + 1)
uuuuuは，1面～16面を指す© Hitachi, Ltd. 2018. All rights reserved.

35

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・ ユニコードの代表的な符号化方式の整理• 包摂（統合）した文字の元の形を区別するには，
IVS (Ideographic Variation Selector/Sequence) を指定する• IVS は，第14面の240個のコード位置（E0100～E01EF）として定義されている (UTF-16では，サロゲートペアの4バイトで表現)
符号化方式
UTF-16

UTF-8

必要バイト数

ベースの文字の
符号位置

ベースの文字IVSの指定合計

0000～FFFF

2

4

6

10000～10FFFF

4

4

8

0000～007F

1

4

50080～07FF

2

4

6

0800～FFFF

3

4

7

10000～10FFFF

4

4

8

© Hitachi, Ltd. 2018. All rights reserved.

36

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
 IVSを加えたUTF-16表現の具体例

UTF-16表現 ⇒5317_E0101
5317 DB40 DD01

5317_E0102
5317 DB40 DD02

UTF-16表現 ⇒29031_E0100
D864 DC31 DB40 DD00

29031_E0101
D864 DC31 DB40 DD01
© Hitachi, Ltd. 2018. All rights reserved.

37

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

文字情報基盤事業とは・・・
 ITモダナイゼーション• 既存システム（シフトJIS/EUCを処理）への変更を最小限に
ITモダナイゼーションして，文字情報基盤の6万字に対応可能に

UTF-8/16 + IVS
接続先
システム

シフトJIS/EUC

既存システム(COBOL等)

動的マッピングによるコード変換

UTF-8/16+ IVS© Hitachi, Ltd. 2018. All rights reserved.

38

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

システム環境毎の文字環境の違い〔Aシステム〕〔Bシステム〕〔Cシステム〕

文字情報基盤

文字コード：KEIS,JEF,JIPSなど
文字集合：JIS X 0208:1978 or 1983

文字コード：シフトJIS
文字集合：JIS X 0208:1990

文字コード：Unicode
文字集合：JIS X 0213:2004
JIS X 0212

文字コード：Unicode
文字集合：ISO/IEC 10646

JIS第１,2水準【約6,800字】

JIS第１,2水準【6,879字】

JIS第１,2水準【6,879字】

JIS第１,2水準【6,879字】

JIS第3,4水準【4,354字】

JIS第3,4水準【4,354字】

JIS補助漢字【6,067字】

JIS補助漢字【6,067字】

Windows特殊文字【457文字】

Windows特殊文字【457文字】

Windows特殊文字【457文字】

外字領域【約9000字】

外字領域【1,880字】※メーカ拡張文字含（注）• 表記はあくまでも一例です。実際にはWindows特殊文字を含まない場合があるなどシステムによって異なります。
• JIS第3,4水準と補助漢字、およびWindows 特殊文字は重複する文字が存在します。
• 文字情報基盤はIPAmj明朝バージョン005.01(2016年7月最新)の情報です。

その他の戸籍統一文字・住基統一文字でUCS符号化されている文字【約37,000字】

外字領域【6,400字】

Windows Vista以降のOSにおける標準文字領域

扱う文字数が異なるため連携が困難

その他の戸籍統一文字・住基統一文字でIVS符号化されている文字【5,930字】
その他の戸籍統一文字・住基統一文字で符号化対象外の文字【1,941文字】© Hitachi, Ltd. 2018. All rights reserved.

39

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

既存COBOLシステムをUnicodeデータに対応させるには・・・
シフトJIS、KEISなど：文字サイズは固定
UTF-8、UTF-16など：文字サイズは可変
シフトJISとUTF-8，UTF-16の文字サイズ（バイト数）
文字種／文字コード

シフトJIS

UTF-8

UTF-16

英数字（ASCII）

1

1

2

半角カナ

1

3

2

全角記号

2

3

2

全角カナ・かな

2

3

2

漢字

2

3～4

2, 4

◆ 日本語のバイト数が増加する◆ 半角１バイト、全角2バイトでなくなる◆ コードが変わる

影響大© Hitachi, Ltd. 2018. All rights reserved.

40

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

既存COBOLシステムをUnicodeデータに対応させるには・・・ 日本語のバイト数が増加する
シフトJISコード例

8D82

8BB4

UTF-16コード例

9AD8

6A4B

6バイト UTF-16コード例 9AD8（IVS無しの場合）⇒ 領域サイズの見直し

D86D

例：

高橋 4バイト高DF8E

 半角１バイト、全角2バイトでなくなる⇒ 文字列処理の見直し
・文字数のカウント
・文字列の比較・文字列のコピー

単純な修正では不可能！
全般的に再設計が必要
etc.

 コードが変わる⇒ 日本語文字コード判定方式の見直し© Hitachi, Ltd. 2018. All rights reserved.

41

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

既存COBOLシステムをUnicodeデータに対応させるには・・・ シフトJISコード → 異体字セレクタを含むUTF-16に変更する場合
01 KANJI-AREA PIC N(3).

(文字位置1つ ＝ 2バイト)

01 KANJI-AREA PIC N(12).

• 文字データの変数を，４倍の領域に拡張する必要がある• こうした変数を含むレコード内のレイアウトが変更になりレコード設計からやり直す必要がある© Hitachi, Ltd. 2018. All rights reserved.

42

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

既存COBOLシステムをUnicodeデータに対応させるには・・・
 COBOLでは文字列の文字位置同士を順番に比較

高 橋
9AD8

6A4B

9AD8

D86D

高

DF8E

DB40

DD01

(U+2B78E_E0101)（IVS有りの場合）• 「文字」同士を比較するには，データ内容を見て，各「文字」の開始・終了位置を認識する処理の追加が必要© Hitachi, Ltd. 2018. All rights reserved.

43

COBOL資産を
5. 国際標準の文字情報基盤に対応させるための課題

既存COBOLシステムをUnicodeデータに対応させるには・・・
 文字列の部分抽出には追加処理が必要
シフトJISコードの異体字セレクタ付きUTF-16の文字列用のコーディング
文字列用のコーディングへ変更
01 K-AREA PIC N(3).
::::MOVE K-AREA(2:1) TO W-AREA
2番目の
文字位置から

1文字位置分を取得

01 K-AREA PIC N(12).
:
追加処理
文字列の内容を調べ、
文字位置kと文字位置数lを求める:
MOVE K-AREA(k : l) TO W-AREA

k 番目の

文字位置からl 文字位置分を取得• シフトJISでは，文字位置を使って抽出する文字列部分を指定• 異体字セレクタ付きのUTF-16では，内容を調べて，「開始文字位置」と「文字位置の数」を求める処理を追加© Hitachi, Ltd. 2018. All rights reserved.

44

6. 既存COBOL資産を有効活用した事例紹介～国際標準の文字情報基盤に対応するために～© Hitachi, Ltd. 2018. All rights reserved.

45

既存COBOL資産を有効活用した事例紹介
6. ～国際標準の文字情報基盤に対応するために～

既存COBOLシステムをUnicodeデータに対応させるには・・・ 日本語のバイト数が増加する
シフトJISコード例

8D82

8BB4

UTF-16コード例

9AD8

6A4B

6バイト UTF-16コード例 9AD8（IVS無しの場合）⇒ 領域サイズの見直し

D86D

例：

高橋 4バイト高DF8E

 半角１バイト、全角2バイトでなくなる⇒ 文字列処理の見直し
・文字数のカウント
・文字列の比較・文字列のコピー

単純な修正では不可能！
全般的に再設計が必要
etc.

 コードが変わる⇒ 日本語文字コード判定方式の見直し

スクラッチで造り直し ⇒ ×
既存資産の有効活用 ⇒ ◎© Hitachi, Ltd. 2018. All rights reserved.

46

既存COBOL資産を有効活用した事例紹介
6. ～国際標準の文字情報基盤に対応するために～

文字に関するシステム仕様

文字コードの体系エンコーディング法、
文字セット(コレクション)の3つを忘れずに指定することが大事。

＃ときどき、まぜこぜになっています。
・ 取り扱う日本語文字集合の範囲：JIS X 0213:2012
・ 文字の符号化方式：UTF-8（※）※JIS X 0221:2007（ISO/IEC 10646（UCS））のUCS-4の範囲を符号化
なお、取り扱う文字集合の範囲は、将来的な変化があった場合には、各機関のシステムの対応がなされることを前提として、文字の符号化方式を従前のままとしつつ、より広い範囲の文字集合（文字情報基盤等）に変更していくことが考えられる。この場合においても、柔軟に対応できるよう、拡張性を考慮したシステム設計とすること。
「情報提供ネットワークシステム等の設計・開発等業務」調達仕様書（平成26年1月）© Hitachi, Ltd. 2018. All rights reserved.

47

既存COBOL資産を有効活用した事例紹介
6. ～国際標準の文字情報基盤に対応するために～

文字を受け入れるときの注意どんなコードで来るか？
どんなエンコーディング法で来るか？
どんな文字セットが来るか？
JIS X 0213
10,050JIS X 0212 補助漢字
5,801

952

JIS X 0208
6,355

2,743

ちまたにはいろいろな文字セットがある

3,058

入管正字

152
文字情報基盤
58,815© Hitachi, Ltd. 2018. All rights reserved.

48

既存COBOL資産を有効活用した事例紹介
6. ～国際標準の文字情報基盤に対応するために～

文字を受け入れるときの注意 コード、エンコードの正規化をする
 決めた範囲を超えた文字を入れられないようにする（丁寧に謝る）
 一般向けに送信する文字範囲はJISの第一～第四水準までとする(電子政府構築の方針)
 範囲を超えた文字を入力しようとした際に，その代替案を(親切に)ガイドする(検索、縮退)「そのシステムで使うことにした文字のセットを明確にし、そのセットから外れた文字を受け取ったときには、警告を出してそれを拒絶するなどの機能を埋め込むことが求められる」© Hitachi, Ltd. 2018. All rights reserved.

49

6. 既存COBOL資産を有効活用した事例紹介～国際標準の文字情報基盤に対応するために～

A行政分野ユーザ様の事例【課題】 短期間で、既存資産を有効利用して開発コスト抑制、
業務プログラム・業務データ品質の確保
窓口機関

A行政データセンター
ネットワーク関連機関
ネットワーク

参照

業務
データ
A行政情報
システム

抽出／転送
業務データ
帳票発行
A行政情報
業務データ管理システム

業務端末

事例の 既存COBOL資産を有効利用し、Unicode(IVS)対応を実現
既存COBOL資産への改修を最大限抑制する動的マッピング採用
特徴 （COBOL資産：約900本、250Kstep）
全体6.0ヶ月© Hitachi, Ltd. 2018. All rights reserved.

50

既存COBOL資産を有効活用した事例紹介
6. ～国際標準の文字情報基盤に対応するために～

既存COBOLシステムをUnicodeデータに対応させるには・・・ バイト数を意識するCOBOL資産は、IVSのマルチバイト対応には多大な工数を費やす。
 レガシー資産を有効活用するため、従来のシフトJISをそのまま使用。
AP/DBサーバ（Windows）
シフトJIS
UTF-16

帳票生成サーバ(Windows）

印刷管理

バッチ業務システム（COBOL）
コード変換ライブラリ
シフトJIS→
UTF-16

UTF-16→
シフトJIS
シフト
JIS

KEIS
2004

UTF-16

8A8B

7041

845B DB40 DD00

動的マッピング
テーブル

UTF-16

UTF-16

UTF-16

UTF-16

DB

UTF-16

UTF-16

SPOOL
プリンタサーバ（Windows）

オープンプリンタ：

バッチ業務で扱う文字コードを変更せずに対応© Hitachi, Ltd. 2018. All rights reserved.

51

7. まとめ© Hitachi, Ltd. 2018. All rights reserved.

52

7.まとめSociety5.0
基盤構築の加速実現に向けた府省などの取り組み
データ連携のための相互運用性の確保

政策動向の動き

データ等の標準化
データ流通基盤
UTF-8/16 + IVS

シフトJIS/EUC

接続先
システム

既存システム(COBOL等)

IMI
共通語彙基盤
文字情報基盤

動的マッピングによるコード変換

ITモダナイゼーション
ソリューション

UTF-8/16+ IVS© Hitachi, Ltd. 2018. All rights reserved.

53

7.まとめモダナイゼーション技術についての問い合わせ■株式会社 日立製作所 サービスプラットフォーム事業本部 IoT・クラウドサービス事業部

事業推進本部 ミドルウェアソリューション窓口
E-mail: midsol-p@itg.hitachi.co.jp

関連するURL■ITモダナイゼーション ソリューション
http://www.hitachi.co.jp/mid-sol/search_s/modernization/■COBOL2002
http://www.hitachi.co.jp/soft/cobol/© Hitachi, Ltd. 2018. All rights reserved.

54

ご清聴ありがとうございました

ITモダナイゼーションSummit 2018 ～どうする？最後のレガシー～

2018/4/13
株式会社 日立製作所
公共システム事業部 全国公共システム第一本部

河合 孝志
UCS-2 : UCS-2とは、国際符号化文字集合(Universal Coded Character Set)の部分集合のこと。
符号化文字集合の国際規格の1つであるISO/IEC 10646として定められており、2バイトの値として定義されている。
UTF-8 : UCS/Unicodeを8ビット系システムで扱えるよう、8ビット×1～6バイトに変換するエンコード方式。（ASCIIと同じ文字セット部分は1バイト、それ以外は2～6バイト）
UTF-16: UCS／Unicodeにおいて、1文字を16ビット一つまたは二つで表現するエンコード方式、16ビットを二つ使うことで16面拡張する。
（サロゲート以外の文字はUCS-2の２バイトと同じ16ビット、拡張16面の文字はサロゲートペアの32ビットで表現）
EUC: UNIX上で日本語の文字を扱う場合にもっとも多く利用されている文字コード（符号化方式）のひとつである。
JEF: JEF漢字コード（Japanese processing Extended Feature）は、1979年に富士通が策定した文字コード。
JIPS: JIPS（Japanese Information Processing System）はNECが開発した日本語処理システムの名前であり、システム上で使われる漢字コード。
KEIS : 「Kanji processing Extended Information System」は日立製作所が開発した日本語処理システムの名前であり、システム上で使われる漢字コード。

・HITACHIは、株式会社 日立製作所の商標または登録商標です。
・Microsoft、Visual Basic、Windows、Windows Server、およびWindows Vistaは、米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
・OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
・その他記載の会社名、製品名は、それぞれの会社の商標または登録商標です。
製品の改良により予告なく記載されている仕様が変更になることがあります。

© Hitachi, Ltd. 2018. All rights reserved.

55