Te Kete Ipurangi Navigation:

Te Kete Ipurangi
Communities
Schools

Te Kete Ipurangi user options:


Senior Secondary navigation


RSS

Section menu

AO/LOs

Curriculum strands

Specialist strands

AOs/LOs by level

Technological practice (TP)

6-1 | 6-2 | 6-3

7-1 | 7-2 | 7-3

8-1 | 8-2 | 8-3

Technological knowledge (TK)

6-1 | 6-2 | 6-3

7-1 | 7-2 | 7-3

8-1 | 8-2 | 8-3

Nature of technology (NT)

6-1 | 6-2

7-1 | 7-2

8-1 | 8-2

Design in technology (DET)

6-1 | 6-2

7-1 | 7-2

8-1/2

Manufacturing (MFG)

6-1 | 6-2

7-1 | 7-2

8-1/2

Technical areas (TCA)

8-1 

Construction and mechanical technologies (CMT)

6-1 | 6-2 | 6-3 | 6-4

6-5 | 6-6 | 6-7

7-1 |  7-2 |  7-3 |  7-4

7-5 |  7-6 |  7-7

8-1 | 8-2 | 8-3 | 8-4

8-5 | 8-6 | 8-7

Design and visual communication (DVC)

6-1 | 6-2 | 6-3

7-1 | 7-2 | 7-3

8-1 | 8-2 | 8-3

Digital technologies (DTG)

6-1 | 6-2 | 6-3 | 6-4

6-5 | 6-6 | 6-7 | 6-8

6-9 | 6-10 | 6-11 | 6-12

7-1 |  7-2 |  7-3 |  7-4

7-5 |  7-6 |  7-7 |  7-8

7-9 |  7-10 |  7-11 |  7-12

8-1 | 8-2 | 8-3 | 8-4

8-5 |  8-6/7 | 8-8 | 8-9

8-10 |  8-11 | 8-12

Processing technologies (PRT)

6-1 | 6-2 | 6-3

7-1 | 7-2 | 7-3

8-1/2 | 8-3


Construct a software program DTG 8-6/7

Construct a software program focuses on constructing a computer program for a specified task including testing and debugging the program to ensure the program works correctly.

Learning objective: DTG 8-6/7

Students will:

  • develop a complex computer program for a specified task.

Indicators

  • Uses an appropriate IDE to develop code and use the IDE debugging tools effectively to identify logic errors and correct a program.
  • Follows a disciplined and planned development process with documented cycles of incremental development and comprehensive testing at each cycle to construct a correctly working program.
  • Follows accepted debugging practices by interpreting syntax and runtime error messages to identify the underlying errors and correct a program.
  • Follows accepted testing and debugging practices for systematically applying test cases and using tracing/debugging statements to identify logic errors and correct a program.
  • Writes a computer program in a text-based programming language that includes commented, programmer defined methods/functions/etc with parameters and/or return values, has structuring of the methods/functions/and so on and data (for example, classes, modules, encapsulated data structures, packages, and so on), and has well-designed algorithmic structures for the individual methods/functions/and so on.
  • Writes a program that includes functions/methods/procedures that are passed compound data structures (arrays, lists, objects, and so on) and modify their contents, and has a well-designed decomposition into functions/methods with well-chosen parameters and has a well-designed structuring of data and methods/functions/and so on into classes (or modules, packages, and so on).
  • Includes explanatory comments and identifiers that support maintainability (including informative comments on functions/methods/procedures).
  • Tests their program to ensure it works correctly.

Progression

By level 8, students will have learned to specify, test, and design to a level where the plan for the structure of a complex software program has a modular structure, an indexed data structure, input and output, and procedural structures that combine sequential, conditional, and iterative structures.

They will have learned to construct basic computer programs in any programming language (drag-and-drop language, specialised programming language, or a general purpose programming language) that include: variables, assignment, predefined actions, expressions, and sequence, selection, and iteration control structures, and obtains and uses input from a user, sensors, or other external source.

Students progress to constructing complex computer programs using a text based programming language, that is by level 8 students should be using an Integrated Development Environment (IDE) to develop code following a disciplined development process with cycles of incremental development and testing.

Teacher guidance

To support students to develop a complex software program, at level 8, teachers could:

  • ensure students understand the requirement at this level that the programming language must be a text-based programming language and have an appropriate IDE that includes debugging tools
  • guide students on how to use an Integrated Development Environment (IDE) to develop code following a disciplined development process with cycles of incremental development and testing
  • guide students on how to construct a complex computer program in a text-based programming language that supports object-orientated structuring
  • guide students on how to follow accepted testing and debugging practices using IDE debugging tools to test and debug a program to ensure it works for expected, boundary, and exceptional cases
  • provide opportunities for students to practice using an appropriate IDE to develop code following a disciplined development process with cycles of incremental development and testing. Provide opportunities for students to practice constructing and testing complex computer programs
  • ensure students understand the requirement at this level that a complex program is a program written in a text-based programming language that interacts with a user, includes variables, assignment, predefined actions, expressions, includes sequence, selection, iteration control structures, includes programmer defined methods/ functions/and so on with parameters and/or return values, includes calls to the methods/functions/and so on, uses structured data, including sequential data (arrays, lists, and so on) and compound data (records, objects, tuples and so on), uses and updates persistent data in files or databases, has structuring of the methods/functions/and so on and data (for example, classes, modules, encapsulated data structures, packages, and so on)
  • ensure students have a specified task that requires the development of a complex program to resolve the task. The task can be teacher-given or developed in negotiation with the student. Ensure the task is large enough to justify decomposition of a program into multiple classes (or other high-level modules).

Contexts for teaching and learning

Students will submit evidence of both the design and implementation (including testing) of the program.

There must be a specified task which requires the development of a complex computer program in order to resolve it. The task may be teacher given or developed in negotiation with the student, perhaps as part of a broader technology project. Refer to AS91637 Explanatory note 7.

Ensure students construct a complex computer program (defined in AS91637 Explanatory note 5) and set out the program code clearly and concisely. Any code that is auto-generated by an Integrated Development Environment (IDE) cannot be used as evidence of student code (refer AS91637 Explanatory note 6). Code-complete (as some IDE’s do) is okay. However, if the whole code for a class or object has been auto-generated and the student has not created it, then it is not the student’s own code.

The way students go about the task is important, so in addition to looking at the completed program, be aware of how students approached the task.

Resources to support student achievement

Assessment for qualifications

The following achievement standard could assess learning outcomes from this learning objective:

  • AS91637 Digital technologies 3.46: Develop a complex computer program for a specified task.

Key messages from the standard

  • At level 3 there is only one standard covering programming. This replaces the situation at levels 1 and 2 where there are separate standards for creating the algorithm and then coding the program. As this standard at level 3 covers both designing and implementing the program it is expected that students will submit evidence of both the design and implementation (including testing) of the program.
  • The essential step up from level 2 is that it must have a graphical user interface and event handling, and include classes and objects in addition to the other expected requirements.
  • The program should be documented with comments. At achieved the criteria just ask for comments. At merit the comments must include variable and module names, and comments that accurately describe code function and behaviour. At excellence the comments must explain and justify decisions.

Last updated May 31, 2017



Footer: