Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

So, last semester I had an Information Systems course where we were supposed to create a typical CRUD site. We were given a couple of Use Cases and from then on we created Dataflow Diagrams that were used to design our database.

I've been looking around on the net, but I'm having the impression that people nowadays rarely use DFD's - at least so it seems. Is it just an impression of mine, or are they actually used?

share|improve this question

5 Answers 5

Definitely (may not be in purest form) by business analysts when they are documenting existing system or creating requirements document (specially those who haven't mastered BPMN) for systems. Developers and architects don't use them much.

share|improve this answer

They are and will still be used as long as Structured Design is used. DFD and ERD are used to document software design specifications for Structure Designed software. UML is used with Object Oriented software. Structured Design is still used for example in some organizations which maintain legacy systems. You are right it's not widely used nowadays as before. UML is more common now.

share|improve this answer

UML has -- to an extent -- replaced old data flow diagrams with newer activity diagrams.


It can show approximately the same information in a richer notation. Most examples focus on the activities, but the data "stores" can easily be added to an activity diagram.

share|improve this answer

All the time.

But its internal documentation to use. We never publish this kind of information (mostly because its not interesting to most people).

But it goes into the project document-repository and is a useful tool (especially to new people on the project to get a quick idea of what is happening). Unfortunately it can become out-dated on older projects as it is rarely updated.

share|improve this answer

Dataflow diagrams for databases are used fundamentally differently from how they are used in software development (coding).

Dataflow diagrams are used to impose access control, in that software systems that shouldn't have a business need for a certain type of data (i.e. any access that is not found on the Dataflow diagram) will be denied such access.

If access control are not at all important, then all software systems could simply be allowed full access to all parts of the database, and dataflow might not need to be formally documented.

As pointed out by S.Lott and Pratik, activity diagram and BPMN are better ways to capture the process.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.