A software company is developing a banking application where all requirements…
2023
A software company is developing a banking application where all requirements are finalized before development begins, and client involvement after the requirement phase is minimal. The development process follows a strictly linear sequence in which each phase must be completed before the next phase starts. Which software development model is most suitable for this project?
- A.
Agile
- B.
Waterfall
- C.
Spiral
- D.
V-Model
- E.
Prototyping
Attempted by 36 students.
Show answer & explanation
Correct answer: B
Concept
A software development life-cycle (SDLC) model is chosen by matching the project's nature to the model's assumptions. The Waterfall model assumes that requirements are completely known and stable at the start, that work flows through fixed phases in one direction (requirements → design → implementation → testing → deployment), and that each phase is fully completed and signed off before the next begins, with little need for the customer to revisit decisions later.
Applying it here
Read the scenario against those assumptions:
"All requirements are finalized before development begins" → requirements are fixed and stable up front.
"Client involvement after the requirement phase is minimal" → no ongoing iterative feedback is needed.
"A strictly linear sequence in which each phase must be completed before the next starts" → one-directional, phase-gated flow.
All three properties are the defining signature of the Waterfall model, so Waterfall is the most suitable choice.
Why not the others
Agile keeps requirements deliberately flexible and relies on continuous customer collaboration across short iterations — the opposite of fixed up-front requirements and minimal client contact.
Spiral is a risk-driven, iterative model that repeats cycles of planning, risk analysis and prototyping; it is meant for large, high-risk projects with evolving requirements, not a simple fixed-scope linear flow.
V-Model pairs each development phase with a corresponding testing phase (verification and validation in parallel); although sequential, its emphasis is the testing-per-phase mapping rather than the plain phase-after-phase progression described here.
Prototyping builds an early throwaway or evolutionary model to discover and refine requirements through user feedback — used precisely when requirements are unclear, which contradicts requirements being finalized first.