← VCE Software Development U4O2

Legal and ethical consequences of ineffective software development practices

Penalties, lost customer trust and harm caused by weak security in development, such as privacy breaches or copyright infringement, resolved through compliance, openness and better practices.

Understanding Legal and ethical consequences of ineffective software development practices in VCE Software Development U4O2

What it does: Copying code without permission or following licence terms is copyright infringement, a legal and ethical consequence of poor development practices. Failing to protect personal information can breach laws such as the Privacy Act 1988 (Cwlth) and lead to penalties and regulator action. Loss of customer trust and a damaged public image is reputational damage, which can reduce sales and users. Ethical consequences are about harm and fairness to people, and they exist whether or not a penalty is issued. Openness (transparency) and compliance with notification requirements help rebuild trust and reduce legal risk. Hiding a breach makes things worse. Better practices such as training, code review and testing reduce vulnerabilities and show a commitment to improvement.

Common mistakes: Hiding a breach by deleting logs is not openness and can break the law. The organisation should report it to the OAIC with reportToOAIC(). The IF statement is missing THEN. It should read IF copiedCode = TRUE THEN, so the licence check and acknowledgement run when code was copied.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 97–130) and word search (Modules 49–130).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
A company's developers leave a database unprotected and customer data leaks. Which is a likely LEGAL consequence?
The software automatically runs fasterPenalties or enforcement action for breaching privacy law
Matches
After a data leak caused by insecure code, the company hides it from customers to protect its reputation.
↓
Concealing the problem is unethical and may breach notification laws. It increases loss of trust. The company should be open and notify affected customers.
Applying
Meanings
Term
legal and ethical consequences
Meaning
Penalties, lost customer trust and harm caused by weak security in development, such as privacy breaches or copyright infringement, resolved through compliance, openness and better practices.
Practice
IF privacyBreach = TRUE OR copyrightBreach = TRUE THEN
Testing
Gaps
()
Check Answer
Spots
3 notifyCustomers()
4 deleteBreachLogs()

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Kangaroo Rat' badge — Speed Typer, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. A company's developers leave a database unprotected and customer data leaks. Which is a likely LEGAL consequence?
A. The software automatically runs faster
B. Penalties or enforcement action for breaching privacy law ✓
Failing to protect personal information can breach laws such as the Privacy Act 1988 (Cwlth) and lead to penalties and regulator action.
2. A developer copies code from a paid library into the company's product without a licence. What is this?
A. Copyright infringement ✓
B. Input validation
Using code without permission or a valid licence breaches copyright, which can lead to legal action and damages.
3. After a data breach, customers stop using an app because they no longer trust it. This is an example of:
A. Reputational damage ✓
B. Regulatory compliance
Loss of customer trust and a damaged public image is reputational damage, which can reduce sales and users.
4. Which statement about ethical harm from weak development security is correct?
A. Ethical harm only exists if the organisation is fined
B. Customers can be harmed even if no law is broken, for example by identity theft after a leak ✓
Ethical consequences are about harm and fairness to people, and they exist whether or not a penalty is issued.
5. Which action best helps resolve the consequences of a privacy breach?
A. Notify affected customers openly and cooperate with the regulator ✓
B. Hide the breach until someone finds out
Openness (transparency) and compliance with notification requirements help rebuild trust and reduce legal risk. Hiding a breach makes things worse.

Match the Pairs

Breach of privacy law → Failing to protect personal information in line with privacy legislation can lead to legal penalties, investigations and orders to fix the practice.
Reputational damage → Customers lose trust in an organisation after a security failure and may stop using its software or services.
Using third-party code without checking its licence or acknowledging the source can break copyright law and lead to legal action. → Copyright infringement
An organisation can resolve consequences by complying with regulators, being open with affected people and improving its practices. → Compliance, openness and improved practices
After a data leak caused by insecure code, the company hides it from customers to protect its reputation. → Concealing the problem is unethical and may breach notification laws. It increases loss of trust. The company should be open and notify affected customers.
A team copies open-source code into its product and removes the licence notice, because only legal penalties matter. → Removing the licence and ignoring the source is copyright infringement. It is both illegal and unethical. The team should follow the licence terms and acknowledge the source.

Key Term

legal and ethical consequences
Penalties, lost customer trust and harm caused by weak security in development, such as privacy breaches or copyright infringement, resolved through compliance, openness and better practices.

Fill in the Blanks

1. IF dataLeaked = TRUE THEN notifyCustomers() END IF
Hint: Type the function name that openly tells affected people about the privacy breach
2. IF usesCode AND NOT licensed THEN removeCode() END IF
Hint: Type the logical operator that needs both conditions true to flag copyright infringement
3. trust ← trust - 20 IF trust < 50 THEN reputationDamaged ← TRUE
Hint: Type the comparison operator meaning less than, to check for lost customer trust
4. WHILE NOT compliant DO improvePractices() END WHILE
Hint: Type the loop keyword that repeats the improvements until the organisation meets the law
5. totalCost ← fine + legalCosts OUTPUT totalCost
Hint: Type the arithmetic operator that adds the legal penalty and the legal costs together

Spot the Error

Question 1
A breach ← TRUE
B IF breach = TRUE THEN
C notifyCustomers()
D deleteBreachLogs()
E END IF
Line D — Hiding a breach by deleting logs is not openness and can break the law. The organisation should report it to the OAIC with reportToOAIC().
Question 2
A IF copiedCode = TRUE
B checkLicence()
C acknowledgeSource()
D END IF
Line A — The IF statement is missing THEN. It should read IF copiedCode = TRUE THEN, so the licence check and acknowledgement run when code was copied.
Question 3
A trust ← 100
B IF dataLeaked = TRUE THEN
C trust ← trust + 40
D END IF
E OUTPUT trust
Line C — A data leak causes reputational damage, so customer trust should go down. It should be trust ← trust - 40, not increase.
Question 4
A audit ← runPrivacyAudit()
B IF audit = PASSED THEN
C updatePractices()
D retrainStaff()
E END IF
Line B — Practices should be improved when the audit fails. Testing for PASSED means the fixes would only run when nothing is wrong. It should be IF audit = FAILED THEN.
Question 5
A code ← getAICode()
B licence ← checkLicence(code)
C IF licence = OK THEN
D useCode(licence)
E END IF
Line D — The code, not the licence result, is what gets used once the licence check is OK. It should be useCode(code) to avoid copyright infringement.

Student with a class code? Join your class →