In Unit 2, students are required to engage with and learn subject matter through the use of the various phases of the problem-solving process in Digital Solutions. Students will optimise a given database and use programming skills acquired in Unit 1 to write procedural text-based code to generate a solution that interacts with an existing database via structured query language (SQL). Students will plan, develop and generate the interface and code to enable the user to insert, update, retrieve and delete data using an existing database via SQL. Prior to inserting the data, the system will validate the data being entered to ensure its integrity and reliability for use and storage. Retrieved data will be displayed to the user in an appropriate format, such as text or a symbolic visual form.

Students are required to understand the structure of a database, along with how primary and foreign keys and data types affect the performance of the database. Students will evaluate the security, privacy and ethical effects of storing data in databases from individual, organisational and government perspectives.

Unit requirements
Teachers provide students with appropriately structured real-world problems that enable them to apply ideas, principles and processes of digital technologies. Students learn about and through the problem-solving process in Digital Solutions as they work individually or collaboratively to solve identified real-world digital problems that require new or re-imagined solutions.

Unit Objectives

Unit objectives are drawn from the syllabus objectives and are contextualised for the subject matter and requirements of the unit. Each unit objective must be assessed at least once.

Students will:

  1. recognise and describe programming elements, data and useability principles, and data management processes
  2. symbolise and explain information, ideas and data flow relationships within and between systems related to programming problems
  3. analyse problems and information related to the selected technology context
  4. determine solution requirements and prescribed and self-determined criteria of a programming problem
  5. synthesise information and ideas to determine possible digital solutions
  6. generate user interface and programmed components of the prototype digital solution
  7. evaluate impacts, components and solutions against criteria to make refinements and justified recommendations
  8. make decisions about and use mode-appropriate features, language and conventions for particular purposes and contexts.


Subject Matter:

Note, subject matter has been identified (1.c.2, 2.b.1 etc for ease of reference)


Topic1: Data-driven problems and solution requirements

In this topic, students will:

  1. understand the nature of data-driven problems
  2. analyse problems associated with data insertion, including variations in data formats, data structures, validation rules and data requirements
  3. determine manageable aspects of a problem through decomposition, pattern recognition and analysis of
    1. user requirements
    2. programming options including
      • interactivity, e.g. user input and presentation of data
      • data models, and storage and output requirements
  4. recognise data types, constraints, and primary and foreign keys
  5. recognise and describe useability principles including accessibility, effectiveness, safety, utility and learnability
  6. symbolise
    1. the links between external entities, data sources, data flow, processes and data storage in annotated context diagrams or data flow diagrams
    2. algorithmic steps as pseudocode
  7. explore and communicate the personal, social and economic impacts of storing data in a database for individuals, organisations and governments
  8. explore and use the elements and principles of visual communication
    1. elements are limited to space, line, colour, shape, texture, tone, form, proportion and scale
    2. principles are limited to balance, contrast, proximity, harmony, alignment, repetition and hierarchy
  9. communicate using
    1. digital technologies–specific language
    2. language conventions, textual features such as annotations, paragraphs and sentences, and referencing conventions to convey information to particular audiences about digital solutions
    3. sketches or diagrams to present information and ideas about the problem and programmed digital solutions
    4. the modes of visual, written and spoken communication to present data and information about digital solutions.



Topic 2: Data and programming techniques

In this topic, students will:

  1. recognise the elements needed for a data-driven solution, including
    1. boundary or scope
    2. constraints and limitations of environments
    3. programming requirements, e.g. SQL and algorithms
    4. system requirements, e.g. platforms, connections, hardware and data stores
    5. the data that is required from real-world data sources, e.g. files, peripheral devices, online sources and users
    6. the personal, social and economic impacts of storing data in databases for individuals, organisations and governments
  2. understand
    1. the difference between data, information and wisdom
    2. that data-driven programming is typically applied to streams of structured data for filtering, transforming, aggregating (such as computing statistics), or calling other programs
    3. SQL syntax and use SQL statements to solve a problem
    4. that simple algorithms consist of input, process and output at various stages
    5. that data is organised in tabular form and the skills and knowledge used to normalise and link tables together
    6. the reasons and methods of database structure modification to third normal form (3NF)
  3. interpret the structure of a database represented by a relational schema (RS) to determine the relationship between data
  4. explain data principles including
    1. acquisition
    2. organisation, i.e. using appropriate naming conventions, data formats and structures
    3. representation
    4. integrity
    5. anomalies
    6. redundancy
    7. security
  5. explain
    1. the difference between data validation and data verification
    2. referential integrity, normalisation and third normal form, relational database management system
    3. the difference between primary key and foreign key
    4. relations (tables) including rows; columns; primary, secondary and foreign keys; nulls; and views within a database management system
  6. symbolise
    1. ideas for user interface and interconnecting systems using sketches, diagrams or mock-ups
    2. data flow through a system using data flow diagrams
  7. analyse and structure data and data stores to reduce redundancy and ensure completeness, consistency and integrity for use and storage
  8. apply data management processes, e.g. encryption, consistency, searching, pattern recognition and de-identification
  9. understand and use the basic constructs of an algorithm including assignment, sequence, selection, condition, iteration and modularisation
  10. symbolise well-ordered and unambiguous algorithms using pseudocode for
    1. procedural code that processes data for insertion into a database or manipulates or displays retrieved data
    2. user interaction, data validation and data presentation
  11. communicate and clarify knowledge and understanding about the purpose of code statements using code comments.



Topic 3: Prototype data solutions

In this topic, students will:

  1. identify the prescribed and self-determined criteria to plan the user interface and programmed components of proposed solutions
  2. determine appropriate data types, constraints, and primary and foreign keys
  3. evaluate and modify a database structure to third normal form (3NF)
  4. generate
    1. SQL SELECT statements, including WHERE, GROUP BY, HAVING, ORDER BY, COUNT, MIN, MAX, AVG, IN, inner-joins and sub-queries to retrieve appropriate data from existing databases
    2. SQL CREATE, INSERT, UPDATE and DELETE statements to create database tables and views, and modify stored data
  5. generate a prototype digital solution to access, manipulate and display data in a website, mobile application or interactive media that
    1. enables data to be inserted, updated, retrieved and deleted from single and multiple tables
    2. validates the data to be entered for reliability to ensure that the data is valid for use and storage
    3. includes user interfaces that will enable the insertion, updating and selection of data from/to a database
    4. creates procedural code to control user interaction, data validation, execution of SQL queries, manipulation and display of query results through the user interface
  6. test the SQL, algorithm and procedural code components of the prototype digital solution for reliability, maintainability and efficiency
  7. test the user interfaces against useability principles
  8. evaluate
    1. data quality using the prescribed criteria of accuracy and completeness
    2. the prototype digital solution against prescribed and self-determined criteria.