Live data from Hacker News

Warning Signs that Agile Is Declining

javacodegeeks.com

21–30 of 95 posts

Re: Warning Signs that Agile Is Declining

#21
I worked at a company which tried to push agile process upon us in a 'top-down' fashion. I believe this is a cargo cult behaviour caused by a lack of understanding of underling development issues.

Late-running projects that don't meet requirements are often a result of poor communication and a lack of concrete requirements. This is clear to most business people. What isn't so noticeable to many is that software development looks a lot like an iceberg. The business domain decisions are visible above the water while the architecture and implementation decisions are below the water line. The fundamental point I am asserting is that software projects grow in implementation complexity at a greater rate than the complexity of the business domain does. Software projects run into scalability issues far earlier than non-software projects.

At low-scale, increased centralisation of decision-making and communication increases quality and timeliness. However, at high-scale most companies make the mistake of continuing to increase centralisation on the business-domain and let this centralisation of project decisions be imposed upon the more complex implementation-domain. Doing so can backfire for the following reasons:

(1) There are too many decisions which need to be communicated and specced out by one person.

(2) Increasing the vertical height of an organisation creates 'chinese-whispers' type communication problems.

(3) Business-domain knowledge held by project managers is often not enough to make informed decisions that require specialist technical knowledge.

Now I have to be blunt. If your employees aren't high quality enough to make decisions or communicate on their own then there is very little you can do to improve your process. You can try to create mini-hierarchies of lead developers smart enough to make informed decisions and communicate in between groups of drones but this which will not solve implementation problems and yet again the centralisation will create similar issues as before. However, if you've hired smart employees you will have much better luck since you can: (1) scale decision-making and communication completely horizontally -- be careful to avoid coupling problems, (2) help people to form an iterative process that takes into consideration long-term goals, and (3) implement social interfaces (stand-up meetings being the classic example) to simplify and increase the quality of communication.

The reason this should be done from the 'bottom-up' is that people aren't so much as following a process but instead are iteratively learning their process. You need to step away to let this happen.

Re: Warning Signs that Agile Is Declining

#23
post #19

"Those things that looked “shiny” a few years ago, like TDD or continuous integration, have lost their shine, and aren’t attractive anymore. Don’t believe me? check out the big conferences – seen these topics lately?" I don't know about TDD, but IMO continuous integration isn't mentioned at conferences anymore because it has won. I haven't seen a software shop not doing continuous integration in years: ranging from h…

Never in twenty years have I had the opportunity to do CI with a team, mostly because nobody I've ever worked for invested in such comprehensive automated testing that manual regression tests could be abandoned. Where I'm at now, we literally schedule integrations and releases around what QA has had time to test, and they're guided by project priorities rather than whatever got finished earliest.

Re: Warning Signs that Agile Is Declining

#24
Assuming facts not in evidence error at line 1: Presumption that Agile ever ascended.

The basic problem with the Agile movement is that it took a few proven helpful practices -- almost all of which were well known and often used by experienced software developers before the buzzwords were attached, even if managers didn't realise -- and instead of promoting those, it wrote a "manifesto" so vague that it would make a political speechwriter proud, which didn't actually say anything at all about the practical steps that were useful.

Then concrete examples of "Agile" processes started to appear, and a few less proven or even discredited practices were added to the basically good ideas. Suddenly, despite valuing people over processes or some such vacuous claim, it's all about The Process again.

The predictable result was something non-technical managers thought sounded good but didn't really understand, and technical people who didn't drink the Kool-Aid looked at sceptically while asking where the evidence was that it was better than what they had been doing already.

And the only answer the Agile community has collectively agreed on in the ten years since then seems to be that people aren't doing Agile properly in most cases, but look at the successes where smart people have made it work! Of course, those smart people probably could have run a successful project starting from any other process, too, because if it didn't help they would have thrown it out in favour of things that did, just as they always had. And if most of the case studies of your supposedly superior process don't show significant benefits, you start to lose credibility after a while by claiming that they're all doing it wrong.

And now, we're doing the same thing all over again with the not-at-all-pretentiously-titled Software Craftsmanship movement, and the result will be the same: lots of people selling books and charging consultancy fees to peddle snake oil mixed with just enough actually proven ideas to be credible for a while until the results come in, by which time they will have moved on to the new hotness.

I am not normally a fan of Zed Shaw's style, but in this case, I sympathise with his point of view:

http://programming-motherfucker.com/

Re: Warning Signs that Agile Is Declining

#25
post #19

"Those things that looked “shiny” a few years ago, like TDD or continuous integration, have lost their shine, and aren’t attractive anymore. Don’t believe me? check out the big conferences – seen these topics lately?" I don't know about TDD, but IMO continuous integration isn't mentioned at conferences anymore because it has won. I haven't seen a software shop not doing continuous integration in years: ranging from h…

How many of them have a test-suit that actually passes? Where bugs are fixed when they are introduced?

Re: Warning Signs that Agile Is Declining

#26
post #14

Getting things done is not that hard. I don't need a burn down chart and some dude with a Dilbertesque PHB role to do my job effectively. I view anyone waxing on about so-called agile in the same light as those who speak of synergistic paradigm shifts in innovation etc.

Have you read the Agile manifesto? What about the Software Craftsmanship manifesto?

But does Agile really get practiced as the manifesto would require?

Re: Warning Signs that Agile Is Declining

#27
post #19

"Those things that looked “shiny” a few years ago, like TDD or continuous integration, have lost their shine, and aren’t attractive anymore. Don’t believe me? check out the big conferences – seen these topics lately?" I don't know about TDD, but IMO continuous integration isn't mentioned at conferences anymore because it has won. I haven't seen a software shop not doing continuous integration in years: ranging from h…

Never in twenty years have I had the opportunity to do CI with a team, mostly because nobody I've ever worked for invested in such comprehensive automated testing that manual regression tests could be abandoned. Where I'm at now, we literally schedule integrations and releases around what QA has had time to test, and they're guided by project priorities rather than whatever got finished earliest.

You have my condolences. Sincerely.

Re: Warning Signs that Agile Is Declining

#28
post #19

"Those things that looked “shiny” a few years ago, like TDD or continuous integration, have lost their shine, and aren’t attractive anymore. Don’t believe me? check out the big conferences – seen these topics lately?" I don't know about TDD, but IMO continuous integration isn't mentioned at conferences anymore because it has won. I haven't seen a software shop not doing continuous integration in years: ranging from h…

When I started professionally in 2004, I saw my first large-scale CI setup, and I was pretty impressed. You mean we can make computers run tests all day and night? Check to see if code compiles? Tell us when stuff breaks? It's brilliant.

It's the best part of being Lazy -- automate crap so you can concentrate on the fun stuff, like actually hacking code and making software.

I'm not sure how/when CI got lumped in with capital-A Agile. It's just a pragmatic idea.

Re: Warning Signs that Agile Is Declining

#30

Required reading: “We tried Baseball and it didn’t work.” http://xprogramming.com/articles/jatbaseball/

That's a really bad analogy. People can, and do, play cut-down versions of baseball all the time (in Britain we call this kind of game "rounders". It has very flexible rules, and yet I've never seen it "not work").
Post reply on HN