2016-12-10 9 views
0

シーケンス図のすべてのオブジェクトがクラス図のクラスであるべきであると私はシーケンス&教育のウェブサイトのためのクラス図で作業していますか?シーケンス図のすべてのオブジェクトはクラス図で設計する必要がありますか?

たとえば、登録プロセスのシーケンス図では、ユーザーの情報を保存するために必要な「データベース」というオブジェクトが必要です。「日付ベース」はクラス図のクラスですか?その機能は何か?それはちょうど負荷&を保存しますか?

+0

シーケンス図の要素は、システム設計の要素を表します。そしてもちろん、あなたのシステムのどの要素もクラス図のなかに何らかの形で表現されるべきです。 – GhostCat

答えて

2

はい、データベースは、クラス図とその機能内のクラスは、(検証可能になります)、generatingErrorMessage()など

+1

さらに、クラス内の操作はシーケンス図のメッセージに直接対応しています。 –

+0

これらのメッセージが非同期信号でない限り。 –

+0

@jimlの場合、それらは受信と対応します。 – Ister

3

私はそれが形式的なレベルで、抽象化、そしてあなたの目的に依存だと思いますUMLモデル。

Martin FowlerスケッチとしてのUML、BlueprintとしてのUML、プログラミング言語としてのUMLについて語る。

この用語はいくつかの用途に使用されています。私は「UMLをスケッチとして」は特に、システム設計に関する人間と人間とのコミュニケーションを目指して人気のあるモードとして浮上していると考えています。必ずしも正式な技術仕様(すなわち、青写真)でなく、コードジェネレータ(すなわちプログラミング言語)への入力としても適していない。

完全に有効なスケッチモードでUMLを使いたい場合は、シーケンス図がクラス図で定義されたクラスのみを使用する必要はありません。実際には、シーケンス図内のオブジェクト/ライフラインの一部は、すべてのクラスのインスタンスではない:

  • 彼らはユースケース図(またはしない)で定義された「俳優」であってもよいです。俳優はしばしば人であり、そのようなものはスティックフィギュアとして表されます。 「エンドユーザー」は、シーケンス図に含める一般的なアクターです。たくさんのexamples here
  • クラスモデルに定義されていないデータベースなどの外部システムである可能性があります。あなたのシステムは、データベース、すなわち「データアクセス層」またはDALを抽象化するためのクラスまたはクラスのセットを有することができる。しかし、もう一度、あなたのシステムはDALを持っていないかもしれません。それでも、DALと実際のデータベースの境界線を越えた相互作用をシーケンス図に表示したいことがあります。

UMLをスケッチとして使用すると、外部のアクタやシステムコンポーネントによって実装されるメソッドは、あなた次第です。実際のSQL文のように、データベースクエリをexecute query、またはより具体的なものとして表示できます。あなたのダイアグラムの「正確さ」は、正確な詳細と形式で、あなたの聴衆と効果的にコミュニケーションする能力にあります。

関連する問題