Software Design
SDLC
Testing
OOP
Version Control
100

This Git command adds changes from your working directory to the staging area.

git add
100

This SDLC phase involves gathering and documenting what the system should do.

requirements gathering/analysis

100

This type of testing allows for nuanced user feedback.

Modularity

100

This practice helps to protect data integrity by restricting access to certain components of an object.

Encapsulation

100

This practice is essential for integrating changes from different branches

Merging

200

What is the intellectual distance in Software Design?

  Gap between real-world problems and software solutions

200

This framework in requirements engineering stands for World, Requirements, Specification, Program, Machine.

WRSPM

200

This type of testing allows for nuanced user feedback.

Manual testing

200

Which of the following principles of OOP focuses on exposing only necessary parts of an object?

Abstraction

200

Which of the following is NOT a benefit of using version control?

Preventing all errors

300

This software development approach emphasizes flexibility and collaboration among team members.

agile development

300

In requirements engineering, these describe what the system should do, while non-functional requirements describe how the system performs a function.

functional requirements

300

This type of testing examines individual components in isolation

Unit Testing

300

Which of the following is an example of encapsulation?

A class that contains both data and methods

300

This distinguishes Git from GitHub in version control systems.

Git is a distributed version control system, while GitHub is a web-based hosting service for Git repositories

400

This concept represents future work that arises from choosing an easy solution now instead of a better approach.

Technical debt

400

Modularity in software design promotes what?

Dividing systems into smaller components

400

This is NOT part of the issues criteria for a software defect.

architectural problems

400

This OOP principle allows a method to take different forms.

polymorphism

400

Which of the following best describes a merge in version control?

  Integrating changes from different branches 

500

This principle suggests not adding functionality until necessary.

YAGNI or You Aren't Gonna Need It

500

This architecture pattern separates an application into three interconnected components: Model, View, and Controller.

MVC

500

This testing concept asks "Are we building the product right?" while its counterpart asks "Are we building the right product?"

verification

500

This software design concept promotes dividing systems into smaller components.

modularity

500

Which of the following best describes the role of branches in version control?

  To allow parallel development 

M
e
n
u