Featured

UML Component Diagram

In the Unified Modeling Language, a Component Diagram depicts how a software system is split up into physical components and shows the dependencies among these components. Physical components could be, for example, files, headers, link libraries, modules, executables, or packages. Component diagrams can be used to model and document any system’s architecture.
A component is an encapsulated, reusable, and replaceable part of your software. You can think of components as building blocks: you combine them to fit together (possibly building successively larger components) to form your software. Because of this, components can range in size from relatively small, about the size of a class, up to a large subsystem. Component diagrams can be combined with deployment diagrams to unify all nodes with their respective components.
UML Component Diagram
Figure uml.09 an example of a UML Component Diagram.



Modeling a component diagram is best described through an example. Figure 7 shows four components: Reporting Tool, Billboard Service, Servlet 2.2 API, and JDBC API. The arrowed lines from the Reporting Tool component to the Billboard Service, Servlet 2.2 API, and JDBC API components mean that the Reporting Tool is dependent on those three components.
If a component has a required interface, then it needs another class or component in the system to provide it. To show that a component with a required interface depends on another component that provides it, draw a dependency arrow from the dependent component's socket symbol to the providing component's ball symbol, like below figure :

Components are similar in practice to package diagrams as the define boundaries and are used to group elements into logical structures. The difference between Package Diagrams and Component diagrams is that Component Diagrams offer a more semantically rich grouping mechanism. With Component Diagrams all of the model elements are private whereas Package diagrams only display public items.




www.CodeNirvana.in

Copyright © Computer Science | Blogger Templates | Designed By Code Nirvana