Software engineering is one of the most in-demand careers in modern time. Careers.govt.nz rates job prospects as "very high" and starting salaries at 50k-100k. The ability to code is becoming a "must have" skill even for people who don't end up in the industry as careers in web development, data science, game development, business analytics, IT and telecommunication, robotics, and AI all benefit from a sound foundational knowledge of programming.
This course will cover Programming, HCI and Web Development as you learn foundational knowledge of the Python, HTML and CSS languages.
This is the core skill of the Software Engineering course. These two units teach you all that you need to know to improve and refine your Python programming.
The optional Python assessment is using the brand new NCEA-Auto and is a first attempt for most students to sit AS92004- Create a computer program. It is a great introduction to automated testing and is great preperation for later years, particularly for students who wnt to go on to sit scholarship programming in year 12 or 13.
Both units will take approximately 8-10 weeks.
These two units teach the basics of Database Design and Development.
This includes learning the Structured Query Language (SQL) that is the most popular and common way to interact with databases in the world.
The assessment provides a second opportunity for students to be assessed against AS92004- Create a computer program. The assessment is over a longer period of time and allows students to design a database of their own choice and develop a Python interface to that data.
Both units will take approximately 8-10 weeks
These two units of work allow students to become beginner Front End developers by teaching them HTML and CSS and having them design and develop their very own Website.
The Design in this is very light; some basic Layout tips and tricks, some sketches and a "high fidelity" mockup in Figma. For a more in depth design unit, you may want to start with the Web Design unit below.
This Website Outcome Unit Assesses against AS92005- Develop a digital technologies outcome.
Both Units will take approximately 8-10 weeks
Web Design can be done to support the Web Outcome Unit or as a stand alone at the end of the year. It is a focussed portfolio Unit allowing student to demonstrate manaakitanga and kaitiakitanga as they design a website for a purpose. It covers AS92007- Design a digital technologies outcome. Will take approx 5 weeks.
Human Computer Interaction is a focussed Unit of work coveriing all you need to sit the AS92006- Demonstrate understanding of usability in human-computer interfaces. This is essential pereration for the exam at the end of the year. Will take approximately 5 weeks.
Teacher can make a decision about what units to do and when to fit with their own calendar. There is probably not enough time to do all the standards. Approximate timings are included in each unit but you may wish to adjust those for your students. The calender above is intended as an indication of what your year could look like. Please feel free to change it!
Python is the worlds number one programming language and is used extensively by high school and University courses to teach programming. So it's a great place to start. This course will teach and assess Python against AS92004: Create a computer program worth 5 Credits in term 1.
SQL and Data are still in super high demand and the course integrates the learning of database design with Python. After learning about data design and how to use SQL to query, you will learn how to use the SQLite3 library in Python to allow you to write database programs. Your work in this unit will be assessed against AS92004: Create a computer program. This is a second assessment opportunity for this standard and is done over a longer period of time for those students who don't do their best work in exams.
Website Development is next. You'll learn HTML and CSS from Grok and a scaffolded tutorial to make a complete website using HTML/CSS, VSCode and Github to deploy a live website to the world. That lets you launch in to designing and making your own website to ba assessed against AS92005- Develop a digital technologies outcome. You'll use a simple "agile" software engineering process, planning testing and refining your website as you go over several weeks.
Externals
HCI is essential knowledge and being able to understand Neilsen's Heuristics as they apply to any computer interface will carry you into the future as you develop your digitech outcomes in following following years. This unit prepares you for AS92006: Demonstrate understanding of usability in human-computer interfaces. Students will be expected to sit a derived grade exam in Term 3 so learning this topic needs to done before then. The final exam is an External Exam during the standard NCEA exam period in November.
Web Design (not development!!) is a good choice of external. It could be used before developing your own website in the Website Outcome unit, however in 2026, this standard is an exam during the external exams in term 4. So making a brand new design for a "better" website later in the year could be good practice. In the unit of work you'll use kaitiakitanga and manaakitanga to develop a design for a website with a purpose and a target audience. Note that the design is a series of sketches, wireframes and a final high fidelity mock up. It must not contain any HTML/CSS. The exam will consist of a series of questions that ask about your design, the process you used, feedback you gathered and refinements you made to design a fit-for-pupose website.
Within authentic contexts and taking account of end-users, students determine and compare the “cost” (computational complexity) of two iterative algorithms for the same problem size. They understand the concept of compression coding for different media types, its typical uses, and how it enables widely used technologies to function.
Students use an iterative process to design, develop, document and test basic computer programs. They apply design principles and usability heuristics to their own designs and evaluate user interfaces in terms of them.
Through usability heuristics, students draw on interactive design principles that guarantee usability and provide a simple, quick testing-regime.
In authentic contexts, students investigate and consider possible solutions for a given context or issue. With support, they use an iterative process to design, develop, store and test digital outcomes, identifying and evaluating relevant social, ethical and end-user considerations. They use information from testing and apply appropriate tools, techniques, procedures and protocols to improve the quality of the outcomes and to ensure they are fit-for-purpose and meet end-user requirements.
The world of computer science and programming is rapidly changing. The use of AI, software and algorithms have impacts on people, both positively and negatively. We have a responsibility to understand those impacts and be responsible creators. Writing code for humans, making interfaces that consider how humans think and interact, and being responsible with our data are all part of this course.
Building software is not like building a house or a bridge. Software is more fluid and you can iterate quickly and keep the clients involved throughout the development. Agile development is a recognized and widely used development process that you will use in this course. It will involve planning, testing and trialling in an iterative manner and adapting to what you learn as you develop your outcomes.
Programs are everywhere. You are reading this on a webpage and someone had to write the code behind it. And data sits in behind it all. This course gives you the freedom to solve problems. You'll choose a purpose and a problem to solve in both your database outcome and your webpage development projects and you'll be prepared to combine those technologies in the future to develop full stack web applications.
Algorithms and Computer Science fills the area of software engineering. Decomposition of problems and writing algorithms to achieve your goals is heavily integrated into this course. Programming, Data and Human Computer Interaction are the backbone of what you will do throughout the year.