Agile Software Development
Requirements Engineering
Git vs Github
Design and Testing
Program
Principles
100

What does Agile mean?

A way to develop software that focuses on people, teamwork, and responding to change quickly.

100

What does SDLC stand for? 

Software Development Life Cycle

100

What is the difference between Git and Github?

Git : A tool that allows you to manage different versions of your projects/ programs. Managing the history of your projects. 

Github :  Is the website that uses Git to host projects. A platform used to store projects into the cloud. 

100

What is High-Level design?

An Abstract system-wide approach to show how the major pieces of the final application will fit and interact.

100

KISS

Keep It Simple, Stupid! Avoid overcomplicating things.

200

What is the Agile Manifesto?

A short document that lists the main values and ideas of Agile software development.

200

What does WRSPM stand for?

World, Requirements, Specification, Program, Machine

200

Select the correct definition for a local repository:

A. Storage that holds project files and their version history

B. A copy of a repository stored on your personal computer

C. A copy of a repository stored on a remote server

D. Temporary area where changes are prepared before a commit

B. A copy of a repository stored on your personal computer

200

What are the STLC phases?

Requirement Analysis

Test Planning

Test Case design and development

Test Environment setup

Test Execution

Test Cycle closure

200

CRUD

The basic actions used in software: Create, Read, Update, and Delete.

300

What is a Sprint?

A set period of time, usually one to four weeks, where a team works to finish tasks and goals.

300

What are the stages of SDLC?

Requirements, Design, Implementation, Verification, Maintenance

300

What is the git command used to add all modified files to the staging area? (case sensitive)

git add.

300

What is Verification, and what is validation?

Verification: Building the system right (meets specs).

Validation: Building the right system (meets user needs)

300

YAGNI?

Don't add functionality until it's actually needed

400

Who is the Scrum Master?

The person who helps the team follow Agile rules, removes problems, and keeps the team focused.


400

Name the main characteristics of good requirements and the main characteristics of poor requirements.

Good: Complete, Consistent, Unambiguous

Poor:
-Sneaky, high level requirements
-Missing requirements
-High level of rework
-Untestable requirements

400

What is the git command used to fetch and integrate changes from the remote repository into the local repository? (case sensitive) 

git pull

400

Define the Layered Architectural pattern.

Divides program into layers (UI → Logic → Data). Each layer serves the one above.

400

Single Responsibility

Each class or function should handle one main job

500

What are the four core values of the Agile Manifesto?

People and teamwork, working software, customer collaboration, and responding to change.

500

Which of the following are accurate definitions of UML?

A. A short story explaining how the system will let the user do something. They are easy to write, easy to understand, and can cover just about any situation you can imagine.

B. A description of a series of interactions between actors. The actors can be users or parts of the application.

C. The Unified Modeling Language (UML) lets you specify how parts of the system should work. It uses several kinds of diagrams to represent different pieces of the system.

D. A prototype is a mockup of some or all of the application. The idea is to give the customers a more intuitive hands‐on feel for what the finished application will look like and how it will behave than you can get from text descriptions such as user stories and use cases.


C. The Unified Modeling Language (UML) lets you specify how parts of the system should work. It uses several kinds of diagrams to represent different pieces of the system.


500

Whats the git command used to save the changes from the local repository along with a message of what is being committed

git commit -m "Message" 

500

What is the difference between Static and Dynamic UML diagrams?

Static: Represent elements that do not change during runtime. The structure and relationships remain constant.

Dynamic: Represent behavior that unfolds over time. Interactions, message flow, and process execution.

500

Separation of Concerns

Each part of a program should handle one main job