Software Design and Development Units N5 and Higher Subject Content

Source

Below is a table summarising the content for the Software Design and Development unit taken from the Computing Science National 4 and 5 course support notes:

Software Design and Development
Topic National 5 Higher
Languages and environments Language types:

  • imperative
  • declarative
  • object-oriented
  • domain-specific

 

Computational constructs Exemplification and implementation of the following constructs:

  • expressions to assign values to variables
  • expressions to return values using arithmetic operations (+, -, *, /, ^)
  • use of selection constructs including simple and complex conditional statements and logical operators (AND, OR, NOT)
  • iteration using fixed and conditional loops
  • pre-defined functions

 

Exemplification and implementation of the followingconstructs:

  • sub-programs and user-defined functions
  • parameter passing (value and reference)
  • sequential files (open/create, read, write, close, delete)
  • scope, local and global variables

 

Data types and structures
  • String
  • Numeric (integer and real) variables
  • Boolean variables
  • 1D arrays

 

  • String
  • Numeric (integer and real) variables
  • Boolean variables
  • 1D arrays

 

Testing and documenting solutions
  • Normal, extreme and exceptional test data
  • Syntax, execution and logic errors
  • Readability of code (internal commentary, meaningful  identifiers, indentation)

 

  • constructing a test plan (incorporating normal, extreme and exceptional testing)
  • syntax, execution and logic errors
  • dry runs, trace tables (tools), break points

 

Algorithm specification
  • Input validation
Design notations (for both software development and information system development)
  • pseudocode to exemplify programming constructs
  • other contemporary designnotations
  • structure diagram
  • pseudocode
  • wire-framing
  • other contemporary design notations
Development methodologies (for both software development and information system development) Iterative phases of developmentprocess: analysis, design,implementation, testing, documentation, evaluation,maintenance

Development methodologies

  • rapid application development
  • top-down/step-wise refinement
  • Agile methodologies

 

Low-level operations and computer architecture Translation of high-level program code to binary (machine code): interpreters and compilersUse of binary to represent and store:

  • integers and real numbers
  • characters
  • instructions (machine code)
  • graphics (bit-mapped and vector)

Basic computer architecture: processor, memory, buses, interfaces

 

  • virtual machines
  • emulators
  • mobile devices

Use of binary to represent and store

  • integers and real numbers
  • characters
  • instructions (machine code)
  • graphics (bit-mapped and vector)
  • sound
  • video

Computer architecture: processor(s), memory, cache, buses, interfaces

 

Computing Science Progression Framework

From SQA Computing Science

The Computing Science progression framework (194 KB) provides advice and guidance on how experiences and outcomes at third and fourth curriculum levels relate to the Outcomes and Assessment Standards of National 4 and National 5 qualifications.

For the purposes of this document, experiences and outcomes, and Outcomes and Assessment Standards have been grouped under five main headings:

  • Designing and creating computer programs
  • Information storage and communication
  • Computer systems and architecture
  • Security considerations
  • Impact of technological developments on society and environment

Software Design and Development Units N4 and N5 Subject Content

Source

Below is a table summarising the content for the Software Design and Development unit taken from the Computing Science National 4 and 5 course support notes:

Software Design and Development 
Exemplification and implementation of the following in an application development environment
Topic National 4 National 5
Computational constructs Exemplification and implementation of the following constructs:

  • expressions to assign values to variables
  • expressions to return values using arithmetic operations (+, -, *, /, ^)
  • execution of lines of code in sequence demonstrating input – process – output
  • use of selection constructs including simple conditional statements
  • iteration using fixed and conditional loops
Exemplification and implementation of the following constructs:

  • expressions to assign values to variables
  • expressions to return values using arithmetic operations (+, -, *, /, ^)
  • use of selection constructs including simple and complex conditional statements and logical operators (AND, OR, NOT)
  • iteration using fixed and conditional loops
  • pre-defined functions
Data types and structures StringNumeric (integer) variables StringNumeric (integer and real). variables

Boolean variables

1D arrays

Testing and documenting solutions Normal, extreme and exceptional test dataReadability of code (internal commentary, meaningful variable names) Normal, extreme and exceptional test dataSyntax, execution and logic errors in programs

Readability of code (internal commentary, meaningful identifiers, indentation)

Algorithm specification   Input validation  
Design notations (for both software development and information system development) Contemporary design notations.Graphical to illustrate selection and iteration.

 

Contemporary design notationsPseudocode to exemplify programming constructs

 

Low-level operations and computer architecture Use of binary to represent and store:

  • positive integers
  • characters
  • instructions (machine code)

Units of storage (bit, byte, Kb, Mb, Gb, Tb, Pb)

Translation of high-level program code to binary (machine code): interpreters and compilersUse of binary to represent and store:

  • integers and real numbers
  • characters
  • instructions (machine code)
  • graphics (bit-mapped and vector)

Basic computer architecture: processor, memory, buses, interfaces

Computing Science National 4/National 5 – Course Materials

Education Scotland have made available the following files to assist teachers develop their own materials.

These support materials, which are neither prescriptive nor exhaustive, provide suggestions on approaches to teaching and learning which will promote development of the necessary knowledge, understanding and skills for Computing Science National 4/National 5. 

Staff are encouraged to draw on these materials, and existing materials, to develop their own programmes of learning which are appropriate to the needs of learners within their own context.