3 ms·
It's not though. This is why Agile is such a failure. Because people don't actually read the Manifesto. It doesn't say planning is unimportant. It doesn't say
by ssmoot 10y ago
It's not though. This is why Agile is such a failure. Because people don't actually read the Manifesto.
It doesn't say planning is unimportant. It doesn't say contract negotiation is unimportant. It doesn't say timelines and knowing what you're doing is unimportant.
You can and should do all these things. It's amazing to me that Software Developers seem to believe their job is somehow unique and it's just not possible to do simple things General Contractors and real Engineers do every day.
Agile is just a set of values that amount to "be pragmatic and flexible".
You can totally do that without Scrum and avoiding any sort of planning until the last possible moment.
IME actual requirements almost never change in software. They're just frequently not surfaced until code hits the page because little to no due diligence was done on them. And I very very rarely see a case where an issue with fulfilling the client's desires as given couldn't have been surfaced and resolved very early on if someone had just sat down and thought about it for a few minutes before going off and promising something that couldn't be delivered in the time or budget allowed.
- kod 10y agoIt's amazing to me that people compare a job that we have 7,000 years of experience with (making buildings) to a job that we have 70 years of experience with (making software).
- dasil003 10y agoAlso the construction of physical objects obeys unchanging physical laws. The construction of software is the coalescence of arbitrary logic. Real engineers decry the lack of discipline in software engineering, but I don't think it's possible to impose anything approaching the discipline of physical engineering without radically more constraints, but to do that would require subdividing software into a large number of much more focused domains, and even then, the divisions would be somewhat arbitrary.
- UK-AL 10y agoOh don't get me wrong, you have planning. You just do everything in a different order. It is radically different because waterfall has distinct phases at a "global" level. Planning(All planning upfront) Implementation(Implement all the plan), Testing(test it all) UAT. Agile has these but does them at a feature level. So the order is radically different. Planning(Plan feature or small groups of features) Implementation(implement feature), Testing(test the feature). You do this over and over again for each feature or little iterations. You may have more loosely defined global plan, but it is not ridged and is expected change as the world changes. Waterfall also encourages to complete parts of the website in distinct phases. Either horizontally or vertically. Complete all the Data access layer, or complete all of the "account functionality". Agile takes small vertical slices. You may want to implement just the login for the account management, but leave the user profile pages until after some other more important vertical slice in some other area like checkout.