A few people have recently asked me for a poster/cheat sheet/quick reference of the C4 model that I use for communicating and diagramming software systems. You may have seen an old copy floating around the blog, but I've made a few updates and you can grab the new version from http://static.codingthearchitecture.com/c4.pdf (PDF, A3 size).
Enjoy!
Simon is an independent consultant specializing in software architecture, and the author of Software Architecture for Developers (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.
You can find Simon on Twitter at @simonbrown ... see simonbrown.je for information about his speaking schedule, videos from past conferences and software architecture training.
Hi Edrisse ... when I draw arrows, I usually draw them from active thing to passive thing. For example, "A calls B", or "A uses B". There's nothing to prevent you from drawing arrows the other way around though (e.g. "data flows from B to A") if you like, just make sure that you annotate the arrow to describe the intent.
To answer your specific question, sure, why not. For example, perhaps your external system is providing data to a container (e.g. an application server). Or maybe that external system is calling an API or sending messages, to which your application server is subscribing. As I said, just make sure you annotate the arrow to describe the intent. Hope that helps!