過去からの爆発。何かを UML にリバース エンジニアリングしたのは久しぶりなので、私の知識は古くなっているかもしれません。いずれにせよ、私が覚えている限りでは、Visio を使用したコード リバース エンジニアリングは Visual Studio の機能ではなく Visio の機能であり、Visual Studio の一部のバージョンには独自のモデリング機能があります。
Visio リバース エンジニアリングを使用するには、Visio UML アドインがインストールされていることを確認する必要があります (Visio の Professional 以上のバージョンで利用できるはずですが、既定ではインストールされていない場合があります)。
これは、古いバージョンのVisioと Visual Studio のプロセスのかなり古い手順です。プロセスはそれほど変わっていないと思います (ただし、サポートされている言語は明らかに変更されています)。
いずれにせよ、私は UML 用の Visio が好きではありませんでした (正直なところ、私は Visio が好きではありませんでした)。むしろ、モデリングにはSparx System の Enterprise Architectが好きで、.Net 2.0 で使用したときのリバース エンジニアリングは非常に優れていました。現在のバージョンが新しい機能にどのように対応しているかはわかりません。また、彼らの「ゼロから」のモデリング環境も気に入っています。
最後に、UML はプログラミング言語ではなくモデリングであることを忘れないでください。つまり、ソリューションの全体的なアーキテクチャをより簡単に理解できるように、高レベルの設計を伝えることを目的としています。または、主要な動的相互作用をモデル化することもできます。これにより、モデル化された問題に対して実装または提案されたソリューションをより簡単に理解できるようになります。
リバース エンジニアリングされた UML ダイアグラムは、情報が多すぎて役に立たないことが多く、特定の言語の正確なセマンティクスを UML に変換することはいずれにしても困難です。ゼロから図を作成する方がよい場合があります。展開図とパッケージ図以外に、UML 図は高レベルの概要または特定の高レベルの動的相互作用の表現であり、開発時の表現ではないことを理解する必要があります。