In Unit 1, students will explore the creative and technical aspects of developing interactive digital solutions. They investigate algorithms, programming features and useability principles to generate small interactive solutions using programming tools and gain a practical understanding of programming features. This allows them the opportunity to explore existing and developing trends involving digital technologies.
Unit requirements
In this unit, 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: explore, develop, generate and evaluate.
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 and useability principles
symbolise and explain information, ideas and interrelationships related to programming problems
analyse problems and information related to a selected technology context
determine user experience and programming requirements, and self-determined and prescribed criteria of a programming problem
synthesise information and ideas to determine possible prototype 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, 3.h.2.3 etc for ease of reference)
methods of breaking down problems into parts using computational thinking and thinking tools, e.g. mind maps
understand and describe personal, social and economic impacts
analyse problems to identify
the human need, want or opportunity that requires a new or re-imagined digital solution
essential elements, components and features of problems in Digital Solutions
where and how digital technologies are used to solve problems to meet personal, societal and organisational needs, e.g. through search engines, robotics, mobile phone applications, automobile control systems, wearable devices, and the use of smart objects in the Internet of Things
explore existing solutions to similar problems, e.g. existing games or websites
analyse a given problem to identify
the boundary or scope of the problem
constraints and limitations of the environment
the requirements of the solution
the user perspective and user-experience requirements
technical issues of the problem that influence the user-interface requirements
missing, required or unnecessary facts or information
prescribed and self-determined criteria to evaluate the personal, social and economic impacts of the solution
appraise information and ideas
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.
useability principles including accessibility, effectiveness, safety, utility and learnability
explore existing user interfaces to
identify pitfalls and useful solutions
determine how user characteristics influence the user-interface requirements and user experience for problems and solutions in relation to the useability principles
symbolise ideas for a user interface using sketches, diagrams, schematic diagrams or mock-ups
generate user interfaces by investigating and applying useability principles
evaluate and make recommendations about user interfaces based on useability principles
recognise and describe programming syntax and rules
understand that simple algorithms consist of input, process and output at various stages
understand and use the basic algorithm constructs including
assignment: used to store the value of an expression into a variable
sequence: a number of instructions processed one after the other
selection: the next instruction to be executed depends on a ‘condition’
condition: a logical expression that evaluates to true or false
iteration: a number of instructions are repeated
modularisation: used for reducing the complexity of a system by deconstructing into more or less independent units or modules
represent algorithms using pseudocode by
identifying and describing the steps and their behaviour in the algorithm
identifying and explaining the algorithmic steps required for a programmed solution
symbolise algorithms and interrelationships with sketches and diagrams
understand the five basic features of programming
variables
control structures
data structures
syntax
libraries and classes
recognise, describe and use good programming practices, including dependability, efficiency, testing, debugging, error correction, coding conventions including commenting, consistent naming conventions, code simplicity and portability
identify and describe
the purpose of code syntax and rules
the scope and use of local and global variables
code object/event triggers and their effect on user interfaces
explore
programming development tools to understand how to use them effectively
the use of a procedural text-based language for
writing and modifying code and using existing code blocks or statements
interpreting programming language rules and syntax
analysing and critiquing the end result of code statements using input or output evidence, i.e. runtime evidence
functions and procedures with efficient and maintainable code that
includes reuseable coded components
responds to keyboard and mouse events
uses variables, selection structures, counted loops, while loops and single, multi-branch and nested conditional logic/statements
uses operators, including arithmetic (+, –, *, /, integer, modulus, exponent), comparison (<, >, <=, >=, equal, not equal) and logical (AND, OR, NOT)
the purpose of code statements by writing code and using existing code blocks or statements
object/event triggers and develop explanations about their effect/s on user interfaces
communicate and clarify knowledge and understanding about the purpose of code statements using code comments.