SADT and IDEF0 diagrams have the following components:

 - activities (functions): nodes which specify what is done (boxes)
   they transform inputs into outputs

 - inputs: required for an activity (text or label on arc)

 - outputs: generated by an activity (text or label on arc)

 - control: of an activity (text)
   influences the transformation of inputs to outputs. Control information
   can itself contribute to the outputs, in which case the inputs can be
   empty.  
   
 - mechanisms (resources): needed for an activity (text)
   The function of an activity may be supported or performed by mechanisms
   which can be people, machines, software packages, or sub-systems which
   are specified separately.

 - dataflow arcs 
   these can denote object classes. The arcs can be split up and joined.
   input dataflow arcs enter activities from the left and output dataflow
   arcs leave activities on the right.

 - arcs indicationg control and mechanisms
   control arcs enter activities from above and mechanism arcs enter
   activities from below.

Activities are usually arranged in the shape of a waterfall. There should
be between 3 and 6 activities in a diagram. Activities in a diagram are
numbered, starting with 1. High level activities can be expanded into
sub-activities in more detailed diagrams. In a HARDY IDEF0 diagram,
activities that are expanded into more detail have a bold outline.

A numbering system is used to keep track of levels of detail. The toplevel
diagram is called A-0 and contains only one un-numbered activity. The
expansion diagram of that activity is called A0 and its activities are
numbered. The expansion diagram of activity 3 of diagram A0 would be called
A3. The expansion diagram of activity 2 of diagram A3 would be called A32,
etc. 

In an expansion of an activity the inputs, outputs, control and mechanisms
must be preserved. However, the connections may change. Controls may become
inputs, dataflow arcs are usually split. For reference purposes in the
expansion diagram the connections of a higher level activity can be
numbered. The numbers denote the connection type (I, C, O, M) and their
position (numbers per types starting with 1). For inputs and outputs the
topmost connection is the first (I1, O1), whereas for controls and
mechanisms the leftmost connection is the first (C1, M1). Note that there
should be no more than 6 connections at one side of an activity.

A glossary may be attached to a set of SADT/IDEF0 diagrams for defining
terms and expanding abbreviations. Texts may be used to explain why a
particular expansion-approach was taken, what assumptions were made, and
for other explanations and comments. Each text should be numbered to show
which diagram it refers to. For example, the first text referring to
diagram A241 is numbered A241T1.

Administrative information should include: author, project, date, version,
status, context, number, and title.
