No video

3 Reasons WHY Waterfall Doesn't Work

  Рет қаралды 4,883

Christopher Okhravi

Christopher Okhravi

Күн бұрын

Пікірлер: 51
@coolbrotherf127
@coolbrotherf127 4 ай бұрын
Even my simple college projects rarely stayed static. There's so much that I don't know that I don't know at the beginning of the projects to give any kind of accurate prediction of what it would be like to actually complete them, assuming I was making something new. It's also difficult to make sure everyone on a project has the same goals in mind from the very beginning.
@thecorpooration
@thecorpooration 4 ай бұрын
I engineered custom vehicles in a previous life. Part of the vehicle requirements were S-type (strict government regulations, standard vehicle dynamics, etc.), part P-type and part E-type (ex. subject to evolving customer needs). Your guide is great: we would have done better to focus on the S-type problems first, then P-type, lastly E-type.
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
Thank you very much for sharing these interesting experiences. Much appreciated 😊🙏
@professorfontanez
@professorfontanez 3 ай бұрын
The way I have thought of this is, for example, S-Type systems tend to be very, very, small and/or is a representation of something that existed before. For instance, a media player. There hasn't been a significant change in decades on what kind of functions should be supported by such system. At the very minimum, you will need to support the ability to: 1) playback 2) pause 3) stop 4) rewind (or skip back) 5) fast forward (or skip forward) 6) change tracks (either by one back or forward, but also by selecting a track number) That said, I imagine that, at some point, such a system started as an E-System (or even a P-Type). Basically, given time, I think P-Type and E-Type systems could morph into a specifiable type system because enough knowledge about what such systems should do has been accumulated.
@perian1983
@perian1983 4 ай бұрын
I may be repeting myself a little bit here, but I really do like your videos, they're interesting, clear and engaging. One of the things I appreciate most is when you add bibliographic references, thus allowing people to dive deeper on the topic and to discover/rediscover some of the milestones of CS fundamentals. Thanks!
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
Thank you very much. Also, thank you for reminding me about references since I had forgotten to add them to the description 😊
@glennandrews7076
@glennandrews7076 4 ай бұрын
I'd say embedded-in-hardware systems have to have up-front specifications to some degree. How do you build the hardware on time and budget if you don't know what you're going to need? And if you don't know what the software needs to do, how do you know the MCU you picked isn't either too wimpy or you're paying for power you'll never need?
@gummansgubbe6225
@gummansgubbe6225 4 ай бұрын
A long time ago I followed a radio program series called "The hunt for the perfect language" (directly translated from Norwegian). They talked about different times, places and religion and their languages. In the end they ended up with Esperanto. A language that as I remember it just add the necessary specifiers as new knowledge is gained. Their final conclusion was that you cant have a perfect language without prefect knowledge.
@FandangoJepZ
@FandangoJepZ 2 ай бұрын
Working on modeling personal finances and it’s probably what you would call a P-type system, though some elements are S-type. Connecting payments and debt from different sources, tying those liabilities to assets, and making estimations of future expenses. It’s hard to say what the right answer is, but usually easy to say what the wrong answer is.
@blucyk
@blucyk 4 ай бұрын
Loving your content... thank you!
@avidrucker
@avidrucker 4 ай бұрын
Awesome video! Good to know what was done before so we can try and not repeat our mistakes
@Mig440
@Mig440 4 ай бұрын
I had a thought just now watching this video and I am just putting it out there as a food for thought. In order to defend a waterfall approach to all of these kinds of application types it must be shown that All S-type system can be combined in such a way that the combined system is still an S-type system. All P-type system are reducible to combinations of S-type systems. All E-type systems are reducible to combinations of P-type systems. From these statements it follows that all systems regardless of type are suitable for waterfall since they are all reducible to combinations of S-type system which are all formally specifiable. Now the question that is more tricky: even if this was possible, might there still not be a problem of feasibility, i.e even if every system is reducible thus, might it not still be the case that such an exhaustive analysis into S-type systems cannot be done in a reasonably finite time frame. Might it not still be that the time it takes to perform this analysis is measured in thousands of years, even for a AI powered computer? 😂
@fetzie23
@fetzie23 4 ай бұрын
If you want your development studio to go bankrupt before you ever get out of the specification phase of your first project, sure :)
@JUMPINGxxJEFF
@JUMPINGxxJEFF 4 ай бұрын
As usual, very good content.
@Roycocup
@Roycocup 4 ай бұрын
This is really good. Could you potentially drop the links to the papers for these 3?
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
Apologies for the oversight. References added to the description. The Stacey Matrix is not specifically discussed in Rubin (2012) but Cynefin is discussed and that framework is very similar. The way I discuss the Stacey Matrix is a more informal, but very common, way that the diagram is used. Thank you very much for letting me know that I forgot the references 😊
@MrChatmoon
@MrChatmoon 4 ай бұрын
Excellent. Where did you find this analysis about the waterfall approach? Any articles or books that worth to be read? Thx you for your channel. I love it.
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
Thank you very much. The analysis is essentially compiled by me and resembles how I teach this in my university lectures 😊 Thank you for reminding me about articles and books. I have added references to the description! Apologies for the oversight. I highly recommend "Essential Scrum" if you want to dive deeper into this. Thanks for watching 😊
@bogdanf6698
@bogdanf6698 4 ай бұрын
My man!❤
@stewiebrown1520
@stewiebrown1520 4 ай бұрын
I'm working with B-Type system, B the first to comment Type system
@FritsvanDoorn
@FritsvanDoorn 4 ай бұрын
In one of the projects I am working on we actually started with writing down specs but as the month went by we got more and more specs. But that what we wrote stayed, no flipping back and redo something. It is a very complex project, so I am a bit confused now. Let me sleep on it.
4 ай бұрын
Amazing video Christopher. Super applicable to other areas of engineering too.
@SosetaFurioasaJr
@SosetaFurioasaJr 4 ай бұрын
Big daddy back in action!!! ❤
@mhamdmarch8709
@mhamdmarch8709 4 ай бұрын
Can you make a video talking about type of the systems especially, i think it will be cool 😁👍🏻
@zeocamo
@zeocamo 4 ай бұрын
this is gold, you just kill off any reason why you would use OOP, as it is only usable in the simple zone, anything else, you can't plan objects and interfaces up front, you need a structure that can change more FP-like.(FP also got problems)
@SimGunther
@SimGunther 4 ай бұрын
So the only thing we'd have to worry about is the formulas and their call order changing instead of having everything about the software change 😂
@detaaditya6237
@detaaditya6237 4 ай бұрын
No, it has nothing to do with whether you're using OOP or FP. Both can be made to easily change, depending on how you design it
@zeocamo
@zeocamo 4 ай бұрын
@@detaaditya6237 if you do OOP the "right" way than this is a big no, you need to design class diagrams, and you need to make sub classes and object only got 1 part of the state, and when you refactor that kind of system aka true OOP, then you need to start finding your changes by remaking your class diagram,(else why have it), and then you need to cut into a lot of classes, you need to add/remove full sub classes, where if you don't do that, but you code after what is needed now, then it is a lot of small changes. in a program that changes spec every day, there only thing you can use Object for is to hold data that belong together. a lot of software fail, a big % of them is because OOP, and the structure that is hard to change, and the tech debt from changes class chains.
@terrymackenzie6784
@terrymackenzie6784 4 ай бұрын
Embedded software systems can sometimes be s-type problems but even these don't work with waterfall. The only thing to takeaway from waterfall is understand your inputs and define your outputs
@davidspencer3726
@davidspencer3726 4 ай бұрын
The trick is convincing the PM that you're working on an E-type. "Well you're just doing the thing aren't you?"
@Eternal--Sunshine
@Eternal--Sunshine 4 ай бұрын
I suspect I might actually be working on a P-type system, given that my pet project is a superhuman chess engine (or AI, to fancy it up a bit). So perhaps it's not that extremely rare 😂
@thefattysplace
@thefattysplace 4 ай бұрын
My life is in the anarchy zone.
@vlaoff
@vlaoff 4 ай бұрын
Who is this video for? I've not seen someone promoting or using waterfall for more than a decade. You'd better explain the real pitfalls of agile or why PMs want to estimate in story points that are "definitely not hour equivalents" but still map onto a timeframe limit.
@adambickford8720
@adambickford8720 4 ай бұрын
Nobody admits to being a crackhead... or using waterfall.
@rohrbold
@rohrbold 4 ай бұрын
Well, they don’t call it waterfall, but in most of the regulated fields (automotive, healthcare, aerospace, military, …) they basically work that way. V-model is often used or even required.
@gavinbalajadia8697
@gavinbalajadia8697 4 ай бұрын
I love the video. It reminds me of what not to do and reevaualte my process. Do your own video then and let’s see how that works.
@catsgotmytongue
@catsgotmytongue 4 ай бұрын
Many companies try to call their waterfall-like processes agile.
@Blazejkrzak
@Blazejkrzak 4 ай бұрын
We do use it to some extend , especially in poc
@ProfessionalNoun
@ProfessionalNoun 4 ай бұрын
TLC tried to warn yall about this back in 1994...
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
😆
@wjrasmussen666
@wjrasmussen666 4 ай бұрын
How many more videos are we getting with waterfall in the title? I'd like to know when I can return to watching your videos.
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
Don’t worry its the last one 😄
@AlexanderNecheff
@AlexanderNecheff 4 ай бұрын
Did you just ask for an estimate before requirements were specified? That's pretty meta.
@ChristopherOkhravi
@ChristopherOkhravi 4 ай бұрын
@@AlexanderNecheff😆😆 (which also means that my estimate must be wrong)
@Vendavalez
@Vendavalez 4 ай бұрын
I would argue that this video was only tangentially related to waterfall but it served as a good framing device to talk about e-type, p-type, and s-type systems. If you care about that topic it may be worth a watch.
They Knew Waterfall Didn't Work
6:36
Christopher Okhravi
Рет қаралды 12 М.
Depend on Abstractions not Concretions (Framework)
11:56
Christopher Okhravi
Рет қаралды 16 М.
Nurse's Mission: Bringing Joy to Young Lives #shorts
00:17
Fabiosa Stories
Рет қаралды 6 МЛН
Underwater Challenge 😱
00:37
Topper Guild
Рет қаралды 42 МЛН
白天使选错惹黑天使生气。#天使 #小丑女
00:31
天使夫妇
Рет қаралды 15 МЛН
Gli occhiali da sole non mi hanno coperto! 😎
00:13
Senza Limiti
Рет қаралды 22 МЛН
Your Project Is FAKE Agile, What Now?
23:03
Thriving Technologist
Рет қаралды 31 М.
Covariance and Contravariance
13:31
Christopher Okhravi
Рет қаралды 13 М.
Liskov: The Liskov Substitution Principle
4:23
Turing Awardee Clips
Рет қаралды 21 М.
Agile vs Waterfall: Which is Better? | Deliver Projects Using Agile or Waterfall with Examples
11:19
Ogaga Johnson (Project Management Coach)
Рет қаралды 9 М.
"I Hate Agile!" | Allen Holub On Why He Thinks Agile And Scrum Are Broken
8:33
Why the UK Economy is Doing Surprisingly Well
9:04
TLDR News
Рет қаралды 333 М.
The Only Time You Should Use Polymorphism
13:55
Christopher Okhravi
Рет қаралды 90 М.
When Microsoft Violated Liskov Substitution Principle in .NET
18:16
Christopher Okhravi
Рет қаралды 42 М.
Always Use Interfaces
8:08
Christopher Okhravi
Рет қаралды 46 М.
7 Tips to Grow as a Developer
7:25
Christopher Okhravi
Рет қаралды 15 М.
Nurse's Mission: Bringing Joy to Young Lives #shorts
00:17
Fabiosa Stories
Рет қаралды 6 МЛН