← VCE Software Development U4O1

Factor affecting project plans: personnel changes

When a team member leaves or is absent, their skills are lost and tasks must be reassigned, which can disrupt task allocation and delay the timeline of a project plan.

Understanding Factor affecting project plans: personnel changes in VCE Software Development U4O1

What it does: The code shows the team responding to a lost skill by arranging training, which is a result of a personnel change. Personnel changes include a team member leaving or being absent. They can disrupt task allocation and timelines. Tasks in a project plan are allocated to people. When someone is absent, their tasks must be reassigned or delayed. Reassigning tasks means moving work from the person who is unavailable to someone else in the team. The replacement may need time to learn the task or may already be busy with their own tasks, which can push back deadlines.

Common mistakes: The key is the variable absent, which holds "Sam". Putting it in quotes looks for a member named "absent" and causes a KeyError. It should be skills.pop(absent) so the leaving member's skill is removed. A for loop header must end with a colon. It should be for t in owners: so the loop can find tasks owned by the leaving member and reassign them.

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 186–198) and word search (Modules 172–198).

Take this worksheet further — free with Cloodit

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

Learning
Duo
A key developer leaves the team halfway through the project. Which is a personnel change affecting the project plan?
No, only changes to the client's requirements affect plansYes, a team member leaving is a personnel change
Matches
Plan: Mia leaves the team. Keep her tasks assigned to Mia and change nothing else.
↓
Her tasks still belong to someone who is no longer there, so the work stalls and the timeline slips. Her tasks must be reassigned.
Applying
Meanings
Term
personnel changes
Meaning
When a team member leaves or is absent, their skills are lost and tasks must be reassigned, which can disrupt task allocation and delay the timeline of a project plan.
Practice
IF team member is absent OR leaves THEN
Testing
Gaps
["Database"] = "Zoe"
Check Answer
Spots
2absent = "Sam"
3lost = skills.pop("absent")

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

The 'Camel' badge — Endurance Champion, 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 key developer leaves the team halfway through the project. Which is a personnel change affecting the project plan?
A. Yes, a team member leaving is a personnel change ✓
B. No, only changes to the client's requirements affect plans
Personnel changes include a team member leaving or being absent. They can disrupt task allocation and timelines.
2. Which statement about a team member's absence is correct?
A. The project plan stays exactly the same because tasks do not depend on people
B. Their tasks may need to be reassigned, which can delay the timeline ✓
Tasks in a project plan are allocated to people. When someone is absent, their tasks must be reassigned or delayed.
3. The only person who knows how to write the database code leaves. What is the main risk?
A. Loss of skills that the team needs to finish tasks ✓
B. The programming language will stop working
When a person leaves, their skills and knowledge leave too. This can slow down tasks that depend on those skills.
4. Which action is an example of reassigning tasks after a personnel change?
A. Giving the departed member's testing task to another team member ✓
B. Adding extra features to the software without telling anyone
Reassigning tasks means moving work from the person who is unavailable to someone else in the team.
5. A team member is sick for two weeks. What should be updated in the project plan?
A. Nothing, the plan should never be changed
B. Task allocation and the dates on the Gantt chart ✓
Task allocation and the timeline (for example the Gantt chart) may need adjusting when a person is absent.

Match the Pairs

personnel changes → A team member leaves or is absent, disrupting task allocation and the timeline of the project plan
reassign(task, new_member) → Moves a task from the absent or departed team member to another person so the work can continue
Loss of skills: when the only person who can do a task leaves, the team may need training or a replacement → if skilled_member == None: plan_training()
Reassigning tasks: a task is given to a different team member after someone leaves or is absent → task_owner = "Sam"
Plan: Mia leaves the team. Keep her tasks assigned to Mia and change nothing else. → Her tasks still belong to someone who is no longer there, so the work stalls and the timeline slips. Her tasks must be reassigned.
Plan: Jo is absent for two weeks. No effect on the timeline, because the team size is the same. → This ignores the loss of Jo's skills and work time. The absence can delay tasks, so the plan and its timeline need adjusting.

Key Term

personnel changes
When a team member leaves or is absent, their skills are lost and tasks must be reassigned, which can disrupt task allocation and delay the timeline of a project plan.

Fill in the Blanks

1. tasks = {"UI": "Mia", "Database": "Leo"} tasks["Database"] = "Zoe"
Hint: Type the name of the variable that holds the task allocation, so the database task is reassigned to a new person.
2. for task in tasks: if tasks[task] == "Leo": tasks[task] = "Zoe"
Hint: Type the operator that checks whether a task's assigned person matches the team member who left.
3. skills = {"Mia": {"UI"}, "Leo": {"SQL"}} skills.pop("Leo") print(skills)
Hint: Type the dictionary method that removes a leaving member and their skills from the team record.
4. team = ["Mia", "Zoe"] if "Leo" not in team: print("Reassign Leo's tasks")
Hint: Type the keyword pair that tests whether a person is missing from the team list.
5. duration = 10 delay = 3 duration += delay
Hint: Type the operator that adds the delay from a personnel change onto the existing project duration.

Spot the Error

Question 1
A skills = {"Sam": "UI"}
B absent = "Sam"
C lost = skills.pop("absent")
D print("Lost skill:", lost)
Line C — The key is the variable absent, which holds "Sam". Putting it in quotes looks for a member named "absent" and causes a KeyError. It should be skills.pop(absent) so the leaving member's skill is removed.
Question 2
A owners = {"code": "Sam"}
B leaving = "Sam"
C for t in owners
D if owners[t] == leaving:
E owners[t] = "Mia"
Line C — A for loop header must end with a colon. It should be for t in owners: so the loop can find tasks owned by the leaving member and reassign them.
Question 3
A team = ["Ava", "Sam", "Mia"
B team.remove("Sam")
C print(len(team), "left")
Line A — The list is missing its closing square bracket, which is a syntax error. It should end with ] so the team list is created before Sam is removed.
Question 4
A have = {"Ava", "testing"}
B need = "database"
C if need not in have.values():
D print("Skill gap!")
Line A — A comma instead of a colon makes this a set, not a dictionary, so have.values() fails later. It should be {"Ava": "testing"} to link each member to their skill and spot a loss of skills.
Question 5
A tasks = 6
B team = 3
C team = team - 1
D per_person = tasks * team
E print("Each does", per_person)
Line D — Tasks per person is found by dividing tasks by team members, not multiplying. It should be tasks / team, which shows the workload rising after a member leaves.

Student with a class code? Join your class →