When designing software, we spend a lot of time and energy on understanding and specifying the control and data flow. 

The control flow describes the order in which we perform operations. Do this, then that, and finally the other thing. If X happens, then do Y. It’s the decisions and the logic that control those decisions. Control flow answers the question, “What happens next?”

The data flow describes how the information moves through the system. It starts here, and we do something with it. Then it goes over there, and we do something else with it. Data flow answers the question, “What’s being passed and how is it changing?”

Although each is separate, they don’t live in isolation. They work together to shape each other. 

Control flow sets the rules for what happens and when. Data flow carries the information that those rules act on.

The best systems balance the two. 

Get it right, and the system doesn’t just work. It flows with both purpose and adaptability. 


Discover more from johnmaconline

Subscribe to get the latest posts sent to your email.

Pin It on Pinterest

Share This

Discover more from johnmaconline

Subscribe now to keep reading and get access to the full archive.

Continue reading