Ruankao Software Evaluator (Intermediate) study materials
Ruankao Software Evaluator (Intermediate) study resources

Ruankao Software Evaluator (Intermediate): Computer Fundamentals and Software Engineering

Ruankao Software Evaluator (Intermediate) · Work through your exam, one topic at a time.

All guide sections

Computer Fundamentals and Software Engineering

Computer Fundamentals and Software Engineering

This domain supplies the background the rest of the paper assumes: how data is represented inside the machine, how operating systems and databases behave under test, and how a product moves from requirements through design, construction and maintenance. Questions are recall-heavy (number ranges, model names, standard formulae) plus small calculations, so precision beats breadth.

Data representation and computer organisation

  • An n-bit two's complement integer spans -2^(n-1) to 2^(n-1)-1; for 8 bits that is -128 to +127. The asymmetric range is a favourite question.
  • IEEE 754 single precision uses 1 sign bit, 8 exponent bits (excess-127), 23 mantissa bits; double uses 11 and 52.
  • Know the memory hierarchy (register, cache, main memory, disk), locality of reference, and interrupt versus DMA-driven I/O.
  • Recurring OS concepts: process versus thread, the four necessary conditions for deadlock, page replacement policies, file allocation methods.

Lifecycle and process models

  • Waterfall: sequential and document-driven; economical only when requirements are stable.
  • V-model: each development level has a mirror test level - unit test against detailed design, integration test against architectural design, system test against the requirements specification, acceptance test against user requirements. Test design happens on the left side even though execution happens on the right.
  • Spiral: risk-driven and iterative, ending each loop with a review; chosen for large, high-risk projects.
  • Prototype and agile: used when requirements are unclear; delivery is incremental, so regression testing dominates the cost.

Worked example

A control-flow graph has N = 9 nodes, E = 11 edges, and 3 predicate nodes. Cyclomatic complexity V(G) = E - N + 2 = 11 - 9 + 2 = 4. The equivalent rule is decisions + 1 = 3 + 1 = 4, so a basis set contains four independent paths and branch coverage needs at least four cases. The answer is 4, not 11 - 9 = 2: the +2 term is where candidates lose the mark.

Traps

  • Using E - N + 1, which holds only for a strongly connected graph after adding a virtual edge from exit to entry.
  • Reversing verification (built correctly against the specification) and validation (satisfies the user's real need).
  • Believing the V-model means testing starts after coding; its whole point is early test design.
  • Confusing spiral's risk focus with incremental delivery.

Key ideas to carry forward

Every later domain leans on these definitions: a coverage metric, a process model name, or a standard formula will be quoted verbatim in a question stem.