Software Engineering
Requirements
Architecture & UML
Testing
Agile & OOP
100

What is software engineering?

The complete discipline that includes requirements, design, development, testing, and maintenance.

100

What are functional requirements?

Requirements that describe system behavior or features.

100

What is modularity?

A design quality where components are independent and reusable.

100

What is unit testing?

Testing individual components in isolation.

100

What is a sprint?


A time-boxed iteration that delivers working software.

200

What is programming?

Writing code to implement functionality.

200

What are non-functional requirements?

Requirements that describe performance, security, or usability.

200

What is MVC?

An architecture pattern that separates Model, View, and Controller.

200

What is system testing?

Testing the whole system as one.

200

Who is the Scrum Master?

The Agile role responsible for removing team blockers.

300

What is the requirements phase?

The phase of the SDLC where system goals and user needs are identified.

300

What are requirements?

The “R” in WRSPM.

300

What are structural diagrams?

UML diagrams that show system structure.

300

What is verification?

"Are we building the product right"

300

What is encapsulation?

The OOP principle that hides internal implementation details.

400

What is the design phase?

The SDLC phase where the system architecture and components are planned.

400

What is the world?

The real-world context in WRSPM.

400

What are behavioral (dynamic) diagrams?


UML diagrams that show interactions over time.

400

What is validation?

"Are we building the right product"

400

What is composition over inheritance?

The principle that favors using objects instead of inheritance for flexibility.

500

What is maintenance?

The phase where the system is updated after release.

500

What is the program?

The executable implementation in WRSPM.

500

What are microservices?

An architecture style with independently deployable services.

500

Why can software never be completely bug-free?

The idea that software always has defects due to complexity and change.

500

What is KISS?

“Keep it simple.”