4

VB6 への移行に関して多くの質問が寄せられていることは承知していますが、私の正確な状況が回答されているとは思えません。

基本的に、私たちの会社はミッション クリティカルな VB6 基幹業務アプリを移行したいと考えています。このアプリは非常に大きく、カスタム ライブラリを使用して他の社内プログラムと通信し、ソースにアクセスできない dll もあります。このレガシー アプリでは、「ベスト プラクティスが使用されている」ようなものは何もありません。実際、ほとんどすべての変数はグローバル バリアントであり、印刷などのほとんどのコードは必要な場所にコピー アンド ペーストされているだけです。まあ、コピーして貼り付けて、少しだけ変更しました...

移行を試みる必要がある場合、VB.NET と C#.NET の間の決定は私たち次第であり、彼らはアプリケーションを Web ベースの形式に移行する可能性に対応することを望んでいます。経営陣は、外部の移住会社にお金をかけません。

もう 1 つのオプションは、仮想化を使用して Visual Basic 6.0 クライアント サーバー アプリケーションを保持する方法を検討しているインフラストラクチャ チームによるものです。

上司は大まかな見積もりとアドバイスを求めていますが、経営陣は 2010 年 4 月までに完了してほしいと言っています。

はい、私たちはそれを笑いました。

私の質問は次のとおりです。

仮想化は開発チームの観点から非常に望ましいオプションであるため、仮想化パスと共有する経験のある人はいますか? うまくいきましたか?あなたが警告する落とし穴はありますか?

以前のシステム アナリストは 1 ~ 2 年の見積もりを出していましたが、経営陣は常に 2 ~ 4 か月の期間を要求しています。これは非常識だと彼らに納得させるためのアドバイスはありますか?

大規模な VB6 アプリを Web アプリに正常に移行した人はいますか? 以前のVB6 移行に関する質問の 1 つに、セクションを .NET 対応の COM ライブラリに変換して VB6 アプリを中空にするという回答がありました。このアプローチは使用できますか?ここで成功した人はいますか?

4

4 に答える 4

5

彼らに正気でないことを納得させるためのアドバイスの 1 つは、タスクを可能な限り小さな単位に分解し、見積もりを出して経営陣に提示することです。経営陣が現実的な見積もりを出せないことが多いのは、目の前のタスクの範囲を理解していないためです。したがって、タスクを細分化して、実際に必要な作業を彼らに見せれば、彼らを納得させやすくなります。または、タスクのサブセットを選択して一連のリリースを行うことを再検討してください。

.net への「移植」に関しては、vb6 プログラムをモジュール (COM) に書き直し、その機能を新しい .net アプリに組み込み、モジュールを次から次へとお気に入りに少しずつ書き直す方法があります。ネット言語。その音からすると、これは他のアプローチと同じくらい面倒かもしれません。

于 2009-11-09T04:13:58.340 に答える
4

私は数ヶ月前に同じ状況にありました。最終的に、私はプレゼンテーションの概要をまとめました。

  • VB6 のバージョンを維持して維持しようとすると、最終的にどうなるか
  • .NET への部分的な移行を行った場合に発生するであろう地獄 (および無駄な時間)
  • アプリケーション全体(およびそれが使用するすべてのもの) を .NETに移植し、従来のコードベースを破棄するのは、どれほど高速でしょうか?

また、参考までに、4 か月のタイムフレームが間に合わなかった理由を経営陣に説明した方法を次に示します。

この製品を社内で 6 年以上使用しています。最初から、定期的に変更、追加、またはその他の作業が行われてきました。このソリューション全体を、現在の場所に到達するのにかかった時間の 15 分の 1 で書き直すことができると考える理由は何ですか?

出来た!

于 2009-11-09T04:13:11.213 に答える
3

製品/保守として VB6 で記述されたソフトウェアがまだいくつかありますが、3/4 年前に C# に切り替えることにしました。これは、少なくともネイティブの Win32 API を使い始めるまでは、VB6 には多くの制限があるためです (ただし、C++ を使用する場合とそれほど違いはありません)。
.Net は、非常に優れたツールを使用し、強力な順序付けの方向 (タイプ セーフ、強力なタイピング、コード分析、スケーラブルなど) を推進する、非常によくパッケージ化されたフレームワークを提供します。
構文が C++、Java、Javascript (C ライク) に似ているため、VB.Net ではなく C# を選択しましたが、それは私たちの視点にすぎません。
私にとって、アプリを VB6 から Web に変えることは、自転車から野菜スープに切り替えるようなものです...うん! それらを比較することはできません...まったく異なるフレームワーク、まったく異なる開発など。
Web ベースの「ヘビーアクティブ」ソリューションの間接的な経験がいくつかありましたが、悪夢がありました... 経済的な観点からも、絶対に推奨されていません。それはピサの塔のようです (毎日崩壊する可能性があります)。

于 2009-11-09T05:29:44.350 に答える
2

Microsoft Corp は、成功した VB6 移行プロジェクトに基づく世界的なケース スタディを公開しました。

http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000006181

于 2009-12-16T15:54:15.470 に答える