2012-11-12 33 views
13

は、私は私が私のVisual Studioプロジェクトをもたらす可能性http://office.microsoft.com/en-us/visio-help/about-reverse-engineering-code-to-the-uml-HP001208803.aspx上のリンクを見て、2012年Visual Studio 2012で作成されたC#コードからVisio 2010にUML図を生成するにはどうすればよいですか?

のVisual Studioで作成され、私のC#コードからUML図(シーケンス図、クラス図など)を生成するための方法を見つけようとしていますVisioに追加します。

しかし、最初の部分は、 "Visual Studio環境で、リバースエンジニアリングは、[プロジェクト]メニューのコマンドからアクティブになります。プロジェクトメニューのリバースエンジニアリングオプションが見つからないため、私のためには機能しません。

Visual Studio 2012で作成されたC#コードからVisio 2010にUML図を生成するにはどうすればよいですか?

答えて

12

マイクロソフトでは、Visioがソフトウェアエンジニアリングツールであるとは考えていません。 "Visio for Enterprise Architects"と呼ばれるバージョンがありました。これはVisual Studioとの統合です。 Visual Studioの最高水準版で利用できました。

は、私はそれがされているかもしれませんが、Visual Studio 2005でサポートされる最後だったと思います2003年

Visual Studioの究極の今持っている独自のビルトインのVisioに依存しないUML機能。

+0

組み込みのUML機能はC++のリバースエンジニアリングをサポートしていないため、これは残念です。私は今xEnOnと同じ問題を抱えています(しかし、C#の代わりにC++を使用しています)。そして、VS2012単独で、またはVisioと組み合わせて、私が望むことを達成する方法がないように聞こえるでしょうか? – JBentley

+0

Visual Studio 2012 Update 1をチェックしましたか?彼らはC++の機能を追加しました。おそらくC++のUMLサポートもその一つです。 –

+0

はい、私はアップデート1を試しました。まだ悲しいことに、C++のサポートはありません。私は彼らが追加した他の多くのC++機能が好きです(新しい項目テンプレート、GPUサポート、ユニットテストフレームワークなど)。 – JBentley

0

これは、使用している製品のバージョンによって異なります。 Visual Studio Professional 2012があり、このオプションが表示されません。これはproduct featuresを見ると理にかなっています。しかし、product features of Visual Studio 2012 Ultimateを見ると、UMLモデリングやその他のさまざまな視覚化ツールが表示されます。

+0

Trueですが、このUMLモデリング機能はVisioとは関係がありません。これは質問に関するものです。 –

0

Feature Packを使用してVisual Studio 2010の非究極のバージョンをこのUML生成に使用できます。まだVisual Studio 2012用に開発されていません。ドミニクが言及したように(彼は私にそれを打つ)、Visual Studio 2012 Ultimateはこれを許すべきです。

+0

-1:Feature PackはVisioと全く関係ありません –

5

過去からのブラスト。私は何かをUMLにリバースエンジニアリングしたので、私の知識は時代遅れかもしれません。 いずれにせよ、私が覚えている限り、Visioを使用したコードリバースエンジニアリングは、Visual Studioの機能ではなくVisioの機能です。Visual Studioの一部のバージョンでは独自のモデリング機能があります。逆VisioのUMLのアドインがインストールされていることを確認し必要なエンジニアリングVisioを使用するためには

(それがプロフェッショナルにおよびVisioのバージョンの上に利用可能にする必要がありますが、デフォルトではインストールされない場合があります。)

Here「SA古いバージョンのVisioおよびVisual Studioのプロセスではかなり古いステップです。

いずれにしても、VisioがUML(私はVisioが好きではないと言われたことはありませんでした)が好きではありませんでした。私はむしろモデル化のためにSparx System's Enterprise Architectを好んでいました。私が.NET 2.0で使用したとき、リバースエンジニアリングはかなり良いものでした。現在のバージョンが新しい機能にどのように対応しているのか分かりません。私はまた彼らの「最初から」モデリング環境が好きです。

最後に、UMLはプログラミング言語ではなくモデリングであるはずです。私。高水準の設計を伝え、ソリューションの全体的なアーキテクチャをより簡単に理解できるようにすることを意図しています。モデリングされた問題に対する実装されたまたは提案された解決策をより容易に理解することができる。

リバースエンジニアリングされたUMLダイアグラムでは、多くの場合、情報が多すぎるために有用ではなく、特定の言語の正確なセマンティクスをUMLに変換することは困難です。あなたは最初から図を作成する方が良いかもしれません。展開図やパッケージ図以外にも、UML図は、開発時の表現ではなく、高水準の概要または特定の高水準の動的対話表現を表していることを理解する必要があります。

0

メンバ(メソッド名)を選択するだけでVisual Studio Ultimate 2012はC#コードの非常に素敵なシーケンス図を生成できます。私がVBコードで同じことをすると、私のところで絶えず失敗します。

これは、SparxのEnterprise Architectとは対照的に、UMLや他のモデリングのAFAIK用の最も高度なCASEツールです。

関連する問題