1

In the context of my office environment (a tech giant), I often see folks using the word triage as a substitute for debugging an issue. Statements like

We are still triaging the issue...

is quotidian practice on the part of managers and

I am triaging this...

from engineers.

As per definition of the word, it means "assigning priority to a task". The very fact that the leads have assigned a task to engineers does imply that it's priority has been gauged and somebody has been set upon to debug it further.

Is this an Indianism or is there some other meaning of the term that is being used here?

  • Check out the full meaning and background info on triage -- it's the first step in/before solving a problem. Good Luck. – Kris Jul 18 '17 at 7:38
  • 1
    No, it's not an Indianism, it's English, of military origins, if it matters anything. – Kris Jul 18 '17 at 7:39
  • Technically triage in your context is just prioritizing bugs. But many people will use it to mean the entire process of bug fixing. Some people are even likely using it incorrectly after picking it up in the wrong context. It really exploded in use out of the Agile movement primarily and has become an important part of the software defect and testing processes. – Kace36 Jul 18 '17 at 7:39
  • @Kace36 See my comments above, too. If that was so, why "still"? – Kris Jul 18 '17 at 7:40
  • @Kris I don't follow. What do you mean when you say, "why still"? – Kace36 Jul 18 '17 at 7:42
3

From Collins:

Triage is the process of quickly examining sick or injured people, for example after an accident or a battle, so that those who are in the most serious condition can be treated first.

In the context of bug fixing this typically means examining the bug report in a bid to determine the bug's priority and, by extension, its position in a work queue.

So, once the bug has been examined and prioritised then the triage phase ends. I'd suggest that the parallels with triage in emergency medicine break down if people continue to refer to a bug as being in triage after its priority has been assigned.

The term "bug triage" is not an Indianism (Googling "bug triage" will return enough non Indian results to suggest that it is common idiom in the software realm) but perhaps you are asking whether its use after the bug has been prioritised is an Indianism. If so, I'd suggest that's simply a misunderstanding of the term and I'd be surprised if that misunderstanding is specific to India :)

|improve this answer|||||
  • See also: en.wikipedia.org/wiki/Software_bug#Bug_management – Kris Jul 18 '17 at 7:50
  • Guys, listen he is not asking about "triage" in the medical sense. This is a software question. I'm very well versed in it and know exactly what he is talking about. It has nothing to do with the original use of the word "triage". – Kace36 Jul 18 '17 at 7:51
  • 1
    The definition of triage was offered as background and to make clear where the boundaries of triage lie. Just like in emergency medicine (where triage ends when a decision is made on the urgency of the patient's condition), bug triage typically ends when a priority has been assigned to the bug. I think this is relevant to the OP's question about whether triage continues after "somebody has been set upon to debug it further". – glytching Jul 18 '17 at 7:56
  • 1
    And, no, that issue is not strictly limited to India, trust me Zoso ;) – Kace36 Jul 18 '17 at 8:03
  • 1
    Triage should according to its original meaning just be a quick prioritisation process to decide which reports of "bugs" should be looked at first. However, extending this a little to encompass deciding if a reported bug really is a bug (and not misuse, misunderstanding etc.) seems fairly normal, and may involve a non-trivial amount of work (trying to reproduce; adding debugging). Extending it to include fixing the bug (unless the fix "fell out" in the earlier investigation) would, I think be taking it too far. – TripeHound Jul 18 '17 at 10:48
0

I agree with the other answer's definition of triage. Copying it here in case the other answer changes:

Triage is the process of quickly examining sick or injured people, for example after an accident or a battle, so that those who are in the most serious condition can be treated first.


However, in a software development environment, I would argue that "triage" refers to troubleshooting/fixing problems on the production server, in a live environment. The live application is the "sick or injured person" from the definition of triage.

If you mean "debugging" as in "debugging on the production server", then it is similar, but you need to make that distinction clear, as it is not clear from only calling it "debugging".
Without any distinction made, I would expect the debugging to be done in a local (safe) testing environment; which excludes the inherent connotation of urgency (critical to patient survival) that triage is most often related to.

I could elaborate more on specific ways to debug, e.g. the reproduction of issues on the live environment in the testing environment. However, that is a level of distinction that cannot be accurately described by "triage" and I am therefore considering it irrelevant for the current question.


Please do note that these are analogies, and they are not only bound by semantical definition, but also whether or not they are understood in the context that they are used.
As software development is a very abstract field, it's hard to pinpoint accurate analogies. If you look at the definition of the analogy closely enough, you will always find some way in which it doesn't really apply to the referenced software development concept.

|improve this answer|||||
0

Triage is a military/medical term which, while it had been around for decades, gained currency during the Korean War.

The term refers to dividing the wounded into three categories:

  1. Those who need immediate help
  2. Those who can wait for help
  3. (Often conveniently omitted in such discussions) Those who are beyond help

However, as currently used in non-medical scenarios the term is often somewhat questionably used to refer to the simple enrollment and classification of problems (ie, entering them into the "bug list"), without division into "urgent" and "non-urgent" categories.

To use the term to refer to debugging, vs classification, is even more questionable.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.