SDLC
Testing
Agile
Programming Principles
Version Control
100

A structured process that enables the production of high-quality and low-cost software, in the shortest possible production time. 

What is the SDLC (Software Development Life Cycle)?

100

The process of finding errors.

What is testing?

100

A mindset that is flexible and adaptable, able to react quickly to changes, face challenges, reflect on their actions and continuously learn.

What is an agile mindset?

100

One of the rules of basic programming is to never get caught up in trying to be overly clever or showing off with a thick block of advanced code.

What is KISS (Keep It Simple, Stupid)?

100

Practice of tracking and managing changes to software code.

What is version control?

200

A non-technical definition of features that users expect from the system

What is a requirement?

200

A technique that involves testing the internal structure, logic, and code of the software.

What is white box testing?

200

An agile project management framework that helps teams structure and manage their work through a set of values, principles, and practices.

What is scrum?

200

When writing code, avoid duplication of data or logic.

What is DRY (Don't Repeat Yourself)

200

A free and open-source Version Control System (VCS) that can be used to manage all types of projects, from small to large, with speed, efficiency, and transparency. 

What is Git?

300

A technical definition of what is required for building system.

What is a specification?

300

A technique that assesses the functionality, behavior, and output of the software without knowledge of its internal structure, logic, or code.

What is black box testing?

300

A short, time-boxed period when a scrum team works to complete a set amount of work (typically two weeks).

What is a sprint?

300

Objects with complex behaviors should contain instances of objects with individual behaviors. They should not inherit a class and add new behaviors.

What is Composition Over Inheritance?

300

A collaboration platform built on the top of Git

What is GitHub?

400

A developer must implement these requirements so that users can achieve their goals with the product

What is a functional requirement?

400

Testing performed to expose defects in the interfaces and in the interactions between integrated components or systems. 

What is integration testing?

400

A prioritized list of features which a product should contain.

What is a product backlog?

400

Every class or module in a program should only provide one specific functionality. Not to add too many responsibilities in a single classes. 

What is Single Responsibility?

400

The command to initialize a local Git repository

What is git init?
500

Place constraints on what goals should be met in the product.

What is a non-functional requirement?

500

A form of software testing, performed by the customer or end-user. The emphasis is on ensuring the system not only meets requirements but that it provides the customer with the user experience (UX) they want and need.

What is acceptance testing?

500

Describe what the product should do in terms meaningful to customers and users.

What are user stories?

500

Reviewing your code and looking for ways to optimize it, making it more efficient while keeping the results exactly the same.

What is refactoring?

500

The command to switch the working directory to a specific Git branch 

What is git checkout?

M
e
n
u