0
0
Software Engineeringknowledge~20 mins

Software reengineering in Software Engineering - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Software Reengineering Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What is the primary goal of software reengineering?

Software reengineering involves modifying existing software. What is its main purpose?

ATo reduce the number of users of the software
BTo develop new software from scratch
CTo replace software hardware components
DTo improve software maintainability and extend its life
Attempts:
2 left
💡 Hint

Think about why companies update old software instead of discarding it.

📋 Factual
intermediate
2:00remaining
Which activity is NOT part of software reengineering?

Identify the activity that does NOT belong to software reengineering processes.

AForward engineering to build new software from requirements
BReverse engineering to understand existing code
CCode restructuring to improve readability
DData reengineering to improve database design
Attempts:
2 left
💡 Hint

Software reengineering works on existing software, not starting fresh.

🔍 Analysis
advanced
2:00remaining
Analyzing the impact of reengineering on software quality

How does software reengineering typically affect software quality?

AIt usually decreases quality due to introducing new bugs
BIt improves quality by cleaning and updating the codebase
CIt has no effect on software quality
DIt only improves performance but not quality
Attempts:
2 left
💡 Hint

Consider what happens when old, messy code is cleaned up.

Comparison
advanced
2:00remaining
Comparing reverse engineering and forward engineering

Which statement correctly compares reverse engineering and forward engineering in software reengineering?

ABoth reverse and forward engineering are used to write new code from scratch
BReverse engineering creates new software; forward engineering analyzes existing software
CReverse engineering extracts knowledge from existing software; forward engineering builds software from specifications
DForward engineering is part of reengineering; reverse engineering is not
Attempts:
2 left
💡 Hint

Think about the direction of each process: from code to design or design to code.

Reasoning
expert
2:00remaining
Why is documentation important in software reengineering?

Choose the best reason why documentation is critical during software reengineering.

AIt helps new developers understand the existing system and reduces errors
BIt replaces the need to test the software after changes
CIt slows down the reengineering process and should be avoided
DIt is only useful for marketing the software
Attempts:
2 left
💡 Hint

Think about how clear information helps teams work better on old software.