I'll give you my take, though some will disagree and I expect we'll continue to evaluate these tagging conventions indefinitely.
I try to follow the following guidelines (and I'm probably less consistent than I'd like to be):
- Most questions need at least one "discipline" tag but exceedingly few benefit from as many as three; four shalt thou not count.
- If there's a choice of two "discipline" tags and one is seen as the "sub-discipline" of the other (e.g., strucutral-engineering and civil-engineering), always use the more specific tag.
- Questions belonging to a sub-discipline may or may not benefit from adding the major discipline tag as well.
- When there is a judgment call to be made, try to respect the judgment of the question's author, especially one who seems familiar with our existing tags and conventions.
Ideally, the author of the question can decide which discipline(s) their question belongs to. In reality, tags are most important to the users who answer questions. That's who needs to be able to read the context of the question from the tags so that they can browse, follow and filter tags with an expectation of the subject matter they'll encounter.
Worked Example
Possible Hazards of Software Controlled Systems (Ex. Airline GPS/Elevator)?
This question is tagged mechanical-engineering electrical-engineering aerospace-engineering aircraft-design software. As you read the question, think about which tags are most useful for categorizing it. Are there any that you would remove? I've written up my detailed thoughts below, or you can skip directly to the conclusion after the spoiler.
As it happens, this is one of the few questions on
the site that I would confidently identify as a software engineering
question. That means four out of the five tags on this question are
"discipline" tags (not illegal; definitely a warning sign).
The most important tags by far are [software] and [aircraft-design].
Title and first sentence make [software] the obvious choice for a
"discipline" tag because that's the perspective from which the
question is being asked; the best answer for the OP would come
from an expert in that field. The specific applications asked about
are airlines and GPS, so they need to be reflected in the tags as
well ([gps] would have to be created).
Why not the other three? First of all, forget elevators. The
author has already dealt with that example; there's no question
asked about elevators, so no need to call the elevator experts.
My first runner-up is [aerospace-engineering]. It's arguably a
subdiscipline of both mechanical and electrical engineering, and I
always prefer more specificity over less. The question does require
some level of familiarity with the systems of an aircraft, so a
subject matter expert in this area could be helpful. That said, it's
already got a tag for aircraft, and no other aspect of aerospace
engineering seems particularly critical here, so I think this one's a
judgment call.
My second runner-up is [electrical-engineering]. It's relevant to
the GPS aspect of the question, which doesn't have a tag yet, thus no
followers. However, while there are plenty of electrical components to
aircraft, the question's not about those components, any more than a
question about CAD is about motherboards. Another judgment call.
I have no compelling argument for including [mechanical-engineering].
The most specific application is aircraft, which is encompassed by
aerospace engineering, which is usually labeled a sub-discipline of
mechanical engineering. Let's not treat tags like matroyshka dolls.
In a vacuum, I'd choose software-engineering, aircraft (I've never really been a fan of "-design" in tags) and gps.
However, given the existing tags, I might simply replace mechanical-engineering with gps and respect the author's judgment by leaving in the other "discipline" tags, especially since I'm not a mechanical or electrical engineer myself. It's always a good idea to be less aggressive when editing content outside of your area of expertise.