Software Engineering Fundamentals
Object-Oriented Programming Principles
Software Development Life Cycle
Git & Github
Agile Values & Principles
100

Gathering and documenting what a system should do before development begins.  

What is Requirements Engineering?

100

Hiding unnecessary implementation details from the user.

What is Abstraction?

100

This phase defines the timeline and overall objectives before development begins.

What is Planning?

100

This command initializes a new Git repository.

What is git init?

100

Focuses on team communication and collaboration.

What is Individuals and Interactions over Processes and Tools?

200

Describes how well a system should perform in terms of attributes like speed and scalability. 

What is a Non-Functional Requirement?

200

Possesses attributes and functions to reprsent and modify data.

What is an Object?

200

Stakeholders’ needs are gathered and documented to determine what the system should do.

What is Requirements Analysis?

200

This command stages changes so they can be included in the next commit.

What is git add?

200

Encourages flexibility, allowing teams to adapt to changing requirements late in the development process. 

What is Responding to Change over Following a Plan?

300

This software development methodology emphasizes collaboration and responding to change.

What is Agile?

300

A child class receives attributes and or functions from a parent class.

What is Inheritance?

300

This phase translates requirements into system architecture and technical specifications.

What is Design?

300

This command saves staged changes to the local repository with a message to describe the update.

What is git commit?

300

Highest priority of satisfying the customer through early and continuous delivery of valuable software.

What is the First Principle of the Agile Manifesto? 

400

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

What is MVC?

400

The practice of combining small objects rather than relying heavily on inheritance.

What is Composition over Inheritance?

400

This phase involves writing the actual code to build the system.

What is Development? 

400

This command uploads your local commits to a remote repository like GitHub.

What is git push?

400

This principle states that teams should regularly reflect on how to become more effective and adjust their behavior accordingly.

What is the Final Principle of the Agile Manifesto?
500

This is NOT the main focus of a software engineer.

What is Writing Code?

500

Concept that allows the same method name to behave differently depending on the object or parameters.

What is Polymorphism?

500

This phase occurs after release, including updates and bug fixes.

What is Maintenance?

500

This command integrates changes from another branch into the current branch.

What is git merge?

500

This is an agile framework for developing and delivering products through collaboration and iterative progress.

What is Scrum?

M
e
n
u