VCE Software Development study materials
VCE Software Development study resources

VCE Software Development cheat sheet

VCE Software Development · Keep the key ideas within reach.

Quick reference

Software design and development

  • SDLC phases: analysis, design, development, testing, implementation, evaluation; each phase produces a deliverable that feeds the next.

  • Functional requirements state what the system must do; non-functional requirements state qualities such as performance, usability, security and portability.

  • A use case describes an actor, a goal and a main success scenario plus alternate flows; it captures behaviour, not implementation.

  • UML class diagram notation: class box with name, attributes and methods; multiplicity 1, 0..1, , 1..; open arrow = association, hollow triangle = inheritance, filled diamond = composition.

  • UML sequence diagram: lifelines across the top, time runs downward, solid arrow = synchronous message, dashed arrow = return, box on lifeline = activation.

  • Data flow diagram levels: context diagram shows one process and external entities; level-0 explodes it into major processes with data stores and flows.

  • Structure chart shows module hierarchy and parameter/data couples; it expresses call structure, not control flow order.

  • Design principles: cohesion high within a module, coupling low between modules; a module should have one reason to change.

  • Testing levels: unit (single module), integration (interfaces between modules), system (whole system against requirements), acceptance (user sign-off).

Quick reference

Programming and algorithms

  • Algorithm complexity: O(1) constant, O(log n) binary search, O(n) linear scan, O(n log n) efficient sort, O(n^2) nested loops over the same input.

  • Binary search requires a sorted array and halves the search range each step; worst case is about log2(n) comparisons.

  • Sorting: bubble, insertion and selection are O(n^2); merge sort is O(n log n) and stable but uses O(n) extra space; quicksort averages O(n log n) and worst case O(n^2).

  • Recursion needs a base case that terminates the calls and a recursive case that moves toward the base case; each call consumes stack space.

  • Linear search works on unsorted data and examines up to n items; it is the only option when no ordering exists.

  • Pass by value copies the argument; pass by reference passes the address so the callee can modify the caller's variable.

  • Boolean logic: AND is true only if both operands are true; OR is false only if both are false; NOT inverts; De Morgan: NOT(A AND B) = (NOT A) OR (NOT B).

  • Validation checks input against rules (range, type, presence); verification confirms data was transferred or entered correctly (double entry, check digit).

  • A stack is LIFO (push/pop); a queue is FIFO (enqueue/dequeue); a linked list inserts and deletes in O(1) at a known node but has no O(1) random access.

Quick reference

Data and information management

  • Relational model terms: relation = table, tuple = row, attribute = column, primary key uniquely identifies a row, foreign key references a primary key in another table.

  • Normalisation: 1NF removes repeating groups, 2NF removes partial dependencies on part of a composite key, 3NF removes transitive dependencies on non-key attributes.

  • SQL clauses execute logically in the order FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY; HAVING filters groups, WHERE filters rows.

  • SELECT with JOIN types: INNER returns matching rows only; LEFT returns all left rows plus matches; RIGHT mirrors it; FULL returns all rows from both sides.

  • ACID properties of transactions: Atomicity (all or nothing), Consistency (valid state to valid state), Isolation (concurrent transactions do not interfere), Durability (committed changes survive failure).

  • Data types matter for storage and validation: INTEGER for whole numbers, DECIMAL for exact money values, VARCHAR for variable text, DATE for calendar dates, BOOLEAN for true/false.

  • A DBMS separates data from programs, enforces integrity constraints and controls concurrent access; a flat-file system stores data in separate files with duplication risk.

  • Backup strategies: full backup copies everything; incremental copies changes since the last backup of any type; differential copies changes since the last full backup.

  • Data integrity controls: entity integrity (no null primary key), referential integrity (foreign key must match an existing primary key), domain integrity (values within allowed set).

Quick reference

Software project management

  • A Gantt chart shows tasks as bars against a calendar axis and displays dependencies and duration; a critical path is the longest dependent task chain and sets the minimum project duration.

  • PERT estimates use three points: expected = (optimistic + 4 x most likely + pessimistic) / 6.

  • Project constraints are scope, time, cost and quality; changing one typically forces change in another.

  • A milestone is a zero-duration checkpoint marking completion of a deliverable; it consumes no resources.

  • Risk management steps: identify risks, assess likelihood and impact, plan mitigation, monitor and review throughout the project.

  • The waterfall model proceeds sequentially with formal sign-off per phase; an iterative or agile approach delivers working increments in short cycles with continuous feedback.

  • Version control records each change with an author, timestamp and message, enabling rollback and parallel branches.

  • A test plan specifies scope, test cases, data, environment, entry and exit criteria, and who performs each test.

  • Evaluation criteria should be measurable and traceable to the requirements gathered during analysis, so each requirement can be verified as met or not met.