メルマガ
会員
募集中

「VBマイグレーション」簡単そうで実は難しい 成功させるための秘訣

2022.2.1(更新日:2022.5.27)

Visual Basic誕生から30年

昨年、最初のVisualBasicがリリースされて30年が経ったのをご存じでしょうか?当時はまだCOBOLやC言語が主流であまり見向きもされませんでした。しかし、Visual Basic 4.0あたりからビジネス開発用の言語として注目されはじめ、Visual Basic 6.0(以下VB6)の登場で各企業が次々と採用していきました。


VB6がリリースされて既に24年。既にサポートが切れ、対応できるOSもWindows7まで・・最前線で活躍してきたシステムもバージョンアップを余儀なくされ、お尻に火が付いたシステム担当者は、.NET製品に標準装備されているアップグレードウィザードでバージョンアップを試みます。


しかし、出来上がった変換結果は万単位のエラーとワーニング。個別に修正していくのは不可能に近い・・・

サードパーティー製品の壁

VB6での開発時に、サードパーティー製品のActiveXコントロールが盛りあがりました。標準のコントロールよりも使い勝手がよく見た目もかっこいい。筆者は当時、各都道府県の形をしたボタンや、並べると車や飛行機の操縦席のようになるコントロールを売っているのを技術情報雑誌で見かけたことがあります。


しかし、それらのActiveXコントロールは各社が独自に開発しているため、当然VBのバージョンアップに併せた対応は行っていません。そうなると画面自体が全く動かなくなってしまう。対策を取れずに延命されているVB6のシステムが未だに多く残っているようです。

さて、今回はこうして困ったシステム担当者さんがVBマイグレーションをITベンダーに依頼される際に、どうすれば成功させられるかを全3回に渡り解説していきたいと思います。

第1回 【システムの棚卸とスリム化】

第2回 【VBマイグレーション時に検討するべきこと】

第3回 【品質の確保と現新差異】

第1回 【システムの棚卸とスリム化】

マイグレーションを行う際に必ず必要なのが、現行システムの棚卸です。ここで、事前に調べておくことが必要なのが、

 ・使用しているコントロールの洗い出し
 ・システム全体の規模(ステップ数、画面数、帳票数)
この2点です。

コントロールの洗い出し

VB標準のコントロールのみ使用している場合は、課題が多くなるVBマイグレーションの中でも非常に軽微になります。

サードパーティー製のActiveXコントロールや、独自に開発したカスタムコントロールが含まれている場合は、その種類や数により難易度が上がっていきます。影響度の大きさは違えど、ほぼ全てのコントロールにこのような課題が降りかかってくるのです。これらを個別に対策し、コントロールの数だけ対応が必要です。

システム規模の調査

次にシステムの規模です。ベンダーに見積を依頼する場合はできる限り余計なソースは排除しておくべきです。なぜならマイグレーションはプログラムステップ数がそのまま見積金額に比例するからです。開発のフォルダをそのまま丸ごとベンダーに渡した場合、その中にバックアップファイルが入っていてもすべてマイグレーションの対象ソースとみなして見積りをされてしまいます。※その方が儲かりますから・・・

ただ、長年保守をし続けてきたシステム。管理者も何代も入れ替わりブラックボックスのスパゲティ状態で、増改築を続け迷路化してしまった「熱海の旅館化」したシステムはもはや手が付けられない状態になっていないでしょうか?


そのために、マイグレーション前に余計な処理を排除し贅肉を落すスリム化を行うかどうかを検討してください。見積金額が劇的に下げられるかもしれません。但し、ここで注意すべきはスリム化の作業工数が見積金額の減額を超えてしまわないようにすることです。超えてしまっては意味がありません。

過去事例:見積時のスリム化効果

過去にこのような例があります。最初にソースが入ったフォルダをUSBメモリに入れ、見積を依頼されました。中のソースを確認し見積りしたところ、4,000万円とでました。ただ、システムの画面数や機能からして明らかにステップ数が多いのです。


改めてお客様にソースの棚卸とスリム化分析を提案しました。ここでかかった費用は200万円です。結果、見積金額はほぼ半分の2,200万円、棚卸・分析費用を入れても2,400万円となるのです。弊社はこのようなパターンのお客様が大変多くいらっしゃるため、不要な資産を割り出すためのツールを独自に用意しています。

このように見積段階から考慮する点は多くあります。できれば、VBマイグレーションの経験が豊富なITベンダーに任せるのが安心です。

今回は、【システムの棚卸とスリム化】を見てきました。次回は、【VBマイグレーション時に検討するべきこと】について解説していきます。