【VBマイグレーション道場2】移行時の検討項目
マイグレーションは、低コスト・短期間ですが、それでも少なくないIT投資と期間が必要となります。プロジェクト成功には、準備段階「移行性検証」のフェーズが大事です。今回は「VBマイグレーション時に検討するべきこと」をテーマにお伝えします。
前回は【VBマイグレーション道場1】簡単そうで実は難しい 成功秘訣「システムの棚卸とスリム化」というテーマで、VBマイグレーションの着手前の準備段階についてお話ししました。今回のテーマは「移行時の検討項目」というテーマでお伝えしていきたいと思います。
実際の移行時に検討すべきこと
「システムの棚卸」により、「使用しているコントロールの洗い出し」「システム全体の規模(ステップ数、画面数、帳票数)」が把握でき、「スリム化」により、マイグレーションを行う対象(ソースコード)を必要最小限にすることができました。
よし、じゃあマイグレーションを始めよう!、、、という訳にはいきません。当社では、まず初めに「移行性検証」という聞き馴染みのないフェーズを行うことにしています。
プロジェクトの成功のために
移行性検証とは、その名前が示すように、移行(マイグレーション)の可能性やリスクの検証を行うことを目的としています。たとえばプロジェクト固有の事情を考慮したうえで、標準的な「計画」「ツール」「作業手順」「生産性」をより実情に見合った精度の高いものにします。では、どのように、この移行性検証を行っていくのか?というところを見ていきましょう。
◇移行性検証
「移行性検証」では、サンプリングした対象(全資産の数%)に対してマイグレーションを行います。サンプリングの対象は、下記の観点から、お客さまの全資産を代表するような特徴的なものを選んでいくことが重要です。
- 使用しているコントロールを網羅する
- 機能やシステム区分を網羅する
- お客様基準の選定
このような観点でサンプリングを行い、実際にマイグレーションを行うことにより、潜在的なリスクやツール変換では難しいコードなどを把握することができます。
サンプルマイグレーションで得られた課題は、残りのシステム資産をマイグレーションする際に活かします。例えば、ツールでは変換できないコードをツール改修で対応させる、プロジェクトに当時参画したプログラマのコーディングの癖や特徴を把握する、といった具合です。
机上だけでは知ることができない課題を抽出して、対策を講じるのが「移行性検証」です。また、このことにより正確な計画を立てることが可能となります。
Visual Basic 6.0の壁
1998年にMicrosoftからリリースされた「Visual Basic 6.0(通称VB6)」。
ActiveXコンポーネントとして公開されていたDAOやADO、oo4oなどを使用して、SQL ServerやOracle DBを制御することができたため、当時、多くのユーザーがこのプログラミング言語を使用してシステムを構築しました。あまりの人気のため、また純正コンポーネントでは実現が困難であったり工数が大きくかかるものもあって、このVB6のためのサードパーティ製品が多く登場し、これを組み込みながらシステムを構築するのが、いわば当たり前の時代でした。各社がリリースするサードパーティを紹介するための雑誌が発売されていたほどです。しかし、今となっては、これがVB6をマイグレーションするときのひとつの壁となるケースが多くなっています。
VB6をその後継言語である「Visual Basic .NET(通称.NET)」にマイグレーションするとします。もちろん、サードパーティも.NETで利用できるものにバージョンアップしなければなりません。しかし、既にバージョンアップのリリースを中断してしまった、あるいは開発元のベンダーが存在しない、といったサードパーティは数多く存在しています。このとき、代わりになるサードパーティに切り替えたり、新しくその機能を作りこむ必要があります。これは、マイグレーションを進めるにあたって大きな課題となりえます。
とはいえ、当社はそのようなケースを何度も経験してきましたので、最善の方法をご提案できると考えています。
量産
「移行性検証」が終われば、次は「量産」の工程です。
「移行性検証」サンプリングの対象とならなかった残りの多くの資産を対象としたマイグレーションを行います。しかし、「移行性検証」を経たことにより、多くの課題はすでに対策されています。「量産」フェーズではプロジェクトの推進を阻害するような技術的な課題は、そう多くは発生しないでしょう。
まとめ
マイグレーションは、スクラッチ開発による作り直しに比べれば低コスト・短期間でレガシーシステムを蘇らせる効果的な手法ですが、それでも少なくないIT投資と期間が必要になります。
プロジェクトを成功させるためには、準備段階、つまり「移行性検証」というフェーズを大事にしていかなければならないと、当社は考えています。
次回は、「品質の確保と現新差異」というテーマで、どのようにして変換したマイグレーションプロダクトの品質を確保していくのか?というところについてお話しいたします。
<関連記事>
【VBマイグレーション道場1】簡単そうで実は難しい 成功秘訣「システムの棚卸とスリム化」
【VBマイグレーション道場3】品質確保と現新差異