We had an internal thread on this yesterday, maybe I was a little too glib but here is what I had to say about the topic [edited so it can be read standalone]
The original question, “Is performance a functional requirement” is highly unexciting for me. However the revised question, “What is the best way to capture performance requirements” is profoundly interesting. It is precisely the (anti-)correlations between attainable functionality and level of responsiveness that sometimes makes for the very best engineering work. How do you capture all this? Sometimes pervasively. I would argue that pervasively is in fact the only answer that works in non-trivial cases. And this is not limited to performance as the quality metric of interest – it applies to any quality that is not going to be trivially achieved.
The nomenclature to me is uninteresting except to the extent that it assists designers and implementers in capturing and understanding the various kinds of requirements – i.e. I know where to put them, I know where to find them, I know that I got them all, because I am, literally, on a first name basis with all the requirement types.
I don’t want to trivialize that aspect, but, beyond that, meh, whatever… functional schmuntional, I don’t care what you call it, just do it 🙂