subject: Identify some commonly made errors while constructing of a DFD model [print this page] Identify some commonly made errors while constructing of a DFD model
The different types of mistakes that users usually make while constructing the DFD model of systems are as follows:
Many beginners commit the mistake of drawing more than one bubble in the context diagram. A contextdiagramshould depict the system as a single bubble.
Many beginners have external entities appearing at all levels of DFDs. All external entities interacting with the system should be represented only in the context diagram. The external entities should not appear at other levels of the DFD.
It is a common oversight to have either too less or too many bubbles in a DFD. Only 3 to 7 bubbles per diagram should be allowed, i.e. each bubble should be decomposed to between 3 and 7 bubbles.
Many beginners leave different levels of DFD unbalanced.
A common mistake committed by many beginners while developing a DFD model is attempting to represent control information in a DFD. It is important to realize that a DFD is the data flow representation of a system, and it does not represent control information. For an example mistake of this kind:
- Consider the following example. A book can be searched in the library catalog by inputting its name. If the book is available in the library, then the details of the book are displayed. If the book is not listed in the catalog, then an error message is generated. While generating the DFD model for this simple problem, many beginners commit the mistake of drawing an arrow to indicate the error function is invoked after the search book. But, this is a control information and should not be shown on the DFD.
- Another error is trying to represent when or in what order different functions (processes) are invoked and neither does it represent the conditions under which different functions are invoked.
- If a bubble A invokes either the bubble B or the bubble C depending upon some conditions, we need only to represent the data that flows between bubbles A and B or bubbles A and C and not the conditions based on which the two modules are invoked.
A data store should be connected only to bubbles through data arrows. A data store cannot be connected to another data store or to an external entity.
All the functionalities of the system must be captured by the DFD model. No function of the system specified in its SRS document should be overlooked.
Only those functions of the system specified in the SRS document should be represented, i.e. the designer should not assume
Functionality of the system not specified by the SRS document and then try to represent them in the DFD.
Improper or unsatisfactory data dictionary.
The data and function names must be intuitive. Some students and even practicing engineers use symbolic data names such a, b, c, etc. Such names hinder understanding the DFD model.