## Definition Give reasons or evidence to defend a choice or conclusion, showing why it is well-founded—often, but not always, by weighing it against an alternative. *Verb. Noun form: justification.* ## Characteristics - Answers *why* this is the right conclusion or choice; - builds on a [[describe|description]] or [[explain|explanation]], using it as evidence; - requires application to the specific scenario; - comparison against an alternative strengthens the answer, but isn't strictly required; and - expects a defensible position, not just a cause-and-effect account. ## Examples ### Justify cats as the superior pet, compared to dogs Cats are the superior pet for anyone with limited time, since they are largely self-sufficient and do not require daily walks. While dogs offer more overt affection and trainability, this comes at the cost of near-constant supervision and exercise—a trade-off cats simply don't demand. For an owner who values independence as much as companionship, a cat's lower-maintenance affection makes it the stronger choice. ### Justify the use of an SSD over an HDD for gaming An SSD is the more appropriate choice for gaming, since games increasingly rely on fast, unpredictable access to large amounts of data—loading textures, assets, and level data as the player moves through a world. An HDD relies on a moving read/write head, which introduces seek time whenever data isn't stored contiguously, causing noticeable loading delays and, in some cases, stuttering during gameplay. An SSD has no moving parts and near-instant access to any part of the disk, so this delay is largely eliminated, which improves the gaming experience. While an HDD offers potentially more storage capacity, the performance cost is significant enough for gaming specifically that an SSD is worth the higher price per gigabyte. ### Justify the use of a compiled language rather than an interpreted language when runtime performance is important A compiled language is the better choice when runtime performance is important, because the entire program is translated into machine code ahead of time—this means the CPU can execute it directly, with no translation overhead during execution. An interpreted language translates and executes code line-by-line at runtime, which adds a performance cost that compounds over repeated loops or large datasets. While an interpreted language offers faster development and easier debugging, these advantages matter less once performance, rather than development speed, is the priority—making a compiled language the stronger choice in this scenario. ### Justify the features of a payroll processing system that make it solvable by computational methods The below justification builds on [[describe#Describe the features that make a payroll processing system solvable by computational methods|this description]]. Payroll processing is well suited to a computational approach because it is fundamentally the repeated application of a defined algorithm across a large dataset. Since the same sequence of calculations is applied to every employee record, a computer can execute this far more quickly, consistently, and reliably than a human working through each record by hand—removing both the tedium and the risk of manual error across thousands of repetitions. The variability introduced by factors like regional tax rules does not undermine this suitability; it simply means the algorithm needs to branch based on defined conditions (e.g., selecting the correct tax rule for an employee's region) rather than applying a single fixed calculation to everyone. This kind of conditional logic is itself a standard feature of computational approaches, so accounting for variability strengthens the case for a computational solution rather than weakening it. The clearly defined inputs and outputs are also significant: because every record follows a fixed structure and every payslip must be produced in a consistent format, the problem can be represented in a structured, machine-readable way from the outset, without the ambiguity that would make computational processing difficult. ### Justify the importance of identified features for payroll processing software The below justification builds on [[identify#Identify important features for payroll processing software based on existing examples of such software|this identification]]. Automatic tax calculation based on region is justified because research into commercial platforms such as Xero and QuickBooks showed that built-in, automatically-updated regional tax rules are a well-established and effective solution to the risk of manual calculation error, avoiding the need for an HR administrator to track changing tax legislation themselves. Batch processing of employee records is justified because research into platforms such as Sage Payroll showed that processing an entire workforce's payroll in a single run, rather than record-by-record, is a recognised approach to reducing the time and repetitive effort required as the number of employees grows. ### Justify three success criteria of a payroll processing system | Success criterion | Justification | | --- | --- | | The system must process a full payroll run for 100 employees in under 30 seconds. | This reflects the needs of the HR administrator, who typically runs payroll under time pressure alongside other end-of-month duties. Research into commercial payroll platforms showed that batch processing speed is commonly cited as a factor in user satisfaction, since a slow process reduces the practical usability of the system as the size of the workforce grows. | | The system must correctly apply the appropriate tax rule for each of at least 3 supported regions. | This reflects the needs of users who employ staff across different tax jurisdictions, a common scenario identified through research into small businesses with distributed or remote workforces. A system that only handled a single region's rules would fail to meet the needs of this group, limiting its usefulness as a general-purpose solution. | | An HR administrator must be able to generate all payslips for a payroll run with no more than 2 clicks, requiring no manual recalculation. | This reflects the needs of the HR administrator, who research into typical small-business roles showed is often not a tax specialist and has limited time to dedicate to payroll alongside other responsibilities. A criterion with no such constraint risks a solution that is technically correct but impractical for a non-specialist user to run each month. | ## Non-examples - [[explain|Explanation]]—accounts for *why* something is the case, but doesn't defend a choice against alternatives or reason about evidence.