Preliminary Software Engineering
Unit 1 - Programming Fundamentals
Unit 1 - Programming Fundamentals
  • 1 - Programming Fundamentals
    • Programming Fundamentals Content
  • 2 - Python
    • Expected Python Knowledge
    • GitHub
    • Learning Python
    • Data Structures and File Management
      • Data Structures
        • Lists
        • Arrays
          • Single and Multi-Dimensional Arrays
        • Lists vs Arrays
          • Activities
        • Tuples
        • Sets
        • Dictionaries
          • Activities
      • File Handling
        • Loops, Lists, Dictionaries
        • Activities
  • 3 - Theory Content
    • Theory Content Explained
      • NESA Directional Verbs
      • Responding to Directional Verbs
  • 4 - Software Development and Management
    • Approaches to Software Development
      • Waterfall Model
      • Agile Model
      • Summary: Waterfall vs Agile
      • Activities
    • Software Development Steps
      • Sample Exam Question
      • Requirements Definition
        • Understanding the Need
        • Key Questions to Ask
        • Examples
        • Activities
        • Sample Exam Question
      • Determining Specifications
        • Functional Specifications
        • Non-Functional Specifications
        • Activities
      • Design
        • Top-Down Design Approach
        • Bottom-Up Design Approach
      • Development
        • Optimising Code
      • Integration
        • Example: Payment Program
        • Activity
        • Application Programming Interface (API)
          • Example: OpenWeather API
          • Example: WeatherAPI
          • Activity: Prepare Spells
      • Testing and Debugging
        • Test Data
          • Activities
        • Testing the System
          • Activities
        • Debugging
          • Types of Errors
            • Activities
          • Python Debugger
            • Activities
          • VS Code Debugger
            • Activities
      • Installation
        • Activities
        • Sample Exam Question
      • Maintenance
  • Charts and Algorithms
    • Example: IPO Charts and Pseudocode
      • Activities
    • Algorithms, Flowcharts, Pseudocode
      • Pseudocode Activities
      • Flowchart Activities
      • Sample Exam Questions
    • Structure Charts
      • Activities
      • Sample Exam Questions
    • Data Flow Diagrams
      • Activities
    • Data Dictionaries
      • Activities
    • Decision Trees
      • Activities
      • Sample Exam Questions
    • Gantt Chart
    • Class Diagrams
      • Sample Exam Question
    • Storyboards
      • Sample Exam Question
  • Testing and Debugging
    • Test Data
      • Activities
    • Testing the System
      • Activities
    • Debugging
      • Types of Errors
        • Activities
      • Python Debugger
        • Activities
      • VS Code Debugger
        • Activities
  • Computational Thinking
    • Decomposition
    • Abstraction
    • Activities
  • Version Control
    • Git
    • GitHub
    • Activities
  • Number Systems
    • Binary Systems
    • Hexadecimal Numbers
    • Using Two's Complement
    • Activities
  • 5 - Assessment Task 1
    • Data Science Project
      • Before we Start
        • Setting up GitHub Repository
        • Setting Up Markdown Documentation
      • Examples of API Usage
        • Starter Code: NASA Scenario
        • Starter Code: Spell Book
        • Starter: Pokédex Explorer
        • Starter Code: Weather App
        • Example: OpenWeather API
        • Example: WeatherAPI
        • Example: Prepare Spells
    • Task Guide
      • Requirements Definition
      • Determining Specifications
        • Use Cases
      • Design
        • Gantt Chart
        • Structure Chart
        • Algorithms
        • Data Dictionary
      • Development
        • Comments vs DocStrings
        • UI - main.py
        • Create Python Module
          • Example: NASA Module
          • Example: WeatherFetch Module
          • Example: SpellBook Module
      • Integration
        • Example: Pokedex
      • Testing and Debugging
        • Commit Changes
      • Installation
      • Maintenance
    • Submitting Your Task
Powered by GitBook
On this page
  • Symbols
  • Example
  • System Scope & Boundaries (Level 0 DFD)
  • Further Explanation and Support
  • Intro to Context / Level 0 DF Diagrams
  • Intro to DFDs
  • Example: YouTube
  • Example: Red Light Camera
  1. Charts and Algorithms

Data Flow Diagrams

PreviousSample Exam QuestionsNextActivities

Last updated 3 months ago

Data Flow Diagrams (DFDs) map the journey of data through a system, focusing on data movement and transformation without detailing the timing or the step-by-step logic of processes.

DFD's are similar to a railroad map that shows tracks but not schedules, DFDs illustrate where and how data flows and changes across processes, which always modify data.

The diagrams use labelled arrows for data flow direction, circles for processes (emphasising action with verbs), and open rectangles for data stores—places where data rests before or after processing, allowing for process independence.

Data stores are depicted as files or databases, enabling processes to operate asynchronously or remain idle as needed.

DFDs facilitate a top-down design approach by breaking down a system into increasingly detailed subprocesses, from the overview provided by a Level 0 Context Diagram through to detailed lower-level diagrams that outline specific subprocesses, potentially excluding already-defined external entities or data stores for clarity.

Symbols

Example

System Scope & Boundaries (Level 0 DFD)

Context Diagrams, or Level 0 Data Flow Diagrams, depict the entire system as a single process, focusing on the data inputs from and outputs to the external environment, without detailing internal processes.

These diagrams highlight the sources (inputs) and destinations (outputs) of data, termed "external entities," which are outside but interact with the system.

  • System is shown as a circle

  • External entities are represented by squares.

  • Data flow is illustrated with arrows, labelling the type of data and its flow direction.

Context diagrams serve as high-level views, showing how the system exchanges data with its environment, including users, other organisations, and systems, without delving into the system’s internal workings.

Further Explanation and Support

Intro to Context / Level 0 DF Diagrams

Intro to DFDs

Example: YouTube

Example: Red Light Camera

Context Diagrams (Level 0 DFD)
Example: YouTube Context and DF Diagram
Example: Red Light Camera
DFD for a Voting System
Context Diagram (Level 0 DFD) of a Voting System