SDLC
Design & Architecture
Software Testing
OOP
Agile & PM
100

Q: What does SDLC stand for, and what is its purpose?

A: Software Development Life Cycle — structured phases to plan, build, test, and deploy software. 


100

Q: What is modularity?

A: Splitting a system into smaller independent components for easier development and maintenance. 


100

Q: What does STLC stand for?

A: Software Testing Life Cycle. 


100

Q: Define encapsulation.

A: Bundle data with methods; hide internals behind a public interface. 


100

Q: What is Kanban?

A: A visual workflow board limiting WIP and improving flow. 


200

Q: Name two early SDLC activities before coding starts.

A: Requirements analysis and design (planning/architecture also acceptable). 


200

Q: Name two traits of “good” architecture design.

A: Traceable to requirements; accommodates change; uniformity; reuse patterns; etc. 


200

Q: Name two STLC phases.

A: Requirement Analysis, Test Planning, Test Case Development, Environment Setup, Test Execution, Closure. 


200

Q: Define abstraction.

A: Show essentials, hide implementation details. 


200

Q: Two Agile Manifesto core values (of four).

A: Individuals & interactions over processes & tools; Working software over comprehensive documentation; Customer collaboration over contract negotiation; Responding to change over following a plan. 


300

Q: Give one functional and one non-functional requirement example.

A: Functional: user login; Non-functional: supports 10,000 concurrent users / response time. 


300

Q: Match the patterns: MVC, Layered, Microservices, Client–Server.

A: MVC: separates model/view/controller; Layered: presentation→business→data; Microservices: small independent services via APIs; Client–Server: centralized services for clients. 


300

Q: Unit vs. Integration testing — quick difference.

A: Unit tests isolated components; Integration tests interactions between components. 


300

Q: Inheritance vs. composition — when prefer composition?

A: Prefer composition to avoid rigid hierarchies; combine behaviors from smaller parts. 


300

Q: Scrum roles: name two and their focus.

A: Scrum Master (process/impediments), Product Owner (value/priorities), Developers (delivery). 


400

Q: In the WRSPM model, what do the letters stand for?

A: World, Requirements, Specifications, Program, Machine. 


400

Q: Structural vs. behavioral UML diagrams — difference?

A: Structural = static structure (class, component, deployment); Behavioral = interactions over time (use case, sequence, activity). 


400

Q: System vs. Acceptance testing — who/what?

A: System tests full integrated system; Acceptance validates business needs, often by end users. 


400

Q: What does polymorphism enable?

A: Treat different types via a common interface; override/overload for flexibility. 


400

Q: Define sprint.

A: Fixed-length iteration (e.g., 1–4 weeks) delivering a potentially shippable increment. 


500

Q: Verification vs. Validation — phrase each as a question.

A: Verification: “Are we building the product right?” Validation: “Are we building the right product?” 


500

Q: Explain “Separation of Concerns” and why it matters.

A: Each module handles a distinct concern → lower coupling, better readability/testability/parallel work. 


500

Q: Can complex software be bug-free? Why or why not?

A: Practically no—too many states/interactions; goal is minimizing critical defects. 


500

Q: Single Responsibility Principle — define it.

A: A module/class should have one reason to change—one focused responsibility. 


500

Q: Technical debt — what is it and why manage it?

A: Future rework cost from shortcuts; unmanaged debt slows delivery and risks defects. 


M
e
n
u