DATABASE DESIGN
DATA MANAGEMENT
SOLUTION DEVELOPMENT
PROGRAMMING & ALGORITHMS
PAT & IT CONCEPTS
100

This field uniquely identifies each record in a database table.

Primary key

100

These are raw, unprocessed facts that can be collected and stored by a computer system.

Data

100

This is the first stage in solving a programming problem, where the programmer determines what the problem is and what the solution must achieve.

Problem analysis

100

This programming structure executes instructions one after another in the order in which they appear.

Sequence

100

This acronym refers to the Practical Assessment Task completed by IT learners as part of their assessment.

PAT

200

This type of relationship exists when one record in Table A can be linked to many records in Table B, but each record in Table B belongs to only one record in Table A.

One-to-many relationship

200

This is produced when data has been processed and organised so that it has meaning and can be used.

Information

200

This problem-solving technique involves breaking a large or complex problem into smaller, more manageable parts.

Decomposition

200

This control structure allows a program to choose between different paths depending on whether a condition is true or false.

Selection

200

This document describes the fields in a database, including information such as the field name, data type, size and description.

Data dictionary

300

This key is stored in one table and refers to the primary key of another table, allowing the two tables to be related.

Foreign key

300

A school captures a learner's date of birth as 31/15/2010. The system rejects the entry because the month cannot be 15. This is an example of this process.

Validation

300

A programmer writes down the steps needed to solve a problem before writing the actual program code. This plan is commonly represented using these two techniques.

Algorithm and flowchart/pseudocode and flowchart

300

This control structure repeatedly executes a section of code while a particular condition is satisfied.

Iteration

300

This type of testing uses deliberately selected inputs to determine whether a program produces the expected outputs.

Test data

400

A database contains CustomerID, CustomerName, CustomerAddress, OrderID, OrderDate and ProductID in one table. Customer information is repeated every time the customer places an order. This database design problem is known as this.

Data redundancy

400

A database contains the same learner's name and address in several different records. When the address changes, some records are updated while others are not. This creates this problem.

Data inconsistency

400

A program produces the correct results for normal input but crashes when the user enters a value outside the expected range. The programmer needs to identify the cause and correct it. This process is known as this.

Debugging

400

A programmer notices that the same group of instructions is being written repeatedly throughout a program. Instead of repeating the code, the programmer creates a separate reusable section that can be called when required. This demonstrates this programming principle.

Modularity

400

A program is tested using normal values, invalid values and values at the limits of an acceptable range. Why is it important to test more than just normal values?

To determine whether the system handles invalid and boundary conditions correctly.

500

A database stores learners and their subjects. One learner can take many subjects, and each subject can have many learners. Explain what type of relationship exists and identify the database structure normally required to implement it.

Many-to-many relationship; a linking/junction table

500

A school collects thousands of learner records and uses them to identify patterns in absenteeism. The processed results are then presented to management, who use them to decide which learners require intervention. Explain the transformation from the original facts to the final decision.

Data → processing → information → decision-making

500

A developer changes the structure of a database table after the program has already been written. Several parts of the program stop working because they depended on the original field names. What software-development concept does this situation demonstrate?

Dependencies between components

500

A program must process 10 000 learner marks. For each mark, it must determine whether the mark is valid, calculate the learner's percentage and classify the result. The programmer separates these tasks into smaller reusable procedures. Explain two advantages of this approach over writing the entire solution as one large block of code.

Any two:

  • Easier to test
  • Easier to debug
  • Easier to maintain
  • Code reuse
  • Improved readability
  • Easier to modify
  • Reduces complexity
500

A completed school-management system works correctly according to its programmer, but the client claims that it does not meet the original requirements. Which part of the development process should have provided measurable criteria for determining whether the completed system was acceptable?

Acceptance testing / acceptance criteria