Algorithms
Collaboration
Program Design
Development Process
Abstraction
100

What is the term for a defined sequence of instructions used to solve a problem?

What is an algorithm

100

What programming practice involves two people working at one computer—one writes code, the other reviews?

What is pair programming?


100

What is the first step in designing a computer program?

What is identifying the problem?

100

What development cycle involves repeatedly refining a product based on feedback?

What is iterative development?

100

What is abstraction?

 What is simplifying complex systems by hiding unnecessary details?

200

Which class of algorithm has a time complexity of O(log n), commonly seen in search problems?

What is a logarithmic algorithm (e.g., binary search)?


200

What is the main advantage of using version control in team projects?

What is managing code changes and avoiding conflicts between team members' edits?


200

What is the purpose of pseudocode in program design?

What is to express algorithms in human-readable format before actual coding?

200

Why is prototyping useful in early stages of software development?

What is it helps test ideas quickly and gather user feedback before full development?

200

Give an example of abstraction in programming languages.

What is using a function or library without knowing how it works internally (e.g., Math.random())

300

Two students create different sorting algorithms. One runs in seconds on large datasets, and the other takes hours. What property of the algorithm best explains this difference?



What is efficiency?

300

What is one key strategy to avoid groupthink in collaborative software development?

What is encouraging dissenting opinions or using anonymous idea submissions?


300

How does modular design improve debugging?

What is by isolating functionality into independent parts, making it easier to locate and fix issues?

300

Describe one key difference between a waterfall and an iterative process.

What is waterfall is linear and fixed, while iterative allows constant changes and refinements?

300

How does abstraction relate to code reuse?

What is abstract functions or classes can be reused without rewriting code?

400

Give one example of an algorithm that must be recursive to solve efficiently

What is merge sort, quicksort, or depth-first search (DFS)?


400

Explain the potential downside of assigning non-technical members to technical coding roles in a group.

What is that it can lead to errors, inefficiencies, and frustration due to lack of expertise?


400

What does it mean for a program to be scalable?

What is it can handle increased data or users without a drop in performance or functionality?

400

What is one drawback of skipping the testing phase in software development?

What is introducing undetected bugs, leading to crashes or user dissatisfaction?

400

What’s the risk of too much abstraction in a program?

What is it can make understanding and debugging the code more difficult?

500

Explain why algorithmic efficiency matters more than hardware upgrades in large-scale software systems.




What is because algorithmic improvements can yield exponential time savings that hardware alone can’t match, especially at scale?

500

What technique involves dividing project tasks into specific roles and time-boxed intervals for collaboration?

What is Agile development or a Scrum sprint?

500

What is one risk of designing without clear user requirements?

What is developing a product that does not meet user needs or business goals?

500

Why is documenting your development process critical in collaborative environments?

What is it allows transparency, easier onboarding, and understanding of how/why design decisions were made?

500

Explain how abstraction is used in developing APIs.

What is APIs hide complex operations behind simple calls, allowing developers to use functionality without knowing the implementation?

M
e
n
u