Process Models
Requirements
UML & System Modeling
OO Principles & Design
Testing & QA
100

This traditional, linear software process model flows sequentially through phases like requirements, design, implementation, and verification, where each phase must finish before the next begins.

What is the Waterfall Model?

100

These requirements define the specific behaviors, features, or technical capabilities that a system must accomplish (e.g., "The system must allow users to log in").

What are Functional Requirements?

100

This type of static UML diagram shows the system structure by depicting its classes, attributes, operations, and the relationships among objects.

What is a Class Diagram?

100

This foundational object-oriented concept bundles data and the methods that operate on that data into a single unit (class), while hiding internal implementation details from external objects.

What is Encapsulation?

100

This level of software testing focuses on isolating and verifying individual source code modules, classes, or individual functions.

What is Unit Testing?

200

This highly iterative approach to software development prioritizes adaptive planning, evolutionary development, early delivery, and continual improvement through customer collaboration.

What is Agile?

200

These requirements specify criteria that judge the operation of a system rather than specific behaviors, often focusing on quality attributes like security, scalability, and performance.

What are Non-Functional Requirements?

200

This structural or behavioral diagram represents a user's interaction with the system, mapping out actors and their high-level goals.

What is a Use Case Diagram?

200

This principle enables objects of different classes to be treated as objects of a common superclass, allowing a single method call to behave differently based on the underlying type.

What is Polymorphism?

200

This method of testing examines the functionality of an application without peering into its internal source code structures or implementation logic.

What is Black-Box Testing?

300

In Scrum, this specific role is responsible for maximizing the value of the product, managing the product backlog, and representing the stakeholders.

Who is the Product Owner?

300

This short, simple description of a feature is written from the perspective of the end-user and typically follows the format: "As a [role], I want [goal] so that [benefit]."

What is a User Story?

300

This interaction diagram shows how processes or objects operate with one another and in what chronological order messages are passed.

What is a Sequence Diagram?

300

The "S" in the SOLID design principles states that every class or module should have only one reason to change.

What is the Single Responsibility Principle?

300

This method of testing looks directly inside the software structure, verifying internal paths, logic flows, loops, and statement coverages.

What is White-Box (or Glass-Box) Testing?

400

This time-boxed iteration in Scrum typically lasts between 1 to 4 weeks, during which a specific, usable product increment is created.

What is a Sprint?

400

This phase of requirements engineering involves gathering information from stakeholders through techniques like interviews, workshops, and surveys.

What is Requirements Elicitation?

400

In a class diagram, this specific type of relationship represents a "has-a" relationship where the child object can exist independently of the parent container (represented by an open diamond).

What is Aggregation?

400

This SOLID principle states that software entities (classes, modules, functions) should be open for extension but closed for modification.

What is the Open/Closed Principle?

400

This type of testing is performed after code modifications to ensure that existing features have not been accidentally broken or corrupted by new changes.

What is Regression Testing?

500

This Scrum event is held at the end of a sprint to look back at the team's processes and identify what went well, what didn't, and how to improve in the next sprint.

What is the Sprint Retrospective?

500

This documentation concept refers to the ability to link requirements throughout the development lifecycle back to their business origin and forward to their respective design elements and tests.

What is Requirements Traceability?

500

In a class diagram, this strong form of association implies ownership where the lifetime of the child object is entirely dependent on the parent object (represented by a solid/filled diamond).

What is Composition?

500

This SOLID principle notes that high-level modules should not depend on low-level modules; both should depend on abstractions (e.g., interfaces).

What is the Dependency Inversion Principle?

500

In software quality metrics, this term describes how closely code lines are executed during a test suite, calculated as a percentage.

What is Code Coverage?

M
e
n
u