Wat is een data flow diagram?
Een data flow diagram (DFD) geeft een visueel overzicht van de informatiestroom binnen een proces of systeem. Het maakt gebruik van symbolen zoals rechthoeken, cirkels en pijlen, én korte tekstlabels waarin de gegevensinvoer- en uitvoer, opslagpunten en de trajecten tussen diverse bestemmingen worden weergegeven. DFD's of gegevensstroomdiagrammen kunnen alles in kaart brengen, van eenvoudige, handgetekende procesoverzichten tot uitvoerige DFD's die dieper ingaan op de manier waarop gegevens worden verwerkt. Ze kunnen gebruikt worden om een bestaand systeem te analyseren of een nieuw systeem te modelleren. Net als de beste diagrammen en grafieken kan een DFD vaak beeldend “verwoorden” wat anders moeilijk in tekst valt uit te leggen. Ze zijn geschikt voor een technisch zowel als een niet-technisch publiek, van ontwikkelaars tot algemeen directeuren. Dit verklaart waarom DFD's na zovele jaren nog steeds zo geliefd zijn. Hoewel ze goed bruikbaar zijn in combinatie met data flow software en systemen, zijn ze minder geschikt voor het in kaart brengen van interactieve, realtime of database-gerichte software of systemen.
In minder dan 5 minuten aan de slag met Lucidchart
- Gebruik onze online tool om je eerste online diagram te maken op basis van een sjabloon of leeg canvas of importeer een document.
- Voeg tekst, vormen en lijnen toe om je stroomdiagram aan te passen.
- Meer informatie over het aanpassen van de stijl en opmaak in je stroomdiagram.
- Vind wat je nodig hebt met 'Functie zoeken'.
- Deel je stroomdiagram met je team om samen te werken.
Een DFD maken in Lucidchart
Nu je weet waar een data flow diagram uit bestaat, gaan we kijken hoe gemakkelijk het is om er een te maken met onze krachtige online tool. We hebben heel veel sjablonen om als uitgangspunt te gebruiken. In deze instructie gaan we een DFD van niveau 0 maken voor een online winkelervaring. Log in op he account (heb je nog geen account, meld je dan gratis aan) en volg onderstaande stappen om een DFD te maken.
1. Kies een sjabloon voor gegevensstroomdiagrammen
Klik bij Documenten op de oranje knop "+Documenten" en dubbelklik op het diagram Leeg ERD & Gegevensstroom.
2. Geef het gegevensstroomdiagram een naam
Klik op het kopje Leeg ERD & Gegevensstroom in de linkerbovenhoek van het scherm. Er verschijnt een pop-upvenster. Typ de naam van uw diagram in het tekstvak en klik op OK. In de linkerbovenhoek van het scherm verschijnt de naam van je DFD.
3. Voeg een externe entiteit toe die het proces start
In de linkerkolom van het scherm zie je een groot aantal vormen en symbolen. De vier symbolen die je nodig hebt om een DFD te maken, hebben we al gecreëerd. Je kunt ook afbeeldingen aan het diagram toevoegen. Blader door de lijst met symbolen tot je onderaan het kopje Gegevensstroom ziet.
Dit zijn alle DFD-symbolen die je nodig heeft. (Opmerking: beweeg de muis over elke vorm om te zien wat die voorstelt: proces, datastore, gegevensstroom en externe entiteit). We hebben symbolen voor de methoden Yourdon en Coad, Yourdon en DeMarco, en Gane en Sarson. Klik op Externe entiteit, houd de muisknop ingedrukt en sleep de entiteit naar de werkruimte.
Klik op de gemarkeerde tekst in het vak en typ de naam van de externe entiteit. In ons voorbeeld typen we “klant”. Je kunt de gebogen pijl in de linkerbovenhoek van het vierkant gebruiken om het symbool te draaien. Als je een symbool wilt verwijderen, klik je erop en druk je op de Delete-toets op je toetsenbord.
4. Voeg een proces toe aan het DFD
Klik op een processymbool, houd de muisknop ingedrukt en sleep het naar de gewenste plek in de werkruimte. Typ de naam van het proces in. We noemen dit proces “product toevoegen aan winkelwagen”.
5. Voeg een datastore toe aan het diagram
Klik op een datastoresymbool, houd de muisknop ingedrukt en sleep het naar de gewenste plek in de werkruimte. Typ de naam van de datastore in. We noemen de onze “winkelwagen”.
6 Voeg meer onderdelen toe aan het DFD
Sleep de juiste symbolen naar het diagram om alle externe entiteiten, processen en datastores toe te voegen. Je kunt symbolen verplaatsen door erop te klikken, de muisknop vast te houden en ze naar een nieuwe locatie te slepen. Klik op een symbool om de grootte aan te passen, klik vervolgens op het blauwe hokje in een van de hoeken, houd de muisknop ingedrukt en sleep het hokje om de vorm groter of kleiner te maken. Gebruik de achtergrond als leidraad voor het uitlijnen en meten.
7. Voeg een gegevensstroom toe aan het DFD
Dubbelklik op een entiteit, proces of datastore, klik daarna op een van de oranje cirkels en houd deze vast. Sleep de lijn naar het juiste symbool.
Tip: Je kunt het gegevensstroomproces ook creëren terwijl je het diagram maakt. Klik in dat geval op een entiteit, proces of datastore, klik daarna op een van de oranje cirkels en houd deze vast. Sleep de lijn om een pijl te tekenen. Laat de muisknop los en er verschijnt een vak met DFD-symbolen. Klik op de vorm die u wilt toevoegen, waarna die automatisch wordt gecreëerd.
8. Geef de gegevensstroom een naam
Dubbelklik op de lijn van de pijl om een naam toe te voegen die de gegevensstroom beschrijft. Er verschijnt een optie om tekst in te voeren, waar u de naam van de gegevensstroom intypt.
9. Pas het DFD aan met kleuren en lettertypes
Als je klaar bent met het basisontwerp van het diagram, kun je kleuren toevoegen aan symbolen, lettertypes wijzigen en pijlen aanpassen. Dat gaat als volgt:
- Kleuren toevoegen aan symbolen: klik op een symbool in het diagram, klik vervolgens op het pictogram kleuropvulling en kies een kleur.
Tip: je kunt meerdere symbolen dezelfde kleur geven door op het eerste onderdeel te klikken, de Shift-toets ingedrukt te houden en op de resterende vormen te klikken. Daarna klik je op het pictogram kleuropvulling en kies je een kleur.
- Het lettertype wijzigen: kies uit het menu Bewerken de optie Alles selecteren. Klik op het lettertypevak, kies een lettertype en klik daar op. Alle tekst in het diagram wordt bijgewerkt. Je kunt de andere sneltoetsen (letterkleur, lettergrootte, vet, cursief, onderstrepen en uitlijning) gebruiken om het lettertype nog verder aan te passen.
- Pijlstijl aanpassen: klik op een pijl om deze te selecteren. Klik daarna op het pijlpictogram in de menubalk en kies een van de negen andere stijlen.
Tip: Je kunt de stijl van alle pijlen wijzigen door uit het menu Bewerken de optie Alles selecteren te kiezen.
10. Voeg een titel toe en deel uw gegevensstroomdiagram
Boven aan de kolom met symbolen staat een grote letter T. Klik daarop en sleep die naar de plaats waar u een titel aan het diagram wilt toevoegen. Typ de titel en gebruik, als je het lettertype en de lettergrootte wilt aanpassen, de sneltoetsen boven in het scherm.
Je kunt jouw DFD eenvoudig via e-mail, een link en sociale media (Facebook, Twitter, Google+ en LinkedIn) met anderen delen of in een website integreren.Klik in de rechterbovenhoek van het scherm op de blauwe knop Delen en er verschijnt een pop-upvenster. Kies hoe je het DFD wilt delen en voer de juiste informatie in.
Als je een medewerker toevoegt door een e-mail te sturen met een link naar het DFD, dan kun je beiden tegelijk aan het gegevensstroomdiagram werken en overleggen via de chatfunctie (het gele pictogram in de rechterbovenhoek van het scherm).
Geschiedenis van de DFD
Het gebruik van data flow diagrams nam eind jaren zeventig een grote vlucht, vooral na publicatie van het boek Structured Design, door computerpioniers Ed Yourdon en Larry Constantine. Ze baseerden zich in dit boek op de rekenmodellen voor “gegevensstroomgrafieken” van David Martin en Gerald Estrin. Het gestructureerde ontwerpconcept werd vooral geliefd in de wereld van de softwaretechniek, en de DFD-methode profiteerde daar van mee. De methode werd populairder in het bedrijfsleven dan in de academische wereld omdat het vooral voor bedrijfsanalytische doeleinden werd gebruikt.
Daarnaast droegen er nog twee andere, gerelateerde, concepten bij aan de populariteit van DFD's:
- Object Oriented Analysis and Design (OOAD), geïntroduceerd door Yourdon en Peter Coad en gebruikt voor het analyseren en ontwerpen van een toepassing of systeem.
- Structured Systems Analysis and Design Method (SSADM), een cascade-methode gebruikt voor het analyseren en ontwerpen van informatiesystemen. De rigoreuze manier waarop informatie in dit systeem wordt gedocumenteerd staat in groot contrast tot moderne "agile" benaderingen zoals Scrum en de Dynamic Systems Development Method (DSDM).
Drie andere deskundigen die aan de opkomst van de DFD-methodologie hebben bijgedragen waren Tom DeMarco, Chris Gane en Trish Sarson. Ze werkten in verschillende combinaties samen aan een hoofddefinitie van de symbolen en notatiesystemen die in een data flow diagram gebruikt worden.
Symbolen en notatie in DFD's
Twee veelgebruikte symboolsystemen zijn naar hun makers vernoemd:
- Yourdon en Coad
- Yourdon en DeMarco
- Gane en Sarson
Een groot verschil tussen deze twee symboolsystemen is dat Yourdon-Coad en Yourdon-DeMarco cirkels gebruiken voor processen, terwijl Gane en Sarson daar rechthoeken met afgeronde hoeken voor gebruiken, ook wel ruiten genoemd. Er zijn ook andere symboolvariaties in omloop dus is het belangrijk om duidelijk en consequent om te gaan met de vormen en notatie die u gebruikt in uw communicatie en samenwerkingen met anderen.
Alle systemen maken gebruik van symbolen die de vier onderdelen van een data flow diagram weergeven.
- Externe entiteit: een extern element dat gegevens verzendt of ontvangt, en daarbij communiceert met het element dat schematisch weergegeven wordt. Een externe entiteit vormt de bron en de bestemming van de informatie die het systeem verlaat of binnenkomt. Dit kan een externe organisatie of persoon zijn, een computersysteem of een bedrijfssysteem. Deze entiteiten staan ook wel bekend als terminatoren, bronnen en 'sinks' of actoren. Ze staan meestal aan de rand van het diagram.
- Proces: een proces dat gegevens verandert en een output produceert. Het kan berekeningen uitvoeren, gegevens op een logische wijze sorteren, of de gegevensstroom aansturen op basis van zekere bedrijfsregels. Een label geeft een korte beschrijving van het proces, bijvoorbeeld “Betalen”.
- Gegevensopslag: bestanden of bewaarplaatsen waarin informatie wordt opgeslagen voor later gebruik, zoals bijvoorbeeld een database-tabel of een lidmaatschapsformulier. Elke gegevensopslag wordt voorzien van een eenvoudig label zoals “Orders”.
- Data flow: de route die de gegevens volgen op hun traject tussen de externe entiteiten, processen en opslagplaatsen. Het toont de raakvlakken met de andere componenten en wordt weergegeven in de vorm van pijlen, meestal voorzien van een label met een korte benaming zoals “Factuurgegevens”.
Notatie |
Yourdon en Coad |
Gane en Sarson |
---|---|---|
Externe entiteit | ||
Proces | ||
Datastore | ||
Gegevensstroom |
Regels en tips voor DFD's
- Elk proces moet tenminste één invoer en één uitvoer hebben.
- Elke gegevensopslag moet tenminste één inkomende en één uitgaande gegevensstroom hebben.
- Gegevens die in een systeem staan opgeslagen moeten onderdeel zijn van een proces.
- Alle processen in een DFD moeten naar een ander proces of een gegevensopslag leiden.
- Gegevens die in een systeem staan opgeslagen moeten onderdeel zijn van een proces.
Niveaus en lagen in DFD's: van contextdiagrammen tot pseudocodes
Een data flow diagram kan dieper op gegevens ingaan door er niveaus en lagen aan toe te voegen en in te zoomen op een bepaald detail. DFD-niveaus worden voorzien van een nummer 0, 1 of 2, en kunnen soms zelfs tot een derde niveau of nog hoger worden doorgevoerd. De benodigde mate van detail is afhankelijk van de omvang van hetgeen u probeert weer te geven.
- Het niveau 0 van een DFD wordt ook wel een contextdiagram genoemd. Het geeft een basisoverzicht van het hele systeem of proces dat geanalyseerd of gemodelleerd wordt. Het dient vooral als een snelle weergave van een systeem als een enkelvoudig proces op hoog niveau in relatie tot zijn externe entiteiten. Het moet gemakkelijk vatbaar zijn voor een breed publiek, inclusief belanghebbenden, bedrijfsanalisten, data-analisten en ontwikkelaars.
- Op niveau 1 wordt de contextdiagram opgedeeld en in meer detail weergegeven. Dit niveau belicht de voornaamste functies van het systeem door het globale proces van de contextdiagram in kleinere subprocessen op te delen.
- Een DFD op niveau 2 gaat weer wat dieper in op bepaalde delen van niveau 1. Er is vaak meer tekst nodig om voldoende informatie te geven over de werking van het systeem.
- Hoewel het in principe mogelijk is om de diagram nog verder te verdiepen met een derde, vierde of zelfs vijfde niveau, gaat men meestal niet verder dan niveau 3. Door teveel detail toe te voegen, wordt het diagram te ingewikkeld om te communiceren, te vergelijken of om het effectief te modelleren.
Met DFD-niveaus kunnen de opeenvolgende niveaus direct in het diagram zelf worden ingebed. Dit ziet er overzichtelijker uit en bovendien krijgt men zo gemakkelijker toegang tot de diepere niveaus.
Als er voldoende detail in de DFD's is opgenomen, kunnen ontwikkelaars en ontwerpers hier pseudocode mee schrijven. Pseudocode is een combinatie van Engels en programmeertaal. De pseudocode faciliteert de ontwikkeling van een echte programmeertaal.
Voorbeelden voor het gebruik van DFD's
Data flow diagrammen zijn zeer geschikt om verschillende soorten systemen in diverse velden te analyseren of te modelleren.
DFD's in software-ontwikkeling: Op dit gebied vond de data flow diagram zijn ingang in de jaren zeventig. DFD's bieden technische ontwikkelaars een goede, gerichte methode waarmee ze meer onderzoek kunnen uitvoeren voordat ze zich tot het echte programmeren wenden.
DFD in bedrijfsanalyse: Bedrijfsanalisten gebruiken DFD's om bestaande systemen te analyseren en inefficiënties te vinden. Door het proces in kaart te brengen, ziet u stappen die u anders had gemist of niet volledig had begrepen.
DFD's in de ontwikkeling van nieuwe bedrijfsprocessen (Business Process Re-engineering, BPR): DFD's zijn een geschikte toepassing voor het in kaart brengen en modelleren van een betere, efficiëntere gegevensstroom binnen een bedrijfsproces. BPR werd in de jaren negentig ingevoerd om organisaties te helpen hun operationele kosten te verlagen, hun klantenservice te verbeteren en hun concurrentievermogen te vergroten.
DFD in agile ontwikkeling: DFD's kunnen worden gebruikt om technische en zakelijke vereisten in kaart te brengen en beter te begrijpen. Zo kunnen bedrijven hun volgende stappen beter inplannen. Ze vormen een eenvoudige maar toch krachtige communicatie- en samenwerkingstool, vooral als men op een snelle ontwikkeling is gericht.
DFD's in systeemstructuren: Elk systeem of proces kan steeds gedetailleerder geanalyseerd worden zodat het zowel op technische als niet-technische basis verbeterd kan worden.
DFD's vs Unified Modelling Language (UML)
Terwijl een DFD laat zien hoe gegevens zich door een systeem bewegen, is UML de modelleertaal die binnen het Object Oriented Software Design wordt gebruikt om een meer gedetailleerde weergave te bieden. Een DFD vormt daarbij nog steeds een goed startpunt maar wanneer het op de werkelijke ontwikkeling van een systeem aankomt, wenden ontwikkelaars zich toch liever tot UML-diagrammen zoals klassen- en structuurdiagrammen om daarmee de vereiste specificiteit te bereiken.
Logische DFD's vs Fysieke DFD's
Dit zijn de twee categorieën van een data flow diagram. Een logische DFD visualiseert de gegevensstroom die essentieel is voor de goede werking van een bedrijf. Het focust op het bedrijf en de informatie die het nodig heeft, niet op de manier waarop het systeem werkt of zou kunnen werken. Een fysieke DFD geeft echter weer hoe het systeem in werkelijkheid is geïmplementeerd of hoe het geïmplementeerd zou kunnen worden. In een logische DFD zijn processen bijvoorbeeld vaak bedrijfsactiviteiten, terwijl in een fysieke DFD de processen meestal programma's en handmatige procedures zijn.