Q. How many flows can I create between 2 functions?
- You can create 1 flow step between any 2 functions.
- This flow step carry any number of information elements.
- Details like whether the flow step is request/response should be modelled as a property, e.g. exchange type = request/response, or not modelled at all because it’s not important in this high level modelling. In AIM modelling, you should only model the primary direction of the information flow.
- A better approach to what you may initially approach as request/response is using 2 components to hold multiple functions, to model round-tripping some information as shown below as 2 possible modelling options in the diagram below. This lets you more specifically identify functions responsible for creating/sending information and receiving/processing information, as well as being able to tag each flow step with different ‘time’ attributes to help identify discrete and elapsed processing bottlenecks.
- The general rule when modelling flow steps is to model the direction in which business information flows, and ignore the technical details, e.g. request/response vs one-way, or sync vs async, or push vs pull. These can be modelled as attributes of the flow step if you wish, but are ultimately not important when modelling business information flows at a high level.