私がそれらを考える方法は、システムの機能の大規模で論理的なチャンクです。単一のライブラリまたは.jarファイルにあるようなビットです。それらは、複数のノード(コンピュータ)および場所に分散されたソフトウェア集約型システムに多く関連付けられます。彼らは、主に、よく定義されたインターフェースを介して相互作用し、同じ仕事をする別のコンポーネントと交換または交換できることを考えています。たとえば、別のデータベース管理システムに変更したり、ハードウェア・ドライバーを更新したりする場合があります。
コンポーネントは、コンポーネントおよびシーケンス図で最も使用されます。
実際にコンポーネントとクラスの違いが何であるかについて議論があると思います。
- Webクライアントコンポーネント
:どちらも、あなたがそれらの間のインタフェースを備えた次のコンポーネントを持っているかもしれません—詳細について多くを知らなくてもあなたのケース—に
UML
で
分類器の概念の特殊化されています
- ビジネス/問題ロジックコンポーネントまたはコンポーネント
- 何らかのデータ管理コンポーネント。
しかし、一日の終わりには、どのような方法であれUMLを使用します。シンプルなソフトウェアプロジェクトでは、コンポーネント図を使用することによるメリットはありません。各プロジェクトチームは、作業中の抽象概念のコンテキストとレベルを定義し、それに応じて図タイプを選択する必要があります。
情報ありがとうございました! –