We had a situation yesterday where two engineers picked up the same ticket within a minute of each other and assigned it to themselves. The second users changes clobbered the first without any type of warning, so they both worked on the ticket for the whole day, and as a result we had a full days loss of engineer productivity. Jira should either disallow stale updates (i.e. if the ticket state has changed since the user started editing it, do not accept the update), or provide some way for the user to manually merge the changes.
I don't mean they were working on the ticket update the entire day; the field was the "assignee" field, so they were both working on the same story for the day.
So it is overridden, except that it is tracked in the history, is that right?
Yes, that's right.
Some people have tried to build "locking" into their flow (Atlassian have no plans to do anything about this, as when they've analysed large systems to see how often it happens, it's surprisingly rare), but there are a couple of easier tricks.
One I've done is to disallow assignee changes directly, but put in a "I'll get this" transition into the workflow (from "to do" to "in development") which automatically assigns the issue to the user doing it, and then having a workflow property on the "in development" status that says "only assignee can edit or reassign the issue". This means the second person to get to the issue can't clobber anything.
Gotcha, thanks. We were thinking of adding a rule that doesn't allow reassignment, only allows unassignment and assignment..
Recommended Learning For You
Level up your skills with Atlassian learning
Learning Path
Get started with Jira Software
New to Jira Software? These short, self-paced courses will teach you what you need to know to get up and running quickly.
The Beginner's Guide to Agile in Jira
Learn what agile, kanban, and scrum are and how agile works in Jira Software.
Realizing the Power of Jira Reporting and Dashboards
Use out-of-the box reporting and dashboard capabilities to view and assess progress and bottlenecks within projects.