Software Engineering › Key terms › Y11 Programming Fundamentals › Design
Design
Process Y11 Programming Fundamentals
Definition
Planning the solution before coding using modelling tools: algorithms (pseudocode, flowcharts), structure charts, DFDs, class diagrams, storyboards, decision trees and data dictionaries.
Example: Link each design tool to its purpose: DFD = data movement; structure chart = module hierarchy; class diagram = classes and relationships.
Found in: syllabus, course specifications, 2025 HSC marking guidelines, sample exam and familiarisation guidelines, school notes, past SDD papers.
Where it is used in the test
Syllabus area: Y11 Programming Fundamentals.
Question types it can appear in
- Drawing: Draw a DFD, structure chart, flowchart, storyboard or class diagram
- Multiple choice: Pick the option that matches the definition or example.
- Short answer: Outline how a named tool helps design
Where it has appeared in the paper
The Software Engineering Project (Part B, D). Part letters follow each paper’s own layout.
Related past questions
- Sample exam Q24 (4 marks): Modelling tools (class diagram) The Software Engineering Project (Part B) · 4 marks
- 2022 Software Design and Development HSC Q27 (10 marks): Modelling and design (IPO, data structure, Gantt) The Software Engineering Project (Part D) · 10 marks · old syllabus
These are the questions the flashcard set links to this term. Open each one and compare your answer with its marking criteria.
Study links
- Flashcard: Design in Programming Fundamentals (Year 11) · study that set
- Memorise: Software development steps and algorithm design
How to use it in an answer
A model sentence
“Planning the solution before coding using modelling tools: algorithms (pseudocode, flowcharts), structure charts, DFDs, class diagrams, storyboards, decision trees and data dictionaries.” Then apply it: Link each design tool to its purpose: DFD = data movement; structure chart = module hierarchy; class diagram = classes and relationships.
In a short answer, give the definition in your own words first, then tie it to the situation in the question. Do not copy the example above unless it fits the scenario.
Command words used with it
- Describe: Provide characteristics and features. (2022 Software Design and Development HSC Q27 (10 marks): Modelling and design (IPO, data structure, Gantt))
Technique for the question types
- Drawing: Use the online drawing tool: label every symbol and arrow, use the correct symbols from the specification, and add every required item.
- Multiple choice: Read all four options, rule out wrong ones, pick one; no penalty for guessing so never leave blank.
- Short answer: One clear point per mark, use the stimulus and course terms, and answer the command word.
What the marking guidelines and feedback say
A reasoned design (NOT the NESA diagram): classes Trip(tripID; assignTicket()), PassengerCar(carModelCode), Engine(engineModelCode), Area(areaType, numSeats) with subclasses Executive (20 seats) and Standard (400 seats), Passenger(email, phone; buyTicket()) with subclass FrequentTraveller(loyalty info), Ticket(ticketType, seatNumber). Relationships: Trip 1 to many PassengerCar; Trip 1 to 1 Engine; Trip 1 to 2 Area; Passenger 1 to 0..* Ticket; Ticket * to 1 Trip. Show multiplicities and inheritance arrows (hollow triangle).
Old-syllabus question. Use for practice on the overlapping skill only. The new Software Engineering exam does not use the old SDD terms (e.g. CASE tools, system flowcharts, EBNF, assembly).
Common mistakes
- Drawing questions (2025 HSC exam Q22): refine attributes into separate inherited classes; use appropriate class diagram symbols.
- Use the term exactly as the syllabus words it, then link it to the scenario in the question; the 2025 feedback repeatedly rewards using the stimulus.
- Answer the command word: outline gives main points only, explain gives a reason or cause, discuss gives both sides.
Related terms
Same group in the syllabus: Software development steps (the order) · Requirements definition · Determining specifications · Development · Integration · Testing and debugging · Installation · Maintenance · Online code collaboration tools