•   8 min read

Eternal Classics of Waterfall

From amongst numer­ous ques­tions even­tu­al­ly aris­ing in every project, one issue is out­stand­ing: what is the best way to man­age the prod­uct devel­op­ment process? What par­tic­u­lar­ly comes to mind is Water­fall – one of the options proven over the years (or a cas­cade water­fall mod­el to man­age soft­ware development).

As a mat­ter of fact, this method­ol­o­gy is being severe­ly crit­i­cized now, but is it real­ly so bad, or once again we will fig­ure out that his­to­ry repeats itself?

Life cycle of soft­ware development

Each and every team of devel­op­ers can either cre­ate its own soft­ware life cycle mod­el or use some­thing which is gen­er­al­ly acknowl­edged. One of the options is Water­fall. An Amer­i­can V.U.Royce is con­sid­ered to have found­ed this mod­el. He was rumored to have bor­rowed many things from his col­leagues by tak­ing cred­it for their work. It took place in 1970. Up to this day, the method pre­sent­ed by Royce is used in many projects either in its orig­i­nal ver­sion or modified.

How­ev­er some IT insid­ers claim that such method­ol­o­gy has nev­er existed:

As an IT pro­fes­sion­al and teacher, for more than 40 years have I heard many myths about the IT indus­try. But what keeps me sur­prised is the rea­son why the word Water­fall” is still used to describe a non-exist­ing method­ol­o­gy, and why cre­ators of devel­op­ment meth­ods and sys­tems use it as an object for comparison.”

David Dis­chave, Pro­fes­sor of the School of Infor­ma­tion Stud­ies, Syra­cuse Uni­ver­si­ty, USA

It is weird to hear such thing about the method­ol­o­gy which has been used for decades in soft­ware devel­op­ment for var­i­ous activ­i­ties, such as the auto­mo­tive indus­try, con­struc­tion of build­ings and struc­tures, finance&accounting, med­i­cine and electronics.


Water­fall in IT

The main fun­da­men­tal prin­ci­ple of the Water­fall mod­el for soft­ware devel­op­ment is that every sub­se­quent step can­not be start­ed unless the pre­vi­ous one is com­plet­ed. At the same time, no arbi­trary moves for­ward or back­ward are allowed, and phas­es should not over­lap. This is the basic thing that dis­tin­guish­es the cas­cade method­ol­o­gy from amongst its agile peers (or rivals), such as Agile, DSDM, Scrum or FDD.


Action Algo­rithm in Waterfall

To under­stand Royce’s ideas under­ly­ing the mod­el you may study his orig­i­nal work: 
Royce,Winston (1970), Man­ag­ing the Devel­op­ment of Large Soft­ware Systems.

Cas­cade-based workflow

Con­ceiv­ing and dis­cussing an idea

This phase does not include devel­op­ment basi­cal­ly. Just a cer­tain new idea inter­est­ing for one or more per­sons is considered.

Ana­lyz­ing requirements

This phase includes the most detailed spec­i­fi­ca­tion of the customer’s require­ments for the project. Ways to reach the goal are deter­mined; dead­lines for oper­a­tions are out­lined along with the finan­cial aspect. At the same time, a cer­tain time and mon­ey reserve is spared for each work unit. When the analy­sis of require­ments is com­plet­ed, a tech­ni­cal assign­ment for pro­gram­mers and a bud­get are ready.

Design­ing software

This phase includes def­i­nite steps:

  1. select­ing a pro­gram­ming plat­form (Python, PHP, JS etc.)
  2. clar­i­fy­ing tech­ni­cal details (e.g. inter­ac­tion between the ser­vice or prod­uct with servers, whether or not to use API, log­ic of the exter­nal and inter­nal inter­faces etc.)
  3. solv­ing project secu­ri­ty issues (e.g. whether or not to use HTTPS, SSL encryp­tion etc.)
  4. out­lin­ing the roles of soft­ware users (admin­is­tra­tor, client, man­ag­er etc.)
  5. final­iz­ing the issues of reli­a­bil­i­ty, effi­cien­cy and fur­ther tech­ni­cal sup­port of the tar­get product.
  6. form­ing a des­ig­nat­ed team.

Soft­ware development

This phase encom­pass­es writ­ing a code con­form­ing to the doc­u­ments pre­vi­ous­ly drawn up.

Soft­ware testing

Spe­cial­ists test the final ver­sion of the prod­uct under con­di­tions close to real­i­ty by record­ing bugs in it. The most crit­i­cal ones for gen­er­al soft­ware oper­a­tion are fixed, less sig­nif­i­cant ones may remain with­out fix­ing if the time is expired or if the bud­get is spent.

Tech­ni­cal sup­port of software

The result­ing ser­vice­able soft­ware prod­uct comes into use accord­ing to its intend­ed pur­pose with sup­port pro­vid­ed. That means mak­ing sure the prod­uct is ser­vice­able, fix­ing fail­ures, plan­ning func­tion­al­i­ty upgrades based on users’ feedback.

All the above phas­es are imple­ment­ed in a strict sequen­tial order, and their results are recorded.
To under­stand the evo­lu­tion of the clas­sic Water­fall method­ol­o­gy described above, you may study the Project Man­age­ment Body of Knowl­edge. The 3rd and 4th ver­sions have a num­ber of dis­crep­an­cies which will help to under­stand the cas­cade” path.

Advan­tages and dis­ad­van­tages of the cas­cade mod­el of soft­ware development

Unfor­tu­nate­ly, noth­ing is per­fect in our world, thus the cas­cade method­ol­o­gy also has both strong and weak points.


Strong points of the cas­cade mod­el of soft­ware development Weak points of the cas­cade mod­el of softwaredevelopment
  • every step of work is ulti­mate­ly detailed, its progress is recorded
  • time-con­sum­ing main­te­nance of detailed doc­u­ments which, more­over, may not always be under­stand­able for the cus­tomer thus giv­ing rise to questioning 
  • require­ments are set out explic­it­ly and clear­ly to the ulti­mate extent, they can­not con­tra­dict each oth­er or get mod­i­fied dur­ing the workflow
  • neces­si­ty for qual­i­fied busi­ness ana­lysts capa­ble of defin­ing a Tech­ni­cal Assign­ment fea­si­ble for effi­cient work
  • no room for maneu­ver if dur­ing the devel­op­ment process the prod­uct appears to fail to meet the mar­ket demands
  • it is pos­si­ble to know in advance how much time and mon­ey will be spent on the project
  • time and mon­ey con­sump­tion is rather high
  • the method­ol­o­gy itself is eas­i­ly under­stand­able even for devel­op­ers with lit­tle experience
  • crit­i­cal prob­lems are much like­ly to be detect­ed in the final devel­op­ment phase; and fix­ing such prob­lems is an extreme­ly expen­sive process at the end prod­uct stage.
  • sim­plic­i­ty of mon­i­tor­ing and trans­fer of a project to anoth­er team if nec­es­sary due to a strict account­abil­i­ty system.

How to use the cas­cade devel­op­ment mod­el and in what cases?

Accord­ing to the prac­tice, the Water­fall mod­el of soft­ware devel­op­ment is quite rel­e­vant in the fol­low­ing cases:


  1. the cus­tomer par­tic­i­pates in the project only in the first phase, and after­wards he accepts the end product;
  2. require­ments for the prod­uct are not sub­ject to change;
  3. the project is high­ly com­pli­cat­ed, long-term and expensive;
  4. qual­i­ty is the main pri­or­i­ty, even to the detri­ment of time;
  5. lack of a team com­pris­ing extra-class developers;
  6. it is pos­si­ble to out­source spe­cial­ists for project implementation.
To under­stand pos­si­ble motives for aban­don­ing the cas­cade method­ol­o­gy, you may read the
book Scrum. The Rev­o­lu­tion­ary Method of Project Man­age­ment by Jeff Sutherland.

Exam­ples of Water­fall in use

The pure cas­cade mod­el is not so much wide­spread in mod­ern devel­op­ment, and very often
what can­not be clas­si­fied as Agile is named Water­fall, thus it is quite dif­fi­cult to deter­mine where this very method­ol­o­gy is used.

Accord­ing to experts, a sig­nif­i­cant part of ERP sys­tems and pro­grams designed for con­struc­tion, med­i­cine, oper­a­tions under gov­ern­men­tal con­tracts, indus­tri­al use or for sim­i­lar fun­da­men­tal appli­ca­tions, are devel­oped by using a cer­tain­ly mod­i­fied Water­fall version.

Spe­cif­ic fea­tures of han­dling such projects are bet­ter under­stood with the book Pat­tern-based Devel­op­ment of Enter­prise Sys­tems” by Sergey Zykov.
And it is log­i­cal­ly jus­ti­fied. This was also described by Chuck Cobb, a men­tor, train­er and the author of books ded­i­cat­ed to Agile meth­ods in project management.

If you are build­ing a bridge across a riv­er, it would be fun­ny to say: We will build the first super­struc­ture, then we will see the out­come, and then we will decide whether or not to com­plete the rest of its superstructures!”

From amongst the com­pa­nies where Water­fall is or was used, the fol­low­ing ones may be noted:

Com­pa­ny name Pur­pose of using the Water­fall model Whether or not the method­ol­o­gy is used now  Com­ment by the company’s representative
Wüsten­rot & Würt­tem­ber­gis­che (W&W) Devel­op­ment of the ERP sys­tem for the finan­cial sector No data
Cis­co Devel­op­ment of safe­ty systems Yes
EPAM Diverse prod­ucts or solu­tions or parts of them Yes Alek­sey Ionov: “…it is not nec­es­sary to make a whole large project by Agile — flex­i­ble devel­op­ment may be used with­in cer­tain phas­es or workflows…” 
IBM Diverse prod­ucts or solu­tions or parts of them Yes Ros­alind Rad­cliffe: It’s now the time when devel­op­ment teams han­dling Water­fall are unable to ful­fill the busi­ness require­ments, so such projects and prod­ucts receive more main­te­nance works … Water­fall will be grad­u­al­ly replaced by new tech­nolo­gies and new teams engaged in intro­duc­ing new busi­ness – practices”.
Microsoft IT Diverse prod­ucts or solu­tions or parts of them No Over the last few years… all our teams have acquired flex­i­ble method­olo­gies. We have dis­cov­ered that they have solved many prob­lems stem­ming from the tra­di­tion­al Water­fall mod­el where projects are planned in advance and may last for months or even years. With­in this mod­el, a prod­uct may turn out to be out­of-date once released by us”.
AT Con­sult­ing Diverse prod­ucts or solu­tions or parts of them Yes Vasiliy Korablev: To devel­op sys­tems from scratch”, we use either flex­i­ble (Agile) or cas­cade (Water­fall) devel­op­ment approach, or both of them combined.”
Par­al­lels Diverse prod­ucts or solu­tions or parts of them Yes Niko­lay Dobro­vol­skiy: In dif­fer­ent projects we use dif­fer­ent approach­es — in some cas­es Agile with one-or two-week sprints, in oth­er cas­es — qua­si-Water­fall with mile­stones which may take sev­er­al months. Over many years, we have shaped an idea that the larg­er is a project or a team work­ing on it, the more com­plex and the less effi­cient it is to try to stuff devel­op­ment into an agile process”.
SAP Diverse prod­ucts or solu­tions or parts of them Yes Evgeniy Arnau­tov: At the stage of prod­uct cre­ation, we may often see Agile vari­ants, and some­times they are com­bined with the Water­fall approach”.
Toy­ota Diverse prod­ucts or solu­tions or parts of them No Satoshi Ishii: “…we are try­ing to learn how to apply TPS (Lean in the West) to soft­ware development


Appli­ca­tions and pro­grams to man­age devel­op­ment based on the Cas­cade Model

To han­dle Water­fall, you may use a range of prod­ucts facil­i­tat­ing time track­ing and capa­ble of mak­ing up Gantt charts.


Work­sec­tion



It is an attrac­tive Ukrain­ian saas ser­vice offer­ing a con­ve­nient mobile version.

It is suit­able for care­ful sched­ul­ing due to the fol­low­ing fea­tures available:
  • Gantt dia­gram with links between tasks and deadlines
  • dis­tri­b­u­tion of duties among exec­u­tives with dif­fer­ent authorities
  • sys­tem of diver­si­fied report­ing forms
  • sav­ing com­ments, emo­jis and all his­to­ry of activ­i­ties with­in the project
  • lim­it­ed access of the customer/​client for trans­paren­cy of the devel­op­ment process
  • pos­si­bil­i­ty to indi­cate bud­gets and expenses
  • check­lists for small phas­es of tasks to facil­i­tate exe­cu­tion exact­ly as instructed.

Ver­dict

Water­fall is a method­ol­o­gy used for quite a long time, and what­ev­er crit­i­ciz­ers say, it is efficient
in numer­ous cases.

At the same time, this approach is irrel­e­vant in pure form for many projects requir­ing prompt respond­ing to volatile mar­ket demands. Based on what is said by rep­re­sen­ta­tives of large­ly diver­si­fied com­pa­nies, we may con­clude that Water­fall deserves a role in con­tem­po­rary projects. But using Water­fall is jus­ti­fied where require­ments are con­stant and will def­i­nite­ly remain the same by the project deadline.

esc
Share
или
PM school
Wrike is a genuinely capable project management tool. That’s half the problem. Most teams that leave don’t leave because something broke. They leave because they spent three months configuring folder...
26 August 2026   •   22 min read
PM school
Atlassian finally put a date on it. Jira Data Center — the last self-hosted Jira you could actually buy — goes read-only on March 28, 2029, and the door to new data center subscriptions already shut for...
25 August 2026   •   23 min read
PM school
Communications within an organization serve at least two inseparable purposes. On one hand, without comfortable interaction, it is impossible to create a harmonious internal team environment. On the other...
2 August 2026   •   11 min read
Get started now
Please enter your real email 🙂