📖 Scenario: You are part of a software team that wants to understand why maintaining software takes more money and effort than building it initially.
🎯 Goal: Build a simple explanation using key points about software maintenance costs.
📋 What You'll Learn
Create a list called maintenance_factors with 3 main reasons why maintenance costs are high
Create a variable called initial_cost with the value 100000 representing initial development cost
Create a variable called maintenance_cost with the value 250000 representing maintenance cost
Create a summary string called cost_summary that explains maintenance cost is higher than initial cost
💡 Why This Matters
🌍 Real World
Software teams need to understand maintenance costs to manage budgets and timelines effectively.
💼 Career
Project managers, developers, and business analysts benefit from knowing why maintenance is costly to plan and communicate with stakeholders.
Progress0 / 4 steps
1
Create the list of maintenance cost factors
Create a list called maintenance_factors with these exact strings: 'Bug fixes', 'Updating for new requirements', and 'Adapting to new environments'.
Software Engineering
Hint
Use square brackets to create a list and separate items with commas.
2
Set initial and maintenance cost variables
Create a variable called initial_cost and set it to 100000. Then create a variable called maintenance_cost and set it to 250000.
Software Engineering
Hint
Use simple assignment with = to set the variables.
3
Write the summary explaining maintenance cost
Create a string variable called cost_summary that says: 'Maintenance costs more than initial development because it includes fixing bugs, updating features, and adapting to changes.'
Software Engineering
Hint
Use quotes to create a string and assign it to cost_summary.
4
Add a final note about ongoing effort
Add a comment line at the end of the code that says: # Maintenance is an ongoing effort that lasts longer than initial development
Software Engineering
Hint
Use the # symbol to add a comment line.
Practice
(1/5)
1. Why does software maintenance usually consume most of the total software cost?
easy
A. Because software needs continuous fixing, updating, and improving after release
B. Because initial development is always very cheap
C. Because software is rarely used after release
D. Because maintenance requires no planning or effort
Solution
Step 1: Understand what maintenance involves
Maintenance includes fixing bugs, updating features, and improving software after it is released.
Step 2: Recognize ongoing effort and cost
Since software is used over time, continuous work is needed, which costs more than initial development.
Final Answer:
Because software needs continuous fixing, updating, and improving after release -> Option A
Quick Check:
Maintenance = ongoing updates and fixes [OK]
Hint: Maintenance means ongoing work after release, so it costs more [OK]
Common Mistakes:
Thinking initial development is the most expensive
Assuming software is static after release
Ignoring updates and bug fixes
2. Which of the following best describes software maintenance?
easy
A. Writing the first version of the software
B. Testing software before release
C. Fixing bugs, updating features, and improving software after release
D. Designing the software architecture
Solution
Step 1: Identify maintenance activities
Maintenance involves activities after release like fixing bugs and updating features.
Step 2: Differentiate from development phases
Writing first version, designing, and testing happen before release, not during maintenance.
Final Answer:
Fixing bugs, updating features, and improving software after release -> Option C
Quick Check:
Maintenance = post-release fixes and updates [OK]
Hint: Maintenance happens after release, not before [OK]
Common Mistakes:
Confusing maintenance with initial development
Thinking testing is maintenance
Mixing design with maintenance
3. Consider this scenario: A software project spends 30% of its budget on initial development and 70% on maintenance. Why is this distribution common?
medium
A. Because software is discarded after initial release
B. Because initial development is usually very slow
C. Because maintenance is done only once
D. Because maintenance includes fixing unexpected bugs and adapting to new requirements
Solution
Step 1: Analyze maintenance tasks
Maintenance covers fixing bugs found after release and adapting software to changing needs.
Step 2: Understand budget allocation
Since maintenance is ongoing and unpredictable, it often requires more budget than initial development.
Final Answer:
Because maintenance includes fixing unexpected bugs and adapting to new requirements -> Option D