Data Flow Diagrams were invented by Larry Constantine and provide a graphical specification for the "flow" of data through an program. It provides a way to ilustrate the various steps that may comprise a particular process with a system. Data flow diagrams may specify various levels of detail, moving from the most to the most specific. As a result, it can be a good way of showing the processes that are being modeled. It provides one of the three basic persepctives of Marting and Estrin's Systems Analysis and Design Method (the others being logical data modeling and entity behavior modeling.
Below, please find a few examples and links to software: