Your system or application has two crucial structures that exist in the real world—hardware deployment and software artifacts. Too often developers get lost in the details of their code without ever understanding how their work fits into the deployed application. We use a deployment diagram to document our hardware-and-software layout.
During system design, show the hardware architecture of your application with a deployment diagram. Then, as you develop your software for each subsystem, show the software as artifacts on your deployment diagram. That way, you gain an understanding of where each piece of software runs and on which piece of hardware. Finally, show the reliance of one artifact on another by means of dependency lines.
Tip Use deployment diagrams to look for places in your design where there may be too much interdependence among the pieces of hardware and software.