📖 Scenario: You are part of a software development team planning a new project. To prepare well, you want to list common risks that can affect software projects. This will help your team avoid problems and deliver the project successfully.
🎯 Goal: Create a simple list of common software project risks, add a severity level for each risk, and then select only the high severity risks to focus on. Finally, prepare a summary list of these high severity risks.
📋 What You'll Learn
Create a list called risks with these exact entries: 'Scope creep', 'Unclear requirements', 'Technical challenges', 'Resource availability', 'Poor communication'
Create a dictionary called severity that assigns these exact severity levels: 'Scope creep': 'High', 'Unclear requirements': 'High', 'Technical challenges': 'Medium', 'Resource availability': 'Medium', 'Poor communication': 'High'
Use a list comprehension to create a list called high_risks that includes only risks with severity 'High'
Create a final string called summary that joins the high_risks list items separated by commas
💡 Why This Matters
🌍 Real World
Software teams use risk lists to plan better and avoid common problems that can delay or harm projects.
💼 Career
Understanding and managing risks is a key skill for project managers, developers, and quality assurance professionals.
Progress0 / 4 steps
1
Create the list of common software project risks
Create a list called risks with these exact entries: 'Scope creep', 'Unclear requirements', 'Technical challenges', 'Resource availability', 'Poor communication'
Software Engineering
Hint
Use square brackets [] to create a list and separate each risk with commas.
2
Assign severity levels to each risk
Create a dictionary called severity that assigns these exact severity levels: 'Scope creep': 'High', 'Unclear requirements': 'High', 'Technical challenges': 'Medium', 'Resource availability': 'Medium', 'Poor communication': 'High'
Software Engineering
Hint
Use curly braces {} to create a dictionary with key-value pairs separated by colons.
3
Select only high severity risks
Use a list comprehension to create a list called high_risks that includes only risks from risks where the severity in severity is exactly 'High'
Software Engineering
Hint
Use a list comprehension with an if condition to filter risks.
4
Create a summary string of high severity risks
Create a string called summary that joins the items in high_risks separated by commas using the join() method
Software Engineering
Hint
Use ', '.join(list) to combine list items into a single string separated by commas.
Practice
(1/5)
1. Which of the following is a common risk in software projects?
easy
A. Unclear requirements
B. Perfect team communication
C. Unlimited budget
D. Fixed technology stack
Solution
Step 1: Understand common software project risks
Common risks include unclear requirements, technology changes, and team turnover.
Step 2: Match options with known risks
Among the options, only unclear requirements is a known risk.
Final Answer:
Unclear requirements -> Option A
Quick Check:
Common risk = Unclear requirements [OK]
Hint: Look for known risk factors like unclear requirements [OK]
Common Mistakes:
Choosing positive factors as risks
Confusing fixed technology with risk
Ignoring unclear requirements
2. Which of these is the correct way to describe a risk in a software project?
easy
A. A potential event that may affect the project negatively
B. A guaranteed problem that will happen
C. A feature requested by the client
D. A completed task in the project plan
Solution
Step 1: Define what a risk means in project management
A risk is a possible event that could negatively impact the project, not a certainty.
Step 2: Evaluate each option
A potential event that may affect the project negatively correctly describes risk as a potential negative event.
Final Answer:
A potential event that may affect the project negatively -> Option A
Quick Check:
Risk = Potential negative event [OK]
Hint: Risk means possible negative event, not guaranteed [OK]
Common Mistakes:
Confusing risk with a problem
Thinking risk is a completed task
Mixing risk with client requests
3. A software project team faces frequent technology changes and unclear requirements. What is the most likely impact on the project?
medium
A. Project will finish ahead of schedule
B. Project risks increase, causing delays
C. Team morale will improve automatically
D. Budget will decrease due to fewer tasks
Solution
Step 1: Identify effects of technology changes and unclear requirements
Both increase uncertainty and risk, often causing delays and extra work.
Step 2: Match impact with options
Project risks increase, causing delays correctly states that risks increase and delays happen.
Final Answer:
Project risks increase, causing delays -> Option B