News for hackers. Stuff that matters.
Re:Why some software developers hate Agile by ravenstine on Thursday October 03, 2019 @12:57PM (#21149118)
It seems like the measurements used by teams shouldn't be available to management because they will inevitably abuse that information.
Re:Why some software developers hate Agile by cjblomqvist on Thursday October 03, 2019 @01:15PM (#21149343)
I'll bite. Management always seem to get the crap. To summarize, if engineers knew how to manage things better than management, why don't they? From my experience, teams without management seem to complain about that and end up with bad results. There are more factors at play, and honestly it's very rare that the engineers sees that (or even acknowledge that they don't know all the relevant factors, with all the implications that gives).

Of course, just as with engineers, there are good and bad managers. But it seems pointless to always complain about management being the ones screwing it up all the time.

Re:Why some software developers hate Agile by bb88 on Thursday October 03, 2019 @02:05PM (#21149949)
A space alien with a raygun and a watch knows just enough English to tell you to build a time machine "or else!"

Any attempt to persuade him otherwise just results in him pointing his raygun to his watch. Either he's ignorant, can't or won't understand, or simply doesn't care.

Software management in 2019 is still very much like this. Management has had 40 years to solve this problem, and it looks like it won't be solved in the next 40 either

Re:Why some software developers hate Agile by hrktb on Thursday October 03, 2019 @01:24PM (#21149466)
Management gets the crap because they have the responsibility and push the processes.

It’s as if we were complaining that elected officials get the crap for mismanaging the country. Well, that’s the point of them doing their job. Our goal is not to all become managers (though some do, exactly for these reasons), it shouldn’t be a ”why don’t you do it ?” rhetoric.

Re:Why some software developers hate Agile by jamestimmins on Thursday October 03, 2019 @01:24PM (#21149458)
Yeah I don't mean to imply that it's managers per se. Management seems suuuuper hard and I wouldn't want the task of assessing engineering productivity.

I just mean that the "metrics" put out by Agile give the illusion of something useful to managers. It's totally understandable that folks in positions of authority would attempt to make use of them. But I think the illusion of objectivity is more damaging to teams than the acceptance of uncertainty.

Re:Why some software developers hate Agile by shantly on Thursday October 03, 2019 @01:34PM (#21149593)
I'd say that attempting to use the same tool to help a team communicate with one another and to communicate with management or stakeholders who aren't very close to the project (involved daily near the ground level) is essentially doomed. Management will either hate the answers they get or they'll ruin the tool's utility to the team, resulting in worse communication at every level and slower work. Or both.

It's where I think Jira and other do-everything tools that try to be useful to both ICs and management fall down hard, every time I've seen them used. Management wants to see their burndown charts and such. They want projections out months on minimal data. They want to see the performance of people, not teams. Points become BS because everyone knows they're being watched. Totals are missed the first few sprints (of course they are, you're still calibrating WTF a point means for this team and this project!) and management gets pissy, exerts more control, implies ICs are failing at their job, project goes downhill from there. But look, we're Doing Agile! Such professionals we are.

Re:Why some software developers hate Agile by ryandrake on Thursday October 03, 2019 @02:23PM (#21150205)
As a project manager, I hate taking a bug tracker and trying to beat it into being a project management/communication/measurement tool. The only reason I always end up doing so is that bug trackers are already in the engineers’ daily workflow so they are usually the source of truth about the project.

I’d love it if developers would be willing to collaborate using a dedicated project management tool and leave the bug tracker for bugs, but the chances of that happening voluntarily are nil. You gotta go where everyone else already is.

Re:Why some software developers hate Agile by shantly on Thursday October 03, 2019 @02:35PM (#21150387)
> I’d love it if developers would be willing to collaborate using a dedicated project management tool and leave the bug tracker for bugs, but the chances of that happening voluntarily are nil. You gotta go where everyone else already is.

What'd that look like, that's different from what they do now? Trying to imagine what developer input to that would look like. I think a lot of devs already feel like existing PM tools they use for sprint tracking and such are worse than if they pushed more planning into git or somewhere otherwise closer to the code, so getting buy-in might not be so hard if devs got to be a little less heavy in a bunch of not-actually-that-useful-to-them tools on a day to day basis.

Re:Why some software developers hate Agile by ryandrake on Thursday October 03, 2019 @04:23PM (#21151724)
Could be something as complex as MS Project or simple as a shared spreadsheet with rows for each project and columns for each milestone or for things like ETA, dependencies we’re blocked on, escalations needed, scope changes, etc. Not sure how that could gel well with a source control tool but I’m all ears!

I think 1/4 of the challenge is what tool to use and 3/4 is convincing and motivating people to be reliable and forthcoming with accurate information. A good project manager demonstrates he or she can add value, unblock things, escalate and communicate appropriately, and not just be the Project Police.

Re:Why some software developers hate Agile by ratww on Thursday October 03, 2019 @01:33PM (#21149581)
I think it has a lot to do with bargain power.

By using things like story points and other metrics intended to be internal to the team, developers have a lot of incentive to not lie on their estimates. On the other hand, management has incentive to push things to be finished quicker.

By letting management having access to those metrics, they're automatically at a disadvantage when negotiating timelines and priorities.

Re:Why some software developers hate Agile by apotheon on Thursday October 03, 2019 @03:42PM (#21151231)
Management has, culturally, become very metrics-oriented. This is the root of the problem under discussion here. See Goodhart's law for a brief statement of why this can't work.

Almost every time I bring this up somewhere, someone pops up to say that metrics are important, key to fair and impersonal management. Without it, everything would suck, and managers couldn't do anything. The problem with that thinking is two-fold:

1. It ignores the fact that, as soon as there's a metric that determines someone's rewards and punishments in a management system (whether it's governmental regulation, corporate middle-management, anarcho-communistic self-management, or anything else), the system of measurement will get gamed, and the most overtly "successful" will end up being the most cleverly sociopathic about it.

2. There is an alternative to strictly quantitative evaluation. The alternative is qualitative evaluation. This requires good judgement, intimate knowledge of the problem domain, good intentions, and the ability to consider context, among other things. Sadly, this is incompatible with bureaucracy, which means you need to either carve a bureaucracy-free zone out of the larger organization to manage a team well or stay out of medium-to-large corporations (and out of small businesses that ape the behaviors of large bureaucracies).

Managers who insist on doing everything quantitatively (and sometimes they're forced to do so by their managers) will not get good results. "Good" is qualitative, not quantitative. Equating "good" with metrics just gives you results that look "good" on paper, but really aren't good.

Probably the biggest benefit of a small organization is the ability to eschew managerial bureaucracy in practice.

Re:Why some software developers hate Agile by dragonwriter on Thursday October 03, 2019 @02:08PM (#21149998)
> if engineers knew how to manage things better than management, why don't they?

They do: engineering-led companies are often dynamic success stories, then when they get big enough traditional management works down from the top to lower levels and the firm stagnates.

Re:Why some software developers hate Agile by ptx on Thursday October 03, 2019 @01:42PM (#21149685)
Agile was proposed as a way for engineers (or "self-organizing teams") to manage things better. The complaint is that the engineers' better management process has now been hijacked by management and turned into something else.
Re:Why some software developers hate Agile by AnimalMuppet on Thursday October 03, 2019 @01:30PM (#21149528)
Somewhere, there's always an impedance mismatch. Agile can be managed, and managed well - I've seen it done - but above that manager, there's another manager. Somewhere up the chain, someone wants to see progress on a PERT chart or similar, and the person who is managing an agile project doesn't have a good way to answer.
Re:Why some software developers hate Agile by shantly on Thursday October 03, 2019 @01:39PM (#21149651)
It is vital to have someone close enough to the project that the team trusts them to see their honest opinions about progress and blockers, including non-bullshit pointing of tasks, who is the point person for communicating progress to management, and who is capable of producing reports that are technically bullshit in an is-this-quantifiable-this-way sense but actually do reflect reality usefully to managers. Someone who does that well is worth All The Money.

They're useless if you're giving management direct access to team planning & communication tools, of course.

Re:Why some software developers hate Agile by ryandrake on Thursday October 03, 2019 @02:28PM (#21150288)
In some places these are called Engineering Project Managers, in others they are Technical Program Managers. You may think they are worth All The Money but let me assure you they usually make far, far less than the developers :-)
Re:Why some software developers hate Agile by LanceH on Thursday October 03, 2019 @01:19PM (#21149383)
The failing after every step has been when they close the loop. That is, agile is used to score and measure velocity. This velocity is then used to impact future scoring. This nullifies Agile's use for measurement since management is now insisting that x number of points be completed per developer per sprint.

The places I've had it succeed greatly have all been new development. We consistently scored stories. Product owners could then had a budget equal to the team's velocity to purchase from the backlog into the next sprint. What it really looked like was they got to arrange the order that the backlog would be picked up and how much would get done in a sprint was an estimate, but with consistent implementation it became eerily accurate over time. It has been my observation that it takes about 6 sprints to calibrate -- where the team scores consistently and the variances from sprints cancel out.

Another point of emphasis is that velocity is a team score. Every failing effort I've been involved with used it to score individuals which inevitably ends up in scoring the stories higher so that an individual gets more points. It also results in cherry-picking easy points and ignoring tasks and bug fixes which may result in zero. It also (like bug fixes) results in everything being assigned points such that points become a proxy for time. If you're developing a new system and you have a bug fix, the team has already claimed the points for that bug fix. You should not make more points for the bug fix, your velocity should actually go down, giving a more accurate estimate in the future of how much new system is actually produced and not a measure of how much a programmer has worked.

So, measurements should absolutely be available to management. But they shouldn't be used to impact future scoring.

Re:Why some software developers hate Agile by apotheon on Thursday October 03, 2019 @03:55PM (#21151378)
That assumes really good (measured against the norm) management. If your management is "normal" (or worse), giving management access to that just destroys the whole value of the scoring system. (Always remember that fifty percent is worse than the centerline, to say nothing of the still-within-a-standard-deviation "better" that isn't enough better to matter.)
Re:Why some software developers hate Agile by LanceH on Friday October 04, 2019 @12:31AM (#21154782)
It really sounds like a "not true Scotsman" argument, but I've had Agile fail when the team failed to use Agile. As I wrote above, points inevitably became a proxy for time in one manner or another. Production was pinned to a certain number of points (say 15 per developer per sprint).

I can't throw it all on management either. People who should know better will accept 2 days worth of points for conducting training or attending a workshop.

Largely, though, I would say it's a simple matter of not understanding how Agile works at all. It has just become, "you score points for doing stuff" (in proportion to time, but it's not time, but it is).

Re:Why some software developers hate Agile by pjmorris on Thursday October 03, 2019 @01:05PM (#21149202)
Your observation is right on target, and it has been predicted and validated [0]. The people who originally developed agile understood this, but it's one of the kinds of things that doesn't really sink in in many cases.

[0] 'Measuring and Managing Performance in Organizations', Robert Austin, Dorset House, 1996.

Re:Why some software developers hate Agile by SkyBelow on Thursday October 03, 2019 @01:07PM (#21149225)
But who ensures it isn't? Management who are the ones inherently attracted to having the metric to use? The ones who are able to withstand that pressure and not touch the information are likely the ones would could see the information without using it as a stick.

I guess upper management could enforce the separation on a level lower management could not override, but I would assume such cases are rare.

Re:Why some software developers hate Agile by apotheon on Thursday October 03, 2019 @03:58PM (#21151425)
The solution is to stop blaming the methodology for the failures of management, and just accept that bureaucracy breeds mediocrity. Corporations grow into bureaucracy, inevitably. Choose accordingly when evaluating potential employers. Keep this in mind when running a business.
Re:Why some software developers hate Agile by hrktb on Thursday October 03, 2019 @01:18PM (#21149372)
I am not sure it would even save the situation. Most agile methodologies assume a lot of constants to allow measurements to have any sense at all (for instance scrum assumes teams members are stable, of that knowledge over their work perimeter is good, etc.)

We work in a field where inherently there are unknows, and measuring the unknown is not gonna be that useful, however we turn it.

Re:Why some software developers hate Agile by apotheon on Thursday October 03, 2019 @03:57PM (#21151403)
Scrum always looked to me like pseudo-waterfall with an Agile™ coat of paint.