The structure chart models the flow or organization of code in an automated system. Structure charts partition the system into independently functioning black boxes, which represent program modules and coding specifications, and organize the black boxes into hierarchies.
Instead of representing the hierarchy by leveling, as in process modeling, the hierarchy in the structure chart forms a module “tree” represented on one diagram page. At the top of the diagram is the main control module symbol (see Module symbol), which determines the order of execution of the other modules. Each lower module performs a single function, and then passes control back to the main module.
The types of communication between modules are calls; they indicate a change in control between modules. Variations in the call notation are used to indicate the frequency of the call: see Normal Call, Asynchronous Call, and Iterative Call.
Flag symbols, sometimes referred to as couples, show the type of information contained in the call. These flag symbols are short, straight arrows with an indicator at the tail end to indicate the type of flag. The indicator at the tail end is either a circle or a square and it can be empty or filled. Flag symbols are defined by data expressions that break the data down into elements and structures. There are special rules for moving a flag symbol: see Moving a flag symbol.
Data flags indicate that data is traveling between modules. A data flag has an empty circle at its tail.
The data stores on data flow diagrams (such as Gane & Sarson data flow diagrams) and the entity symbols on Entity Relationship diagrams are comparable to global data symbol (see Global Data Symbol) and protected data symbol (see Protected Data Symbol) on structure charts. These objects include additional physical design characteristics that are presented using various notations. These data storage/file symbols are defined by data expressions that break the data down into elements and structures. Exclusive access to protected data is allowed through a series of modules gathered in an information clusters: see Information Cluster.