It is a technique developed by Larry Constantine to express the REQUIREMENTS of system in a GRAPHICALFORM.
It shows the flow of data between various functions of system and specifies how the current system is implemented.
It is an INITIAL stage of design phase that functionally divides the requirement specifications down to the lowest level of detail.
Its graphical nature makes it a good communication TOOL between user and analyst or analyst and system designer.
It gives an overview of what data a system processes, what transformations are performed, what data are stored, what results are produced and where they flow.