事例6:リホストの影響分析

 リホストを単なるITインフラの刷新だと考えると危険だ。ハードウエアやOS、ミドルウエアを刷新すると、アプリケーションに影響を及ぼす場合がある。しかも、巨大な現行システムが対象になると、影響分析という大きな壁が待ち構えている。

 シーイーシーの藤代達也氏(第一開発サービス事業部 第二サービス部 チーフスペシャリスト)は、この影響分析に特に注力する一人だ。具体的には、OSやミドルウエアの刷新による関数や予約語、文字コードの変更パターンをナレッジ化。これを基に影響分析レポートを作成している(図6)。

図6●リホストの影響分析の例
図6●リホストの影響分析の例
インフラ刷新に伴うアプリケーションへの影響は意外に多い。シーイーシーの藤代氏のチームでは、OSやミドルウエア の刷新による関数や文字コードの変更パターンをナレッジ化。これを基に影響分析レポートを作成している
[画像のクリックで拡大表示]

 ナレッジ化しているのは、例えばOracle Database 10gから同12cに刷新した場合、どの関数が変更箇所となり、具体的にどう変更すればよいかといった情報だ。これらをベースに、現行システムのコードを分析。どのプログラムの何行目をどのように変更すべきかをレポート化している。

 「やみくもに影響分析すると、抜け・漏れが出る」と藤代氏は話す。最近終了したプロジェクトでは、Javaで開発した全9システムのうち、3システムがリホストの対象だった。ここでプライベートクラウドの構築と同時に、DB2からOracle Databaseへの切り替えがあった。このとき50万ステップのコードがあったが、ナレッジ化された情報を基に、変更箇所を特定できた。

 こうした取り組みは、テスト工数の削減にも貢献する。リホストによる影響範囲が明確なだけに、テストケースも絞れるからだ。「とはいえ、影響分析には2カ月を要した。抜け・漏れがないことを確認するには、最後はコードを目視で確認した」(藤代氏)。コードに手を入れる際は、なかなか機械的にはできないようだ。