Let's nuke the catch-all tags
Every question on this site should be related to software-engineering (or something tangentially related to software engineering), and/or software-development. These are just the ones on the front page of the "popular" tags, too.
If I get some free time this week or weekend, I would honestly like to go through all (currently 52) pages of tags and come up with a list of tags that add little or no value, and let the community decide. Perhaps as a part of the Summer Cleaning. I would like to see a major effort to clean up tags and write some good tag wiki pages, but I'm not going to ask other people to jump in on this until I get a feel for how much value this would add or what the community thinks.
In response to Matt Ellen's answer, the programming tag makes sense if it is referring to issues that arise during the construction of software. I would still want to go through the questions tagged with it and make sure that its used appropriately, but I can now see it being a valid tag.
The other two, software-engineering and software-development I still feel are two general. More specific tags, such as requirements, architecture, programming, testing, maintenance, process, quality, tools, and education, along with a number of others should probably be used instead to get at the root of the topic of the question.
And this brings up another issue: the design tag being used to refer to architectural design, component/module design, and UI design. This is kind of blowing up the scope a little bit (well, a ton, but we'll overlook that for a second), but I think it does underscore a need to take a good hard look at tags and how they are used to make it easier to search and sort.
One of the reasons why I don't have favorite tags here is because it's too hard to use them. Cleaning up would make this easier.