system diagrams explained