シームレスな同期を備えた UML ラウンドトリップ エンジニアリング ツール?
Rationalスイートはそれを行うことを目的としています。しかし、それは非常に高価で、描画が不格好であるため (Rose の時代よりも悪い)、ほとんどの部門の手の届かないところにあります。
驚くべきことは、無料のBoumlが素晴らしい仕事をしているように見えることです。使いにくすぎる感じです。非常に多くの機能があり、無料 (!) で、非常に高速で、複雑な C++ を非常にうまくリバース エンジニアリングします。また、非常に優れたシーケンス図を含む、いくつかの優れた図のサポートもあります。インターフェイスは洗練されていませんが (常に右端のモニターにダイアログが表示されます)、非常に有能な製品の始まりがあります。インターフェイスが非常に必要最小限であり、多くの労力を費やす必要があるのは残念です。おそらく、作成者が実際の機能にほとんどの時間を費やしているためです。製品ライフサイクル全体で Bouml を使用した経験のある人はいますか?
高価なMagicDraw、非常に機能的でありながら手頃な価格のEnterprise Architect、および洗練された外観のVisual Paradigmが残ります。これらのうち、プロジェクトの C++ ヘッダーのリバース エンジニアリングで問題が発生したのは Visual Paradigm だけでした。
MagicDrawは奇妙で古い感じがします。複雑な C++ プロジェクトのラウンドトリップ エンジニアリングがシームレスであるかどうかはまだわかりませんが、単独でリバース エンジニアリングを行うのに適しています。彼らは多言語バージョンに 1800 ドル以上を要求しているため、Rationalツールと同様の価格になっています。
Enterprise Architectは、ほとんどの製品よりもはるかに安価ですが、最も機能が充実しているように思えます。C++ を完璧に解析および生成します。コメントやフォーマットもそのまま残ります。素晴らしいトレーニング資料があります。ただし、Objective-C を処理しないため、iOS と Mac OS X の混合コード プロジェクトではあまり役に立ちません。シーケンス図の自動生成はすばらしく聞こえますが、Windows .NET プロジェクトでしか機能しないようです。
Visual Architect (多言語双方向で $800 以上) は、私が出会った中で最も見栄えの良いソフトウェア モデリング ツールとはかけ離れています。いくつかの往復の問題が残っているかもしれませんが、手動でモデルを構築するために使用するのは楽しいことです. いくつかの点で、ローズよりもさらに優れています。カーソル位置で必要なツールを直感的に呼び出すことができます。しかし、前述したように、現在、モデルをソースと同期させるという目標には達していません。また、インポートが完全に機能しなかったことや、重複したクラスが (同じ名前で) 作成されたことさえ通知しないことがよくあります。また、ダイアログを使用してメッセージパラメータを入力するのが難しくなりますが、他のダイアログではパラメータをダイアグラム上で直接変更できます。(無料の Bouml は、MagicDraw などと同様に、この点で優れています。
多言語 (Java、C++、C#、ObjC++、Python、Ruby、SQL) のラウンドトリップ エンジニアリング ツールを見つけた人はいますか? カスタマイズが処理される (メッセージのカスタム パラメーターのように) 現実世界のプロジェクトに耐えられるエンジニアリング ツールはありますか?次のソースコードのインポートで一掃されませんか?
そして、すべてのフォーマットとコメントが生成時に完全に保持されます。閉じるだけでは十分ではありません。ツールがソース コードのフォーマットを台無しにする場合、開発者はツールを自分のソースで実行したいとは思わないでしょう。