A "semi-formal" way of representing computer system functions in a diagram. 
* represent major components or functions with Circles 
* actions for input by a user or system go in Rectangular Boxes 
* Databases are represented by parallel lines enclosing a phrase 
* Display or output information is represented by a box with a truncated top right corner 
from the Demurjian chapter on Software Design in Computer Science And Engineering Handbook - CRC Press 

(he attributes Ghezzi, Jazayeri and Mandrioli Fundamentals of Software Engineering ) 
See http://www.infoarchgroup.com/qrdfd.htm for more description. Or, better, see TomDeMarco, Structured Analysis and Systems Specifications (Yourdon Inc., ISBN:0138543801). 

----

What is a DFD 

	 :	Graphical Description of a System's data & how the process transform the data is known as Data Flow Diagram or simply DFD. 

Unlike detail flowcharts, DFDs do not supply detailed descriptions of modules but graphically describe a system's data & how the data interact with the system. 

To Construct a Data Flow Diagrams, we use: 
* Arrows 
** Identifies data flow-data in motion. It is a pipeline through which information flows. 
* Circles 
** Like the rectangle in flowcharts, Circles stand for a process that converts incoming data to information. 
* Open-Ended Boxes or Parallel Lines 
** An Open-Ended box represents a data/store-data at rest, or a temporary repository of data. 
* Squares. 
** A Square defines a source or destination of system data.

See http://www.infoarchgroup.com/qrdfd.htm 

      Prepared By: Shiras Ahamed, Msc Computer Science, Calicut University Campus. 
----

Actually, DFDs have broader application than just software.  They can be used to describe business processes in a way that's a lot more readable than FlowChart''''''s.

I have actually used a variation on this theme as a part of a job turnover project, wherein I had to describe everything I did and everything and everyone I touched.  The DFD variant was the cleaner, more direct way of expressing this.

And, yes, I use them as an outline tool for software design.