UNIT 2 - APPLICATION AND DATA SOLUTIONS - Subject Matter
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:
recognise and describe programming elements, data and useability principles, and data management processes
symbolise and explain information, ideas and data flow relationships within and between systems related to programming problems
analyse problems and information related to the selected technology context
determine solution requirements and prescribed and self-determined criteria of a programming problem
synthesise information and ideas to determine possible digital solutions
generate user interface and programmed components of the prototype digital solution
evaluate impacts, components and solutions against criteria to make refinements and justified recommendations
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:
understand the nature of data-driven problems
analyse problems associated with data insertion, including variations in data formats, data structures, validation rules and data requirements
determine manageable aspects of a problem through decomposition, pattern recognition and analysis of
user requirements
programming options including
interactivity, e.g. user input and presentation of data
data models, and storage and output requirements
recognise data types, constraints, and primary and foreign keys
recognise and describe useability principles including accessibility, effectiveness, safety, utility and learnability
symbolise
the links between external entities, data sources, data flow, processes and data storage in annotated context diagrams or data flow diagrams
algorithmic steps as pseudocode
explore and communicate the personal, social and economic impacts of storing data in a database for individuals, organisations and governments
explore and use the elements and principles of visual communication
elements are limited to space, line, colour, shape, texture, tone, form, proportion and scale
principles are limited to balance, contrast, proximity, harmony, alignment, repetition and hierarchy
communicate using
digital technologies–specific language
language conventions, textual features such as annotations, paragraphs and sentences, and referencing conventions to convey information to particular audiences about digital solutions
sketches or diagrams to present information and ideas about the problem and programmed digital solutions
the modes of visual, written and spoken communication to present data and information about digital solutions.
recognise the elements needed for a data-driven solution, including
boundary or scope
constraints and limitations of environments
programming requirements, e.g. SQL and algorithms
system requirements, e.g. platforms, connections, hardware and data stores
the data that is required from real-world data sources, e.g. files, peripheral devices, online sources and users
the personal, social and economic impacts of storing data in databases for individuals, organisations and governments
understand
the difference between data, information and wisdom
that data-driven programming is typically applied to streams of structured data for filtering, transforming, aggregating (such as computing statistics), or calling other programs
SQL syntax and use SQL statements to solve a problem
that simple algorithms consist of input, process and output at various stages
that data is organised in tabular form and the skills and knowledge used to normalise and link tables together
the reasons and methods of database structure modification to third normal form (3NF)
interpret the structure of a database represented by a relational schema (RS) to determine the relationship between data
explain data principles including
acquisition
organisation, i.e. using appropriate naming conventions, data formats and structures
representation
integrity
anomalies
redundancy
security
explain
the difference between data validation and data verification
referential integrity, normalisation and third normal form, relational database management system
the difference between primary key and foreign key
relations (tables) including rows; columns; primary, secondary and foreign keys; nulls; and views within a database management system
symbolise
ideas for user interface and interconnecting systems using sketches, diagrams or mock-ups
data flow through a system using data flow diagrams
analyse and structure data and data stores to reduce redundancy and ensure completeness, consistency and integrity for use and storage
apply data management processes, e.g. encryption, consistency, searching, pattern recognition and de-identification
understand and use the basic constructs of an algorithm including assignment, sequence, selection, condition, iteration and modularisation
symbolise well-ordered and unambiguous algorithms using pseudocode for
procedural code that processes data for insertion into a database or manipulates or displays retrieved data
user interaction, data validation and data presentation
communicate and clarify knowledge and understanding about the purpose of code statements using code comments.
identify the prescribed and self-determined criteria to plan the user interface and programmed components of proposed solutions
determine appropriate data types, constraints, and primary and foreign keys
evaluate and modify a database structure to third normal form (3NF)
generate
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
SQL CREATE, INSERT, UPDATE and DELETE statements to create database tables and views, and modify stored data
generate a prototype digital solution to access, manipulate and display data in a website, mobile application or interactive media that
enables data to be inserted, updated, retrieved and deleted from single and multiple tables
validates the data to be entered for reliability to ensure that the data is valid for use and storage
includes user interfaces that will enable the insertion, updating and selection of data from/to a database
creates procedural code to control user interaction, data validation, execution of SQL queries, manipulation and display of query results through the user interface
test the SQL, algorithm and procedural code components of the prototype digital solution for reliability, maintainability and efficiency
test the user interfaces against useability principles
evaluate
data quality using the prescribed criteria of accuracy and completeness
the prototype digital solution against prescribed and self-determined criteria.