Weaves diagrams do not capture the protocol or kinds of data that flow across component boundaries
This could be rectified through, for example, additional natural language or more formal (e.g., CSP) protocol specifications
The connection from User Interface to Calculation (via Q1) carries objects that include a burn-rate and instruct the calculation component to calculate a new Lander state. The connection from Calculation to User Interface (via Q2) indicates when the calculation is complete and also includes the termination state of the application. The connections from User Interface and Calculation to Data Store (via Q3) carry objects that either update or query the state of the Lander. The connections back to User Interface and Calculation from Data Store (via Q4) carry objects that contain the Lander state, and are sent out whenever the state of the Lander is updated.