Ready.


Q/A: (Abstract) Specification

An abstract specification is the art and science of telling only so much as needed. You can find examples, and some further information on this page.

An abstraction is paying attention to less detail.This may be for better concentration to what you care, to save time, or for a mere lack of information in the discarded part. Lack of information may be temporary, or by definition.

A specification is telling what is wanted. A shopping list specifies what you would like to see in your refrigerator during the next week. Computer programs specify what the mahine would be doing, if they would be running.

Almost any specification involves some abstraction. For example, you may even have counted the number of steps it takes from home to workplace, or school. But do you have some specific record, or any desire to change, the timings of the steps? If you are a sports type running for medal, you may be already running with timers measuring each step. But, in most other cases, all you need to know is how much time it takes, overall, from home to destination, maybe with some margin of error for seeing a dog on the street and running in some other direction.

An overspecification is the inclusion of unnecessary requirements. It may occur because of over-generalizing or because of redundancy in the rules. As a result, the person who follows the ules may be left not acting, at times, when acting would be O.K.

Over-generalization is the declaring of too-general rules, beyond the scope actually called for.

Redundancy is declaring too many rules, some of which is/are altogether unneeded (redundant).

An underspecification is the not telling of some of the requirements. As a result, someone who is doing everything the rules are telling, still may be doing something wrong or dangerous.






Example 1: Posting Signs At A University Restaurant

The Case Definition:

Our first example is about an a la carte restaurant located at a university campus. I heard the case when my brother was graduating from high school, and taking the university entrance exams (in a third world country).

I asked him why he was not liking the particular university, especially given that they were giving scholarship to each of those in the engineering faculty. He told me that, the scholarship-receiving (which means all of the engineers, and a few from the other departments) were being treated as second-rate, and he would prefer the alternative. At the end, he went to medical school, but the example made it here.

The example he told me was that a sign, posted on the wall of a restaurant, was reading "Scholarship-receivers may not enter." (in the local language: "Burslular giremez"). It does not specifically mention "and the dogs." but you see, you take it for granted, and my brother was not willing to go there.

Thinking ...

Here, we take the issue, make guesses, observe our lack of having any further information, and provide a few sets of alternative wall-signs for the restaurant.

The problem may be arguments between the waiters and the person(s)-on-scholarship (POS). In such a case, a label like "Price does not change with arguments. Read the prices first." may solve it.

You may be more compromise-minded, and want to show the POSs that you are not being too much on the side of the waiters and that you are also posting a sign about the waiters. The sign may read "Please do not put your fingers in the soup, while carrying."

But, you should notice that, the POSs may be actually really arguing about the prices, whereas the waiters not, probably, putting their fingers in the soup. The label is redundant. And it only increases complexity of the specification. Both by increasing the amount of rules and bringing new issues under discussion unnecessarily, which is the specification sense of it, and also in the usual daily meaning of the word complexity, because now, the waiters may get the situation as pejorative, in their turn: "Who is doing that?!"

Redundancy increases the complexity of verification, for no good. Here, the word complexity doubles at its daily usage meaning, too.




Forum: . . (Fair Menu . . . . . Fault Report? . . . . . Remedy for your case . . . . . Noticed Plagiarism?)

Referring#: 0.0.1.0
Last-Revised (text) on Sept. 21, 2003 . . . that was http://www.geocities.com/ferzenr/abspec.htm
looks-and-links update: July 4, 2004
mirror to mid80.net, on June 15, 2009
Written by: Ahmed Ferzan/Ferzen R Midyat-Zila (or, Earth)
Copyright (c) [2002,] 2003, 2004, 2009 Ferzan Midyat. All rights reserved.
mirror