Quiz Bank

70 Knowledge Check Questions

Filter by week or run through the full bank. Answers are checked instantly in the browser.

Week 1

What is software design mainly concerned with?

Week 1

A program with all logic in one function may be okay for a tiny exercise, but becomes risky because:

Week 1

Architecture usually refers to:

Week 1

A good early design question is:

Week 1

Good design should make software:

Week 2

A functional requirement describes:

Week 2

An acceptance criterion is useful because it:

Week 2

“The page loads in under two seconds” is a:

Week 2

An assumption should be:

Week 2

A constraint is:

Week 3

High cohesion means:

Week 3

Low coupling means:

Week 3

A god class is usually a class that:

Week 3

A good decomposition should be based mostly on:

Week 3

Separation of concerns helps because:

Week 4

Encapsulation helps by:

Week 4

Composition means:

Week 4

Inheritance is risky when:

Week 4

An invariant is:

Week 4

A data-only class plus one giant manager can lead to:

Week 5

SRP says a class should have:

Week 5

OCP encourages:

Week 5

LSP is mainly about:

Week 5

A growing switch statement over behavior may suggest:

Week 5

SOLID should be used:

Week 6

ISP says clients should not depend on:

Week 6

DIP says high-level policy should depend on:

Week 6

Dependency injection means:

Week 6

A good dependency to abstract is often:

Week 6

A fake object in tests can:

Week 7

DRY is mostly about avoiding duplicated:

Week 7

YAGNI warns against:

Week 7

KISS means:

Week 7

A name like processData is weak because:

Week 7

Premature abstraction can:

Week 8

A sequence diagram is best for showing:

Week 8

A class diagram is useful for showing:

Week 8

A component diagram usually shows:

Week 8

A useful diagram should:

Week 8

For this course, diagram value is measured mostly by:

Week 9

Strategy is useful when:

Week 9

Factory helps manage:

Week 9

Observer is useful for:

Week 9

Singleton should be used carefully because:

Week 9

A design pattern should be used when:

Week 10

Adapter is used to:

Week 10

Decorator is useful when:

Week 10

Command represents:

Week 10

Repository separates:

Week 10

MVC/MVVM mainly help separate:

Week 11

A unit test usually checks:

Week 11

A fake repository is useful because:

Week 11

Hard-to-test code often has:

Week 11

A test seam is:

Week 11

Tests should usually focus on:

Week 12

Architecture is mostly concerned with:

Week 12

A layered architecture usually separates:

Week 12

A monolith is:

Week 12

Microservices add complexity because:

Week 12

Architecture decisions should be judged by:

Week 13

Refactoring means:

Week 13

A code smell is:

Week 13

Shotgun surgery means:

Week 13

Technical debt is:

Week 13

Safe refactoring usually uses:

Week 14

A strong design review should explain:

Week 14

A tradeoff is:

Week 14

A good pattern explanation includes:

Week 14

A small clean capstone is:

Week 14

Honest reflection shows: