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
  • Data Dictionary
  • Database Schema
  • Components
  • Example of Database Tables
  1. Charts and Algorithms

Data Dictionaries

PreviousActivitiesNextActivities

Last updated 3 months ago

Databases are used to store structured data in computer systems. Relational Databases are the most common type for structured data storage.

A database organises data in tables with rows (records) and columns (attributes).

Data Dictionary

A data dictionary provides a comprehensive description of each variable stored or referred to in a system. This commonly includes variable name, data type, format, size in bytes, number of characters to display the item including number of decimal places (if applicable), the purpose of each variable and a relevant example. Any validation rules applicable to the data item can also be included.

The above data dictionary is in the expected format and is examinable.

Database Schema

To create a Relational Database, a data schema is required. A data schema is a blueprint or framework that outlines how data is organised in a database.

It defines the structure of the database in terms of the tables, columns, relationships, and constraints that make up the database. It acts as a guide for how data is stored, accessed, and managed within the database system.

Components

  • Tables: Represent entities (like customers, products, orders) in the database. Each table is a collection of related data entries.

  • Columns: Define the attributes or properties of the entity. For instance, a 'Customer' table might include columns like CustomerID, Name, Address, etc.

  • Data Types: Each column in a table is associated with a specific data type (like integer, text, date), which defines the nature of the data that can be stored in the column.

  • Primary Keys: Unique identifiers for each record in a table. They help to ensure that each record can be uniquely identified.

  • Foreign Keys: Establish relationships between tables, linking each record in one table to one or more records in another.

  • Constraints: Rules applied to table columns to enforce data integrity, such as NOT NULL, UNIQUE, CHECK, etc.

Example of Database Tables

The following is an example of database tables.

  • Each ROW is a RECORD

  • Each COLUMN represents a FIELD.

    • Data Dictionaries provide a description of each field, including data types and validation.

  • A RECORD (ROW) is made up of many FIELDS (COLUMNS).

BIG HINT: Data dictionaries are relevant for your first assessment task. Data schemas are not.

We will revisit databases in more detail in the HSC Course (Year 12).

Data Dictionary from Course Specifications
Data Schema for a Relational Database
Database Tables
Database Schema