Specifying Performance

David Weiss, on measuring and specifying software performance:

While performance is one of the most important nonfunctional requirements, it’s often the most difficult to define. For new features it’s difficult to know where to set the performance goal because there’s not always some similar functionality to compare it against. Further, how would you define “slow” or “fast” in an objective and verifiable way? Confronted with this problem most software engineers simply skip this section of requirements with the justification, “If it’s too slow, I’ll see it and we’ll fix it then. I know slow when I see it.” If performance is specified, often some arbitrary time limit is set with little reasoning behind the performance goal.

Saturday, 8 November 2008