I'll be the first to say that this question is a bit... out there. But here are a couple questions I bear in mind :
Is abstraction continuous or discrete?
Is there a single unit of abstraction?
But I'm not sure those questions are truly answerable or even really makes sence. My naive answer would be something along the lines of abitrarily discrete but not necescarily having a single unit measure. Here's what I mean...
Take a Black Labrador; an abstraction that could be made is that a Black Lab is a type of animal.
A Black Lab is also a type of Dog.
One way to establish a degree of abstraction is by comparing the two the abstractions. We could say that
[Animal] is more abstract than
[Dog] in respect to a Black Lab. It just so happens
[Animal] can also be used as an abstraction of
[Dog] So, we might end up with something like
With the model above, one might be inclined to say that there's two hops of abstraction to get from
[Black Lab] to
[Animal]. But you can't exactly tell somebody they need one level abstraction and reasonalby expect they will come up with
[Dog] given they aren't explicity given the options above.
If I needed to tell someobody in a single email that they needed an abstract class with out knowing what that abstract class is, is there a way to communaticate a degree of abstraction such that they might end up on Dog instead of Animal? As a side note, what area of study might this type of analysis fall under?