What is the goal of modularity in design?
Break system into independent parts for easier maintenance and scalability
What does STLC stand for?
Software Testing Life Cycle
What does Agile emphasize over processes and tools?
Individuals and interactions
What does DBMS stand for?
Database Management System
What does SDLC stand for?
Software Development Life Cycle
Name the three components of MVC
Model, View, Controller
What is the difference between verification and validation?
Verification checks if it’s built right; validation checks if it’s the right product
What does YAGNI stand for?
You Aren’t Gonna Need It — don’t add unnecessary features
What is the purpose of a primary key?
Uniquely identifies each record and cannot be null
Name one activity of the SDLC.
Responses could include: planning, requirements, design, implementation, testing, deployment, or maintenance
What is a layered architecture and why is it used?
System divided into layers (UI, logic, data) for separation of concerns
Name two types of software tests.
Unit, Integration, System, Acceptance, Manual, Regression
In Scrum, who ensures Agile practices are followed?
The Scrum Master
What command uploads changes to a remote repository?
git push
What’s the difference between software engineering and programming?
Engineering covers design, testing, maintenance; programming just means writing code
Difference between structural and behavioral UML diagrams?
Structural = static (class, component); Behavioral = dynamic (sequence, activity)
Can software ever really be bug-free? Why?
No—software complexity and human error make perfect software impossible
What is technical debt and how does refactoring help?
Debt = cost of shortcuts; Refactoring improves code without changing behavior
Difference between Git and GitHub?
Git = local version control tool; GitHub = cloud hosting for Git repos
Difference between functional and non-functional requirements?
Functional: what system does; Non-functional: how well it performs (speed, usability)
Compare microservices vs. monolithic architectures.
Microservices = independent small services via APIs; Monolithic = single, tightly coupled unit
Explain unit, integration, and acceptance testing.
Unit = single component; Integration = modules together; Acceptance = full system validation
What are the four values of the Agile Manifesto?
1. Individuals & interactions 2. Working software 3. Customer collaboration 4. Responding to change
What does git add . do in the Git workflow?
Stages all modified files for commit before pushing
What is the WRSPM model and what does it represent?
World, Requirements, Specification, Program, Machine — connects real-world problems to system design