Classification in Systems Design: Exploiting the Survival Value of … · 2013-01-15 ·...
Transcript of Classification in Systems Design: Exploiting the Survival Value of … · 2013-01-15 ·...
Classification in Systems Design: Exploiting the Survival Value of Categories
Jeffrey Parsons Faculty of Business Administration
Memorial University of Newfoundland St. John’s, NL A1B 3X5, Canada
709-737-4741 709-737-2467
Yair Wand Sauder School of Business
The University of British Columbia Vancouver, BC V6T 1Z2, Canada
604-822-8395 604-822-0045
© November 2006 by Jeffrey Parsons and Yair Wand
This manuscript is currently under review. Please do not quote or circulate without permission of the authors.
Classification in Systems Design: Exploiting the Survival Value of Categories
Abstract Classification is a pervasive human activity. The ability to classify phenomena encountered in daily life in useful ways is fundamental to human survival and adaptation. Not surprisingly, then, classification phenomena are widespread in the Information Systems field. In traditional applications, classes play a fundamental role in the conceptual modeling of information systems requirements, as well as in the design of databases and object-oriented software. Furthermore, classification is the fundamental task in applications such as data mining, and the development of domain ontologies to support information sharing in Semantic Web applications. However, despite the pervasiveness of classification, little research exists looking at the fundamental principles underlying classification, and their implications for information systems. Using ideas from cognitive psychology and ontology, prior research has proposed necessary conditions for classes to be meaningful abstractions of information about things in a domain. In this paper, we extend those principles to define criteria that underlie effective (and efficient) classification. We present a formal approach for characterizing what may be considered “good” classes based on the inferences that a class enables. The formalization is then used to suggest practical guidelines for choosing (and defining) classes. The paper proposes modeling rules illustrated with examples, and concludes by showing how our research adheres to design science research guidelines and outlining some extensions and future directions.
Keywords: Conceptual modeling, classification principles, classes and types, information modeling
2
INTRODUCTION
Categorization (or classification) is a fundamental human capability. According to Lakoff (1987, p. 6):
Without the ability to categorize, we could not function at all, either in the physical world or in our social
and intellectual lives. An understanding of how we categorize is central to any understanding of how we
think and how we function.
Current thought on classification holds that categories do not exist independent of human observation, but
are constructed by humans to be useful abstractions of the similarities of objects. We (humans) categorize
phenomena in order to deduce other concurrent phenomena or predict or anticipate future events, and the effects
such events might have on our actions and future state of us and our environment. A primary function of
classification is to support inferences about (unobserved properties of) an object derived by classifying it (Smith and
Medin 1981). To the extent that such inferences are valid, they enable humans to take appropriate actions. To the
extent the inferences fail, they might inhibit our ability to choose the right actions.1
An information system embeds a representation of human conceptualizations of a domain (Hammer and
MacLeod 1981; Parsons and Wand 1997). Since concepts are manifested as classes or types in the design of IT
artifacts, classes and types appear in a wide variety of artifacts ranging from databases to software to formal domain
ontologies. Therefore, understanding the classification principles people use to organize information about a domain
is critical to the design and implementation of information technology artifacts that reflect human conceptualizations
of domains.
We contend that, to be able to identify and understand the categories people use to organize information
about a domain, we need to understand the reasons why people organize phenomena in the domain into specific
categories. The purpose of this paper is to explore principles underlying category choice and suggest how these
principles can guide practices involving the application of classification in systems development. We introduce
principles underlying classification, formalize these principles, examine some of their theoretical implications, and
propose how they can be practically applied to information systems analysis and design.
1 From a broader evolutionary perspective, useful abstractions are effective in delivering important survival value. To the extent inferences based on classifications are valid, they can enable humans to survive and adapt to their environment. To the extent the inferences fail, they might inhibit adaptation and survival.
CLASSIFICATION IN THE DESIGN OF INFORMATION SYSTEMS ARTIFACTS
Issues related to the choice and definitions of classes arise in designing a wide range of information
systems artifacts. In fact, the choice of classes can be seen as a critical decision in many areas of information
systems development. In this section, we briefly examine how classification issues manifest in four representative
areas: data management; object-oriented systems design; data mining; and ontological engineering.2 We first explore
why classification is used in each area and then examine research on how to choose classes in the context of
information systems.
Data Management
In data modeling, classes constitute the primary mechanism for imposing a structure on the data
requirements for an information system. Other modeling constructs, including attributes, relationships, (class)
hierarchies, and part-whole structures, are all defined with respect to classes. The pervasiveness of classification in
data management is manifested in logical data models. Classification issues have emerged in earlier data models
such as hierarchical or network structures (Tsichritzis and Lochovsky 1976), as well as in the set-based fixed
structures of the relational model (Codd 1970). More sophisticated issues in classification dominate research on
conceptual data models, starting with the Entity-Relationship Model (Chen 1976) and extending into a range of so-
called semantic data models (e.g., Schmid and Swenson 1975; Kent 1979; Smith and Smith 1977; Hammer and
MacLeod 1981; Teorey et al. 1986; Hull and King 1987).
Semantic modeling approaches clearly recognize the importance of classes in describing the structure of
knowledge about things in a domain. All approaches provide constructs for representing classes, typically as a set of
attributes/properties, and relationships/associations to other classes. However, these approaches provide little, if
any, guidance on choosing a set of classes to model a given domain. Instead, the operational assumption in semantic
data modeling is that users provide analysts with information to determine the classes, and the role of the designer is
to use the modeling language to represent these classes. The main guidance provided (in some approaches) is in
terms of restrictions on the definition of subclasses, such as the requirement that a subclass must possess attributes in
addition to its superclasses (e.g., Smith and Smith 1977).
2 Classification phenomena arise in a number of other areas, such as interface design which we do not examine here.
2
Object-Oriented Systems Design
Object-oriented programming languages are based on the principle of programming with objects that
combine (encapsulate) structure (data) and behavior (methods). With few exceptions (e.g., Lieberman 1986),
objects are created as instances of classes. Hence, the identification of classes is a critically important activity in
object-oriented analysis and design (Monarchi and Puhr 1992). In particular, the Unified Modeling Language
(UML) deals extensively with the modeling of classes via class diagrams, which are the most widely used diagrams
in the language (Dobing and Parsons 2006). Class diagrams provide the basic structural architecture in object-
oriented design.
However, despite this widespread attention to classification in object-oriented analysis and design, the
literature on object-oriented modeling provides little guidance on choosing a set of classes to model a domain. The
guidance that does exist is generally of the form “identify the nouns and noun phrases in textual descriptions of a
domain, and consider them as candidate conceptual classes or attributes” (Larman 2002, p. 135). Some guidance is
available to suggest when classes need to be defined in class hierarchies (or determine when subclasses are needed).
This generally tends to be of the form: “when (1) the subclass has additional attributes of interest; (2) the subclass
has additional associations of interest; (3) the subclass is operated on, handled, reacted to, or manipulated differently
than the superclass or other subclasses, in ways that are of interest” (Larman 2002, p. 401).
Data Mining
The key objective of data mining approaches is to identify useful patterns in data. This is achieved by
classifying phenomena according to common attributes. Approaches to identifying classes in data mining
applications focus on statistical measures of similarity.
The usefulness of classes identified in data mining is determined by a user. As a result, there are no well-
defined general criteria for determining when a class should be formed.
Ontological Engineering
With the emerging concept of the Semantic Web (Berners-Lee et al. 2001), and the need to standardize
terminology and concepts for information sharing across organizations and applications, there has been a growing
interest in developing formal ontologies for a wide variety of domains, ranging from business to medicine to science
(Fensel 2003).
3
The concepts comprising a domain ontology reflect classes of phenomena, including things. Moreover, an
ontology can be viewed as a specification of “classes of objects and relations that exist in some domain”
(Chandrasekaran et al. 1999). In this context, a strong case can be made that effective ontological engineering
depends on defining a “good” set of classes to describe the domain. However, the literature on ontology-building
tends to focus on techniques and tools. For example, Gruber (1993) describes a mechanism for specifying
ontologies. Such mechanisms are usually ‘silent’ as to how to choose the classes that can be defined by them. There
is little research that wrestles with the question of how to identify a good set of classes. A notable exception is the
Ontoclean project (Guarino and Welty 2002). Ontoclean defines notions of essence, rigidity, identity, and unity as
principles for classification in a taxonomy. However, in our view the proposed principles are not defined with
respect to a sound theoretical foundation. Moreover, they are generic, and do not provide specific guidance for
modeling a given domain.
In sum, classification is pervasive in many areas of the information systems field that deal with the design
and construction of artifacts that represent a domain. An appropriate choice of classes is critical to the success of the
constructed artifacts. Yet, little attention has been paid to principles underlying the choice of a good set of classes.
In the next section, we examine cognitive foundations for classification, and explore their implications for
developing principles to guide the choice of classes.
COGNITIVE FOUNDATIONS OF CLASSIFICATION
Cognitive Basis of Classification
Classifying a set of things establishes them as being the same in some way. Traditionally, a class is viewed
as a set of instances3 possessing a common set of properties4. The set of properties is considered the definition of the
class. The traditional view on the cognitive role of classification holds that a class is defined by a set of necessary
and sufficient conditions for the membership of instances (Bruner et al. 1956). However, that view does not fit well
with empirical evidence showing that people are, in general, unable to articulate defining conditions for classes or
3 We use the term “instances” here in the most general meaning. These could be material objects, actions, properties, or any other observed or conceived type of phenomenon. 4 As well, we use the word “property” here in the most general way, including static aspects (e.g. attributes), dynamic aspects (specifying possible changes or actions that cause changes) and rules (constraints on attributes and actions).
4
concepts (Medin and Smith 1984). Subsequent cognitive research on classification has provided more flexible ways
of describing similarities among members of a class. For example, the prototype view holds that there may be
degrees of similarity among instances of a class, determined by their distance from a prototypical (perhaps non-
existent) member (Smith 1988). The exemplar view holds that similarity among members of a class is implied via
“family resemblances” among individuals, in which members of a class can be similar to other members in different
ways (Rosch and Mervis 1975; Medin and Smith 1984).
Notwithstanding differences in the conceptualization of what a class means, there is widespread recognition
that classification serves two fundamental purposes: (1) it provides cognitive economy, and (2) it supports
inferences. Cognitive economy refers to an implied cognitive storage and retrieval efficiency obtained by classifying
an individual thing (Rosch 1978). Inference refers to the ability to infer properties of a thing by virtue of
categorizing it as a member of a class, without having to directly observe these properties (Rehder and Burnett 2005;
Rosch 1978; Yamauchi and Markman 2000).
The central role of classification in supporting inference provides the basis for its value. For classification
to be useful, it is vital that we be able to classify things based on partial observation. That is, we observe certain
critical properties that allow us to classify a thing. By virtue of the classification, we make inferences about
unobserved properties (Medin et al. 2003; Ross and Murphy 1997).5
In this context, the quality of the inferences made possible by a class ultimately determines the
effectiveness of the class. Clearly, if the inferences do not always hold, their usefulness is reduced. Hence, it
appears the usefulness of a class is an empirical question. However, we claim that we can glean additional insight on
class quality by considering some general principles about the way in which inference can be supported via
classification. A set of such principles is presented in the following.
Good Classes
The notions of cognitive economy and inference have been used to define necessary conditions for a set of
classes to be considered good (Parsons 1996; Parsons and Wand 1997). These conditions have two parts. The first
addresses the notion that, to be considered a potential class, a set of properties must be possessed by a nonempty set
5 Again, while we limit ourselves here to classification in the context of IT artifacts, we note it has a broader, evolutionary value. The classification-based inferences may affect our behavior in a variety of ways that enhance our probability of surviving. If we infer that a thing is edible, we may take action to obtain and eat the thing. Conversely, if the thing is dangerous, we may take action to avoid it.
5
of instances. That is, classes abstract the maximal similarity of existing6 instances (with respect to a certain
purpose7). This provides a criterion for determining whether a set of properties might be a useful abstraction. The
second set of conditions deal with a so-called class structure – a collection of potential classes that constitute an
abstraction over a given domain. To be useful in supporting inference, a collection of classes should cover the
domain in the sense that every property of interest belongs to at least one class. In other words, it should be possible
to infer something about this property through at least one class. In addition, to support efficiency, the set of classes
should not have redundancy. In other words, no class should be defined to contain only the union of the properties of
other classes in the structure. Such classes would not provide any additional inferential capability with respect to
instances, but might require additional resources in maintenance and retrieval8 and hence will violate the principle of
cognitive economy.
Together, these conditions have been claimed to constitute necessary conditions for a collection of classes
to be considered good from a cognitive perspective (Parsons and Wand 1997). However, it can be shown that, under
these conditions, multiple class structures can be constructed over a given domain of things and properties. The
conditions offer no basis for evaluating whether a given structure is better than others.
In the remainder of this paper, we expand on the ideas of inference and introduce and formalize additional
principles that provide conditions for a class structure to be considered a good abstraction of a domain. We then
examine some implications of these conditions for the development of information systems artifacts that embody
classification principles.
WHAT IS A USEFUL CLASS
In this section we suggest formal principles to define what would be a “good” class. We base our analysis
on three fundamental premises:
(1) A class represents instances that are “similar” in some way.
(2) People form classes in order to obtain some cognitive benefits. In particular, identifying an instance as
belonging to a specific class enables one to infer some additional information about the instance.
6 The word “existing” does not mean we have actually observed the instances, but rather, that there is somebody who believes such instances exist or might exist. 7 The point being that perhaps the instances of a class share additional properties that might not be of direct interest in the context for which the class is constructed. 8 Either cognitively, or in information processing artifacts.
6
(3) The information about an instance at a point in time is given in terms of the properties it possesses at that
time.
Since the information about instances is given in terms of their properties, it follows that inferences will be provided
as statements about properties. Moreover, if the purpose of a class is to provide inferences about its instances, then
there should be similarity of inferences for instances of the same class. Below, we formalize this notion, using the
idea of a multiple precedence as a construct that captures the ability to infer from a set of properties an instance is
known to possess to additional properties.
We begin by formalizing the notion of a domain of interest:
Definition 1: A domain of interest is a set of conceivable instances, X, and a set of properties of interest, P, such
that each property in P is possessed by at least one instance in X.
We make two notes. First, we have used the term “conceivable instances” to indicate that, for the purpose
of modeling, we need not be actually aware of some instances. Second, all formalization in this paper is with respect
to the population of conceivable instances. For example, if we say that possessing a property p1 implies possessing a
property p2, this would mean that every instance in the conceivable population X (of the domain) that possesses p1
also possesses p2.9
Property Precedence
Following Bunge (1977), we assume the world is made of things which possess properties. A property can
be intrinsic to a thing, or mutual to several things. Hence, we refer to instances that are things.10
We denote the domain of interest by {X,P}, where X is a set of things, and P a set of properties. We denote
the properties of a thing, x∈X, by P(x). The fundamental notion we use to formalize class-related inference is that of
property precedence (Bunge 1977). Precedence means that possessing a property implies possessing another
property. For example, the ability to walk on land implies the ability to move on land. Formally:
9 The set of instances possessing a property, p, is termed the scope of p (Bunge 1977). Thus, this statement can be formulated as: scope of p1 (in X) is a subset (not necessarily proper) of the scope of p2 (in X).
10 It is conceivable that instances will refer to other types of phenomena, e.g. actions. However, as classification in information systems usually refers to entities which represent things in the domain of interest, we limit our analysis to “things”.
7
Definition 2 (Precedence): Let p and q be properties. Property p precedes property q (notation: q→p) if and only if
every thing possessing the property q also possesses the property p.
In formal notation: q→p ⇔ ∀x∈X, q∈P(x)⇒ p∈P(x). We term q the preceded property and p the preceding
property.
Four notes are in order: First, a subtle, but important, aspect is that the definition implies the condition
holds with respect to all instances in X. Second, q and p can be completely different properties, albeit related by one
implying the existence of the other. For example, if a person pays income tax in a certain country, this might imply
the person is a resident in that country. Third, precedence relationships might exist between intrinsic or mutual
properties, and intrinsic or mutual properties. For example, a person working for a certain organization (mutual
property) will have pension privileges (intrinsic property). Finally, often the identification of a precedence
relationship over a given population of things reflects an empirical observation. For example, all sea dwellers with
fixed body temperature are mammals. However, sometimes precedence relationships can reflect “social” laws. For
example, all residents of a country are subject to income tax in that country.
Definition 2 relates two properties. However, it is possible to infer the existence of one or more properties
from a combination of properties. For example, being a senior student and having a high average grade may imply
both tuition fee exemption and eligibility for scholarship (in this example we consider eligibility a property of a
student). We formalize this notion as follows:
Definition 3: Let Q and R be disjoint sets of properties. A multiple property precedence relationship (or briefly,
multiple precedence) exists between Q and R if and only if every instance possessing all properties in Q must
possess all properties in R.
In formal notation: MP: Q→R ⇔ ∀x∈X, Q⊆P(x)⇒ R⊆P(x). We term the set Q the preceded set and the
set R the preceding or inferred set. It is important to note that the multiple precedence relationship (Q→R ) is not a
subset relationship. On the contrary, Q and R must be disjoint.
Consider now two multiple precedences. It is possible that the same information is used in both, in that the
preceded property sets overlap. We define:
Definition 4: Two multiple precedences will be termed independent if and only if the preceded sets are disjoint.
In formal notation: MPs Q’→R’ and Q’’→R’’ will be termed independent if and only if Q’∩Q’’=∅ .
8
The definition of multiple precedence (Definition 3) implies that all properties of R must exist if Q exists. However,
not all properties in Q need to exist for R to exist. For example, assume a senior student who has high marks is
eligible for tuition fee exemption and scholarship. However, it might be that all senior students are eligible for the
same. Hence, we define:
Definition 5 (Non redundant multiple precedence): Q→R will be called non-redundant if no property subset
Q’⊂Q exists such that Q’→R.
It is possible that a non-redundant MP includes another (non-redundant) MP. For example, assume a
foreign graduate student who has high marks is entitled to reduced tuition, a scholarship and campus residence:
Q={‘foreign’, ’graduate’, ‘high marks’} → R={‘residence’, ‘reduced tuition’, ‘scholarship’}.
Assume also that every foreign graduate student is entitled to campus residence:
Q’={‘foreign’, ’graduate’} → R’={‘residence’}.
Q’→ R’ can be viewed as a component of Q→R.
We define this possibility formally by:
Definition 6: Let MP Q→R, Q’⊂Q and R’⊂R such that MP’: Q’→R’. MP’ will be termed a component of MP.
Some special cases can arise. First, it is possible two components of Q→R exist, Q’→R’ and Q’’→R’’,
such that Q’∩Q’’≠ ∅ and/or R’∩R’’≠ ∅. In the example above, this will be the case if we add
Q”={’graduate’, ‘high marks’} → R”={‘scholarship’}. Second, components might exist, but the full MP cannot be
derived from them. This is the case in our example where, to be eligible for reduced tuition, all three conditions must
be met (a foreign graduate student with high marks). Finally, it might be possible to derive the full MP from its
components. For example, this will be the case if we replace Q”={’graduate’, ‘high marks’} → R”={‘scholarship’}
with Q’={’graduate’, ‘high marks’} → R”={‘scholarship’, ‘reduced tuition’}. In the latter case, since all information
in the preceding set can be inferred from subsets of the preceded set will say that the MP is decomposable:
Definition 7: Let MP denote a multiple precedence. A set of components of MP will be termed a covering
decomposition if and only if every property in the preceding set can be inferred from at least one component.
Formally, let MP: Q→R and let MPk: Qk→Rk (k=1…n) be the set of components. {MPk | k=1…n } will be a
covering decomposition if and only if ∪{Rk, k=1…n}=R
9
The significance of a covering decomposition is in being able to infer all properties in the multiple
precedence by considering simpler inferences. The following lemma indicates that if no covering decomposition
exists, then each of the preceding properties can only be inferred if all preceded properties are observed.
Lemma 1: If no covering decomposition exists, then, for every p∈R no Q’⊂Q exists such that Q’→{p}.
The lemma sets a condition when a necessary set of properties exists to infer each of the preceding properties. For
example, in the student case above, if this condition applied, only a foreign graduate student with high marks would
be eligible for a scholarship (or for any of the two other privileges).
Proper Class
We now proceed to use the inference principle to define the notion of a “proper” class. We first define a
potential class:
Definition 8: A potential class is defined by a set of properties C such that instances exist that possess all properties
in C.
Note that this definition recognizes a “duality” between the role of properties and of instances in defining a
class. First, no class can exist unless instances exist (at least in principle) that belong to the class. Second, for a set of
instances to be considered a class, they must possess at least one common property. Recognizing this duality, in the
following, when there is no room for confusion, we will use the term “class C” to indicate the class defined by the
set of properties, C.
Clearly, not every potential class will be used when modeling a given domain. Different considerations
might take place in determining the choice of classes, such as the total number of classes needed to provide
complete “coverage” of the domain and the objective of minimizing redundancy (Parsons and Wand 1997).
However, we suggest that one aspect of classification must guide the choice of classes to use from the potential
classes:
A class must have some “value” in providing information regarding its members beyond what
is required to establish membership.
We will view this as the main guiding principle for determining whether a class has value. Several
observations can be made with respect to this principle. First, as indicated above, information is provided in terms of
properties. Second, to have the meaning of a class, the same information should be derivable for all members of the
class. Hence, the inferred properties must be part of the class definition. Third, to make the class useful, the
10
properties needed to determine class membership should be a subset of the full set of class properties, otherwise, the
inferences do not have added value.
We formalize the guiding principle in the following premise:
Premise 1 (usefulness): A potential class will be considered useful only if a proper subset of the class properties is
sufficient to determine class membership.
Premise 1 provides a necessary condition for the usefulness of a class, but not the definition of a class yet.
We now formalize this idea by introducing the concept of proper class:
Definition 9: A potential class C will be termed a proper class if and only if at least one (multiple) precedence
Q→R exists such that Q,R⊂C.
Definition 9 formalizes the requirement that a proper class must provide at least one inference. Based on
this definition we can define a proper class by an ordered pair <C; MP> where C is a set of properties, and MP a set
of multiple precedences (again, with a condition that instances exist, in principle). We reiterate that, according to the
definition of a multiple precedence, Q and R must be disjoint. Thus, a precedence is not a subset relation.
Note that Bunge (1977) defines the notion of a natural kind as a set of things possessing the same set of
properties and subject to the same laws. Since multiple precedences are effectively laws, if the instances of a proper
class represent substantial things, the class represents a natural kind.
The following lemma, which is a corollary of Definition 9, assures the definition fulfills Premise 1.
Lemma 2: For every proper class, C, a proper subset of the set of properties of the class, B⊂C, exists such that if an
instance possesses B, it possesses C (namely, every x possessing B is an instance of C).11
To distinguish properties of instances from the properties used in the class definition, a property p∈C will
be termed a class-level property. Often, individual members of a class possess a value (or a manifestation – see
(Parsons and Wand 2003)) of a class-level property. To demonstrate, consider the following examples. First, a class-
level property can be weight, where individuals possess specific values of weight. Second, a class level property can
be ‘move’ with individual manifestations being ’run’, ‘walk’ and ‘crawl.’ Third, a class level property can be “being
11 Formally: Let C be a proper class. At least one partition C=B∪D exists such that B∩D=∅, B,D≠ ∅ and ∀p∈ D a MP: Q→R exists such that Q⊆B, R⊆D and p∈R.
11
a student” where the individual members possess properties such as ‘take a course’, ‘enroll in an academic
program’, or ‘perform thesis research.’
The above analysis implies that, for a proper class, a proper subset of the class-level properties is sufficient
to identify an instance as a class member. Accordingly, we define:
Definition 10: A subset of properties sufficient to determine class membership will be termed a class determining
set.
Lemma 2 indicates that every proper class possesses a class-determining set of properties. If any instance
possesses these properties, then it possesses all properties of the class. We have thus shown that a proper class is
useful in terms of Premise 1.
A corollary of Lemma 2 is:
Lemma 3: Every proper class possesses a class-determining set.
Given that all class-level properties of an instance of a proper class can be derived from a set of class-
determining properties, we shall also term such a set a base for a class (notation: B(C)). Note that it is possible more
than one base exists for a given class.
To demonstrate, consider the graduate student example above. Assume the class properties are
{‘graduate student’, ‘foreign student’’, ‘high marks’, ‘scholarship’, ‘reduced tuition’, ‘residences’}.
Furthermore, assume only graduate students with high marks can have reduced tuition fees. Then, two bases exist:
{‘graduate student’, ’foreign student’, ‘high marks’}
{‘foreign student’, ‘reduced tuition’}.
The second set is a base, as according to the rules of the case one can infer from reduced tuition that the student
must be a graduate student with high academic achievements.
To distinguish between base and inferred properties, we define:
Definition 11: Let C denote a class, and B(C) be a base for C. Properties that can be inferred by (multiple)
precedences from B(C) will be termed derived properties with respect to (the determining set) B(C).
Note that, by definition, the derived set with respect to B(C) is C-B(C). Since different bases might exist,
different derived sets might exist as well.
In the graduate student example, the two derived sets are:
For {‘graduate student’, ‘foreign student’, ‘high marks’}: {‘scholarship’, ‘reduced tuition’, ‘residences privilege’}
12
For: {‘foreign student’, ‘reduced tuition’}: {‘graduate student’, ‘high marks’, ‘scholarship’, ‘residences privileges’}
In a practical case, the existence of the second base implies that one could use, for example, the University’s records
about tuition paid to infer information that might not be readily available otherwise.
We now turn again to the notion of proper class. We defined a potential class as a set of instances
possessing a given set of properties. Such a class is specified by the set of all properties each instance is required to
possess. For a proper class it is sufficient to indicate a base (set of properties) and a set of multiple precedences.
Note that a major difference exists when applying these two notions of a class. For a class to actually exist, it is
sufficient to show that (at least) one instance exists possessing all class-level properties. In contrast, even if instances
exist that possess the base set of properties, there is nothing to assure that each of these instances possesses all other
class properties. In other words, while a proper class has, in principle, an inference value, it comes with a “liability”
– the need to confirm that all instances (in the domain) possessing the base properties satisfy the precedence
conditions.
Example: Assume a class is specified in terms of <’enrolled in a university’, ‘graduate student’, ‘foreign student’,
‘high academic achievement’, ‘scholarship’, ‘eligible for campus residences’>. Assume now we consider the
following base for this class: B=<‘enrolled in a university’, ‘graduate student’, ‘foreign student’, ‘high academic
achievement’> with the inferences:
MP1:{‘graduate student’, ‘foreign student’} →{‘eligible for campus residences’}
MP2:{‘graduate student’, ‘high academic achievement’}→{‘scholarship’}
B will be a base for the class only if every foreign graduate student with high accomplishment will indeed receive
scholarship and residence privileges. Note, it is possible the second precedence will not apply universally, but will
be valid for all foreign graduate students. Then if we replace the second precedence with:
MP3: {‘foreign student’, ‘graduate student’, ‘high academic achievement’}→{‘scholarship’}
B with MP1 and MP3 will be a proper class definition.
We now summarize the above discussion. Consider a class defined by a set of properties C. Every instance
of the class must possess all properties in C. Hence, C provides a set of necessary and sufficient properties for an
instance to be a member of the class. Assume now the class is a proper class. Then a base, B⊂C exists and some
multiple precedences from B to C-B exist. The set B is necessary and sufficient for class membership. C now
partitions into the base and the derived properties.
13
While we have required that all instances of a class possess a given set of properties, we have not required
that the class definition will include all common properties of its instances. Thus, it is possible that the class
definition does not “capture” all properties of all its instances. For example, all foreign graduate students might also
be entitled to out-of-country medical insurance, but the medical insurance is not part of the class definition. Hence,
we define:
Definition 12: An extension of the class is a set of properties common to all class members but not part of the class
definition.
Formally: Let C be a class. Assume a multiple precedence exists such that C→E and E∩C=∅. Then, all instances of
C also possess E. We shall term the class defined by C∪E an extension of C.12
A consequence of the above definitions is:
Lemma 4: If C is a proper class, every extension of C is also a proper class. If B is a base of C, then B is a base of
every extension.
In addition, we define:
Definition 13: The full extension of the class is the set of all properties common to all class members.
Formally: Let C be a class. Let {Ek | k=1,…,n} denote all extensions of C. We shall term the class defined by
E(C)=C∪(∪{ Ek | k=1,…,n}) the full extension of C.
The reason we distinguish an extension from the full extension is that different extensions might “capture” different
domain semantics (often described in terms of “business laws”). For example, the entitlement of foreign students for
medical insurance has a different meaning than their need to have a student visa.
While the notion of extension applied to all class members, it is possible some class members possess
properties that others do not possess. Furthermore, these properties might be sufficient to imply class membership.
For example, if only graduate students (but not all of them) are eligible to reduced tuition, then having to pay
reduced tuition is sufficient to identify a student as a graduate student. In such cases, it might be possible to check
for class membership without checking for all the actual properties. We formalize this:
12 Although we have specified at the beginning of our discussion that the analysis is done with respect to a given domain (whose definition includes a set of conceivable instances) it is useful to mention this assumption again here. In other words, an extension is defined with respect to a given domain.
14
Definition 14: A set of properties not completely included in the full extension of the class that is sufficient to
determine class membership is termed a qualifying set.
Formally, a non-redundant multiple precedence MP exists: MP: Q→C, such that Q⊄E(C).
The definition implies that every instance possessing Q will be a member of C, but not every member of C
will possess all properties in Q (this is assured by the condition Q⊄E(C)). Q provides a set of (jointly) sufficient, but
not all necessary, properties of C. Q can include some properties of C, but it is possible that none of the properties in
Q will be part of the class definition.
For example, assume only graduate students can work on a research thesis, but only some graduate students
have a thesis title. Having a thesis title is a qualifying property for being a graduate student. This example
demonstrates that the set Q defines a subclass of the original class. Moreover, this is a proper subclass, as it contains
(at least one) multiple precedence – from the qualifying set to the properties not in the qualifying set.
The following lemma is an outcome of Definition 14 (qualifying set). It indicates that to test for a
qualifying set, one need only to test whether a base can be inferred from the set.
Lemma 5: Let B be a base for a proper class, C. Q is a qualifying set if and only if a multiple precedence exists MP:
Q→B for each base of C and Q⊄E(C).
This lemma assures that for a subclass of C possessing Q, B can be replaced by Q as a base.
The importance of a qualifying set is in providing a way to identify class membership without examining
whether an instance possesses all properties of a class base. Sometime this might require less (cognitive) effort.
However, the “cost” of this efficiency is that it will not work in all cases (and thus an instance that “failed” Q will
still need to be examined for a base). The existence of a qualifying set implies a proper subclass of C’ exists with Q
as a base. The precedence Q→C’ can be decomposed into two multiple precedences related to it: Q→B(C) and
B(C) → C- B(C).
Class Structures
Class structures are collections of classes used to model a domain. Parsons and Wand (1997) proposed a set
of conditions for a class structure to be “good.” These conditions are of two types. First, conditions necessary to
assure no domain information is lost.13 Second, conditions that are intended to prevent redundancy of classes –
13 In this context, domain information means the properties of each instance, and the instances that possess each property.
15
specifically, that a class be included in a class structure only if it provides information that cannot be derived from
other classes. This type of condition relates to cognitive efficiency. That work refers to potential classes, not
necessarily to proper classes. We now show how the analysis of Parsons and Wand (1997) can be extended to proper
classes. In the following we assume every class structure under consideration is complete in that it fulfils the
following condition: that all properties of every instance can be provided by at least one class, and every property of
interest is included in at least one class definition (Parsons and Wand 1997).
Since classes are often added to other classes in a class structure by sub-classification we first note:
Lemma 6: Every subclass of a proper class is a proper class.
Next, we add to our analysis two requirements that reflect efficiency considerations:
Requirement 1 (Non redundancy): Given a collection of proper classes, a new class should be added only if it
provides at least one inference not provided by any of the classes already in the collection.
Requirement 2 (Minimality): If information provided by a proper class can be inferred from other proper and more
general classes, then the class should not be included.
Definition 15: A class structure satisfying the two requirements will be termed an efficient class structure.
These two requirements combined indicate how a class structure can change to become efficient and stay
efficient over time. First, it should be made minimal. Then if a new class is considered for addition to the structure,
this should be done as follows:
(1) If the candidate class is a subclass of existing classes, then it should provide new information.
(2) If the candidate class is a superclass of an existing class, it should be added only if, together with other
superclasses, it can provide the same information as an existing subclass.
If the class is neither a subclass nor superclass of existing classes, it should be added only if providing new
inferences, or enables by its addition the elimination of other classes.14
The following analysis will be done assuming we deal only with efficient class structures. In other words, if
an efficient class structure is given, any change should result in an efficient class structure.
14 This case might require additional considerations (such as ease of inference) which we do not discuss in our
analysis.
16
An important characteristic of an efficient class structure is that no class can be decomposed without loss of
any class-related inference:15
Lemma 7: For the Minimality requirement to hold, in a class structure composed of only proper classes, no class
possesses a base and the matching multiple precedence that is decomposable.
Proof: Let C be a proper class with a base B and multiple precedence MP: B→C-B. Assume B1,B2 exist such that
B1∪B2=B with with MPk: Bk→C-Bk k=1,2. Then two proper classes exist C1=C-B2 and C2=C-B1. Clearly, C1 and C2
are more general than C. This is in contradiction to Requirement 2.
Next, we present a lemma indicating why it might be useful to add a new subclass to an “efficient” class
structure.
Lemma 8: Consider a proper class C. Let C’ be a subclass of C. Then, C’ provides a new inference if and only if
one of the following two conditions exists:
(1) C’ has a base which is a qualifying set of C
(2) C’ has at least two new properties with respect to C.
Proof: We show only one direction of the proof (the less obvious one): C’ has at least one property in addition to C.
Assume C’ has an additional inference to those of C. Let the inference be MP’: B(C’)→C’-B(C’). Assume C’ has
exactly one additional property, p, to those of C. The new inference cannot imply p, because then the base of the
new subclass will be the same as for the original class: B(C’)=B(C). Since p precedes B(C’) it will precede B(C) and
will be possessed by all members of C. Thus, C’ will not be a proper (in terms of proper subset) subclass of C.
Hence, p must be part of B(C’). In this case, the new inference must be in the form: MP’:B(C)∪{p}→C’. Since C’
is a subclass of C this means that Q= B∪{p} is sufficient to infer infer C. However, since p is not a property of C, Q
is a qualifying set of C. Alternatively, C’ can have more than one additional property which will allow for some
additional properties both in the base and in the derived properties.
Lemma 8 indicates that two reasons exist for adding a subclass. First, the subclass can be a qualifying set of
an existing class. For example, it is sufficient to observe that a student has a thesis title to infer he or she is a
graduate student). Second, the subclass is added as it has properties is addition to those used to form it from the
original class. For example, if a subclass “graduate” student is formed by indicating a graduate program of
15 This can be viewed as extending the notion of information loss described above in terms of instances to loss of inferences.
17
registration, the student will have additional properties such as a thesis topic, an advisor, reduced tuition, or
eligibility for certain scholarships. Without one possibility or the other, it will not be useful to add the subclass.
Consider now the question that is often of interest: “can the union of two class definitions (namely, the
intersection of their memberships) be used to define a new class?” This is a common possibility, as often one is
interested in combining two sets of properties (for example, being a senior citizen and a being a taxpayer, or being a
customer and a company). In (Parsons and Wand, 1997) this practice is proscribed, unless it can be shown that
instances belonging to both classes possess at least one additional property. We now show that for proper classes,
this guideline is an outcome of the requirement of non-redundancy. First we observe that the union of class
definitions can form a proper class:
Lemma 9: Let C1, C2 be proper classes and let be the union of their properties be C= C1∪C2. If instances possessing
both C1 and C2 exist, then C is a proper class and B(C)⊆B(C1)∪B(C2).
The proof follows from two observations: (1) C includes at least the inferences of C1 and C2, (2) and additional
inferences might (but do not have to) exist from B1∪B2 into either B1 or B2.
The following lemma provides an explanation why it might be useful to add a class defined by the union of
properties of two classes (each of which will be a super-class of the new class):
Lemma 10: Consider two proper classes C1 and C2. Assume instances possessing both C1 and C2 exist. C1∪C2
defines a proper class with a new inference (with respect to those provided by C1 and C2) if and only if either a base
exists that is a proper subset of the union of bases, or every member of C possesses (the same) property p∉ C1∪C2..
Proof: Any new multiple precedence in C will have the form MP’: Q’→R’ such that Q’,R’⊂ C1∪C2. Since all
properties in Ck (k=1,2) can be inferred from their bases B(Ck) (k=1,2), MP’ can be expressed in terms of MP”:
Q”→R’ such that Q”⊆ B1∪B2. Since MP” is a new MP, two possibilities exist. Let r∈R’. If r∈Ck-B(Ck) for k=1 or
k=2 (namely, r belongs to the derived set of C1 or C2) then this is not a new inference. Hence, it must be that
r∈B1∪B2 or r∉C1∪C2. If r∈B1∪B2, one of the properties in either B1 or B2 can be inferred from properties in
B(C1)∪B(C2) (but not from properties in B(C1) only or in B(C2) only). Hence, the base of C does not include r and
B(C)⊂ B(C1)∪B(C2) . This completes the proof in one direction. The opposite direction is simpler to show.
The last lemma leads to the following outcome:
18
Corollary: Let C1, C2 be proper classes and let C=C1∪C2 such that B(C)=B(C1)∪B(C2). Then C will contain new
inferences if and only if every x∈C possesses at least one (the same) property p∉C.
This corollary is the guideline specified by Parsons and Wand (1997) with respect to union of classes (not
necessarily proper classes).
We summarize the above by stating that it is “useful” (in terms of inferences) to create a union of two
proper classes if and only if a base exists for the new class that is a proper subset of the union of the two original
bases, or every instance of the union class possesses at least one additional property. In either case there is a seeming
(cognitive or information processing) benefit. In one case, less information is needed to identify an instance as a
member of the union class than as a member of each class separately. In the other case, more information can be
inferred from the union class in comparison to the information combined from both classes, without incurring a
“cost” of looking for more base properties.
Another common practice in forming classes is to specify a subclass by limiting the value of a class-level
property (e.g. all citizens who are more than 65 years old). We now discuss this practice for proper classes.
Let C be a class and let p∈C be a property. Let p1 be a manifestation of p.16 Denote: C/p1 = C∪{p1},
namely, a set of properties together with a specific “value” for one of them.17 For example, if C is the class of
graduate students where one of the class properties is “program of study,” then an example for p1 may be
“counseling.” We observe the following:
Lemma 11: For C/p1 to have a multiple precedence in addition to those of C, each of its instances must possess a
property r not in C.
Proof: The new multiple precedence must be of the form MP: B(C)∪{p1}→R as all instances possess the properties
in B(C). Since MP: B→C-B, it follows that for MP to be a new inference, R must contain at least one property not in
C.
The non-redundancy requirement states that a proper class can be added only if it provides new information
in the form of inferences. Lemma 11 assures that for this to happen, each instance of the newly-formed (proper)
class must possess at least one additional property with respect to the “ancestor” class.
16 Manifestations are defined in (Parsons and Wand 2000). For our purpose, pk is a manifestation of p if p precedes pk. For example, a manifestation of being a student (p) is being registered in an academic program (pk). A special case of manifestation is a value (e.g. the weight of an individual belonging to a class of things that have weight).
19
For example, it is possible every student in the “counseling” program has an assigned practice site. Without such
additional property, the subclass of graduate student in counseling has no additional informational value.
To summarize the above analysis, in all cases the underlying reason to add a subclass is either that it
provides for a more efficient way to identify some of the (super)class(es) members, or that it provides additional
information to that of its superclass(es). The first case is demonstrated by the example that knowing a student is
registered in a graduate program (either by a specific case or in general) enables inferring the student has additional
properties such as thesis topic, an advisor, or reduced tuition. The second case is demonstrated by the counseling
academic program example which shows that forming a class of students in a specific program implies some
additional properties for the limited group.
Finally, above we have discussed the reasons for adding subclasses. However, we have not discussed the
justification for adding superclasses. This might be the case when the analysis of the domain is performed “bottom
up,” recognizing higher levels of abstraction. Our principle of minimality indicates the guidelines for this case.
Adding superclasses should be considered if the inferences they provide can replace those provided by subclasses
(without loss of property and instance information). This implies the multiple precedences of some subclasses are
decomposable – namely, can be substituted by “simpler” multiple precedences (of their superclasses). For example,
we might want to eliminate the class “foreign graduate student” if we can infer all that is needed from an (existing)
class “student” and a new one “foreign resident.”
A Note on Dynamics
Our analysis above addressed properties that instances possess at a given time. Specifically, we discussed
inferences that can be made from a set of properties at a given time to other properties at the same time. Such
statements are termed “synchronous” (Holland et al. 1986). However, our knowledge can include also inferences
from properties observed at a given time, to properties that may be observed at a later time. For example, if a student
is enrolled now in a graduate program, we can infer the student will have a thesis topic and an advisor at a later time.
Statements relating sets of properties at different times can be termed “diachronous” (Holland et al. 1986).
Diachronous statements can be viewed as describing the behavior of instances, as they relate to changes of
properties over time. Including diachronous inferences enables the extension of our analysis to dynamic (rather than
17 The membership of this class is ={x|x∈Membership(C) ∧ p1∈P(x)}.
20
just static) characteristics of instances. This has several implications. First, the rules about classification can be
extended to object classes, where a class is defined in terms of attributes and a set of possible behaviors (usually
termed “services” or “methods”). Second, synchronous inferences refer to properties that instances possess.
Diachronous inferences can refer to properties instances do not possess at a given time, but will possess later. Since
classification is based on properties, a diachronous inference can indicate that an instance will be “moving” from
one class to another. Thus, including such inferences can provide for a “life cycle” description of instances of a
class. For example, it might be possible to model that an instance of the class “Applicant” will become (with the
appropriate properties) an instance of the class “PhD student”, then an instance of the class “Candidate”, and finally
an instance of the class “Alumnus.”
APPLICATION TO SYSTEMS ANALYSIS AND DESIGN
The previous section provides a formal basis for understanding the usefulness of classes and class
structures in terms of the inferences that can be derived from categorizing an instance as a member of a class. From
a cognitive perspective, this framework draws on premises about why and how humans make sense of the world by
classifying phenomena. In this section, we explore how this framework can be used in information systems analysis
and design. We focus on two aspects: (1) using the framework to guide the development of conceptual models of a
domain; and (2) how the principles can guide and constrain the design of information systems that preserve the
inferential semantics18 embedded in a conceptual model. It is our main contention that considering the inferences
provided by classes is critical to all classification-related activity. We present next some specific implications to
systems analysis and design. These all relate to the need to consider, in addition to properties, also inferences. Such
inferences often result in derived or implied properties which are not obvious when the class is first considered. In
information systems design, such implied properties often are not represented in the database.
Conceptual Modeling
One of the key tasks in developing a conceptual model of a domain is identifying a set of classes that
describe the things of interest in the domain. The framework developed above provides a clear set of criteria for
identifying the information that needs to be obtained when creating classifications, and for determining whether a
proposed class is useful in the context of an application. Below we outline a set of criteria that can be used in
18 We use the term inferential semantics to mean the inferences that can be made based on a class structure developed according to the principles given in the paper.
21
assessing whether a proposed class should be added to a conceptual model and, if a class is to be added, what
conditions need to be satisfied. Prior to doing this, we reiterate the meaning attached to a class. A class implies
commonality of properties and inferences. While properties are usually explicit (e.g., in the data), inferences are not
usually included. These inferences are typically embedded in the software or in the way humans use the data. To
demonstrate, consider the following example. Let the properties be (Name, Address, Weight,
DateofLastInnoculation). This class could refer to humans, pets, or cattle. However, the properties are not enough to
distinguish between these three classes. Instead, rules about how the data are used may be embedded in software that
processes instances having the attributes, or may be used outside a system as a result of a query.
In the following, we suggest specific rules for choosing classes in conceptual modeling.
Rule 1: Identify a subset of the properties of a proposed class that are sufficient to
determine that an instance belongs to that class
If such a subset can be identified, this subset indicates a (multiple) precedence with respect to the
remaining properties of the class. Otherwise, the class is not needed.
Example: A class STUDENT is proposed with attributes (Name, Address, DateOfBirth).
Asking the question “What set of attributes is sufficient to determine membership in the class STUDENT?” leads to
the answer that all the attributes are needed. Further probing might indicate that students also possess the property
ProgramOfStudy. In turn, ProgramOfStudy can be identified as a property sufficient for membership in STUDENT
(i.e, a base of STUDENT). A rule such as this provides guidance in the identification of classes and their properties.
Rule 2: Identify properties that qualify an instance for membership in a class
If a qualifying set exists for a class, these properties can be used as a shortcut to identify an instance as a
member of a class. That is, every instance possessing the set of properties must belong to the class. However, not
every instance of the class need possess these properties. Therefore, such a set can be used as a partial mechanism to
populate a class with instances. Not every class will have a qualifying set.
Example: A class CUSTOMER is proposed with attributes (Name, Address, CreditLimit). Furthermore, a property
PreferredStatus is identified as a qualifying property. That is, any individual possessing the property PreferredStatus
can be classified as a customer, without first determining that the instance possesses the properties of the class. Note
that this does not mean that all customers have a preferred status.
22
Rule 3: Identify subclasses of a class based on qualifying properties
Qualifying properties indicate the existence of proper subclasses of a class. The identification of a
qualifying set implies that a subclass of customers who have the property PreferredStatus can be defined. In cases
such as this, the qualifying properties are properties possessed only by a strict subset of the instances of the
superclass.
Example: If PreferredStatus is a qualifying set for the class of CUSTOMER, define a subclass
PREFERREDCUSTOMER (Name, Address, CreditLimit). Note that in this case, the inference that a preferred
customer is a customer is implied by the name of the class.
Rule 4: Identify subclasses of a class based on additional properties
According to Lemma 8, a subclass that is not based on a qualifying property must have at least two
properties not possessed by its superclass. Thus, if only one property is identified, and that property is not a
qualifying property, this can serve as a guide to identify at least one additional property of the proposed class. If
such a property cannot be identified, there is no need for the proposed class (i.e., it affords no inference value).
Example: Suppose it is proposed to define a subclass of EMPLOYEE consisting of those employees who have the
property HoldDriversLicense. Note that this is not a qualifying property, since not all those who hold a driver’s
license are employees. Unless there is at least one additional property possessed by all those employees who hold a
driver’s license, there is no need to define a subclass. Discussion with a client may reveal that, for example,
employees who hold a driver’s license receive a certain salary bonus, or are entitled to work at particular jobs within
the organization.
Rule 5: Identify subclasses of multiple superclasses determined by a smaller base
This rule proposes that a subclass can be specified when fewer properties are needed to identify it as a
member of the subclass than as a member of all the superclasses it specializes. This can ease the burden of
classifying instances. By virtue of belonging to the subclass, the instance then also belongs to all superclasses of that
class, even if it is not known at the time of classification that the instance possesses some properties in (some of) the
superclasses.
23
Example: Consider two classes STUDENT, with base (AcademicAdvisor, ProgramofStudy19), and EMPLOYEE,
with base (Salary). A subclass MENTOR can be defined if it is possible to identify an instance as a member of the
subclass without knowing all the information needed to identify it as a member of both STUDENT and
EMPLOYEE. If it is possible to identify an instance as a MENTOR based on possessing the properties
(ProgramOfStudy, Salary), then MENTOR can be defined as a class. Moreover, it can be inferred that MENTORs
have an AcademicAdvisor (i.e., they are students). Note that this situation implies that individuals having a
ProgramOfStudy, but no AcademicAdvisor, are not students and therefore cannot be MENTORs (see Footnote 19).
Rule 6: Identify subclasses of multiple superclasses that possess additional attributes
If the proposed subclass does not have a smaller base than the union of the superclasses it specializes, then
it must possess at least one property that is not in the union of the properties of the superclasses. That is, in this case,
the subclass enables at least one additional inference (to the new property) relative to inferences that can be drawn
from membership in all of the superclasses.
Example: Consider two classes STUDENT and EMPLOYEE. If there is a proposal to define a class
RESEARCH_ASSISTANT as a subclass of these classes, and there is no base for RESEARCH_ASSISTANT that is
a proper subset of the bases of its superclasses, then the proposed class must have at least one property not in the
union of the properties of the superclasses. In this case, such a property might be ExtendedLibraryPrivileges. That is,
students who are employed by the university as assistants are entitled to these privileges, which are not available to
all students or employees (or all student employees). Note that RESEARCH_ASSISTANT and MENTOR (from the
previous example) can both be subclasses of both STUDENT and EMPLOYEE.
Rule 7: Identify subclasses based on values of properties
If a proposed class is defined by restricting the value of a class-level property of a superclass, then all its
instances must possess at least one additional property not possessed by other instances of the superclass. Otherwise,
the class does not embed any additional inference capability.
Example: Suppose there is a proposal to define a subclass of EMPLOYEE that includes those employees whose
Salary is less than $20,000. If it cannot be established that employees who meet this condition all possess some
19 In this example, we do not consider ProgramOfStudy alone to be a base, since there may be individuals taking a non-credit certificate program who are not considered students (and, therefore, do not have an AcademicAdvisor).
24
additional property, the class is not useful and should not be specified. However, if these employees have the
additional property, ParkingSubsidy, this additional inference is sufficient to allow the class to be defined.
Note that this does not mean that such additional properties need to be specified explicitly as attributes of
the class, as will be examined in the next subsection.
Systems Design
The rules provided above offer guidance for conceptual modeling of a domain based on fundamental
principles that underlie useful and effective classification. However, the impact of following classification principles
on systems design is not immediately obvious. In this section, we consider some general design guidelines that
follow from the above analysis.
A class is characterized in terms of the properties which must be possessed by all instances of that class. A
naïve interpretation of this approach is that such properties must always be represented explicitly as attributes in a
set of relations (in the case of database design) or object classes (in the case of object-oriented software design).
However, this is not a necessary consequence of our analysis. Instead, we identify three ways in which properties of
good classes at the conceptual level can influence the design of a system.
First, we recognize that certain properties reflecting persistent facts about things of interest must be
represented if the semantics of a class structure are to be preserved in a design. In our model, the base of a class
consists of those properties that allow us to infer the remaining class level properties of the class. Since there may be
more than one base for a class, we derive the following design implication:
Design Guideline 1: For every class modeled in the design of an application, at least one base of the class must be
explicitly represented as attributes of the class (e.g., attributes in a database relation representing the conceptual
class or attributes in an object class representing the conceptual class).
If the base of a class is not represented in a persistent manner, it will not be possible to exploit fully the
inferences implied by a conceptual model. In other words, failing to follow Design Guideline 1 may lead to a loss of
semantics in translating from the conceptual model to a design.
Second, the inferred properties of a class can be derived from the base. Such properties can be stored as
persistent data of the class as described above. Criteria for determining when it is useful to do this will be based
purely on efficiency considerations. Whether it is less costly in design and processing to store the data or compute it
25
when needed may depend on issues such as the frequency with which it changes and the frequency with which it
needs to be retrieved (queried). Such considerations are beyond the scope of this paper. Hence, we propose:
Design Guideline 2: For every class modeled in the design of an application, determine which derived properties
will be stored as persistent data of the class.
Alternatively, derived properties may give rise to deduction rules or formulae that can be used to compute
(the values of) these properties. Hence, the derived properties may be embedded in the software that acts on the data
representing the base of a class. Thus, we get:
Design Guideline 3: For every class modeled in the design of an application for which derived properties are not
stored as persistent data of the class, define derivation rules that will be expressed in the software that operates on
the data (e.g., methods of an object class).
Finally, the inferred properties of a class need not be specified in the software that operates on the data.
Such inferences may be supported by human activities that exist outside the scope of a computerized information
system. For example, ad hoc queries are based on the presumption that databases can be routinely queried for
purposes that are not predetermined when an information system is designed and implemented. Extending an
example introduced earlier, a manager may wish to query for the names and salaries of all employees whose salary
is less than $20,000. The set of employees meeting this criterion may constitute a subclass of employee that is not
defined with respect to the designed system. If these employees are offered special training to upgrade their skills,
this may lead to the acquisition of new properties (skills) over time. Thus, a query may be viewed as defining a class
in which the inferences are executed by humans and relate to future states of its instances. We therefore propose:
Design Guideline 4: Subclasses identified during a conceptual analysis need not be implemented in a design. This
will be the case in particular if the inferences relate to properties deemed outside the scope of the implemented
information system.
Note that such information still exists in the conceptual model, and thus still guides the requirements
analysis process.
In summary, the inferential semantics captured in the class structure of a conceptual model generates a
number of guidelines that can shape the design of an information system to preserve the inferences. The general
guidelines presented here can form the basis for further work to articulate more specific design guidance and criteria
for evaluating designs.
26
How to Verify the Approach
We have proposed a set of rules to guide the identification of classes in conceptual modeling, as well as a
number of guidelines for systems design. These rules and guidelines are derived from an analysis of the fundamental
role of inferences in guiding the choice of classes and class structures.
The usefulness of these rules can be determined using empirical research aimed at assessing the impact of
following these guidelines on the quality of conceptual models and information systems designs. From a conceptual
modeling perspective, an obvious strategy to determine the usefulness of the proposed rules would be to compare
the quality of conceptual models produced when the rules are followed to the quality of models produced without
the rules. Such comparisons could be based on a range of measures, including the domain semantics expressed in
models produced under the two approaches, and measures of comprehension and problem solving under each of the
approaches (similar, for example, to the work described in (Gemino and Wand 2005)). Similarly, from a design
perspective, the value of the design guidelines can be determined by comparing the quality of design artifacts
produced when the guidelines are followed to the quality of artifacts produced independent of the guidelines.
CONCLUSIONS AND FUTURE RESEARCH
This paper proposes a formalization of ideas underlying effective classification, based on the principle that
a class should be useful in providing inferences and, when included in a class structure, should provide additional
inferential value with respect to other classes in the structure. Some formal properties of classes constructed
according to this principle are derived. Based on the formal definitions and properties, several practical rules are
proposed to guide the development of conceptual models that specify the classes of things important for an
information systems application. In addition, some general design implications of the framework are explored.
Our work follows the design science guidelines proposed by Hevner et al (2004). Table 1 summarizes these
guidelines and indicates how they apply to our work.
27
Table 1: Design Science Research Guidelines
Guideline Comments
Design as an Artifact • Proposing a model of good classification structures
• Proposing a method (rules and guidelines) for constructing good classification structures
Problem Relevance • The choice of classes is critical to the modeling and development of information systems, and is reflected in the design of databases and software artifacts
• There are no theory-based guidelines for the selection of classes in information systems analysis and design
Design Evaluation • The quality of the model is demonstrated through logical reasoning about the implications of basic assumptions about the purpose of classification
• Empirical approaches to demonstrating the utility and efficacy of the proposed method are outlined
Research Contributions • The work provides novel insights regarding classification in information systems development
• The analysis leads to detailed, theory-based rules to guide the choice of classes in conceptual modeling and in information systems design
Research Rigor • The model is developed according to logical reasoning and proof of consequences of the underlying assumptions
• The consequences for analysis and design methods are logically derived from the model
Design as a Search Process • The model and method are developed to conform to state-of-the-art theory about the role of classification in human adaptation and survival
• Identifying classes in a specific domain for design requires search for alternatives. The outcome of the research provides rules to guide choices for classification
Communication of the Research • The model and method are formally well-defined and derived, satisfying technical requirements
• The model and method address a practically important problem in the choice of classes in information systems analysis and design
Our results open the door for several avenues of research. First, there is a need to explore the empirical
value of developing conceptual models and information systems designs in which the classes defined adhere to the
framework proposed in this paper. Some specific questions of interest include: Are such conceptual models easier to
28
understand and use? Can the principles and their implications be actually used in the practice of information system
design and how easy would they be to use? Will the use of the theoretical principles lead to designs that are
demonstrably more effective than traditional approaches? Such questions are amenable to traditional behavioral
science research in the information systems field.
Second, we believe the class design principles proposed in this research are applicable in a range of other
information systems domains that have yet to be explored. For example, recently there has been a great deal of
interest in developing domain ontologies to support information sharing and interoperation in Semantic Web
applications. A domain ontology in this context is essentially a formal specification of a set of classes and their
relationships. However, there is very little research in the area dealing with methods to design useful ontologies. The
principles proposed here need to be examined in terms of their applicability to that domain. Similarly, we believe the
principles apply in a number of areas related to human computer interfaces, such as the organization of menu
structures in application software, as well as in the design of file structures that effectively categorize documents,
including email.
Third, we have focused our analysis on classifying “things” (typically represented as instances in a
database). However, as we have indicated, other types of phenomena are subject to classification. For example,
information included in user interfaces, business rules, actions, or business processes. It would be of interest to
explore how the principle of inference can inform classification of such phenomena.
Finally, in our analysis, we have not included considerations of the actual “cost” of observing class
determining properties and inferring the other properties. Whether done by humans or by machines, not all
properties are as readily observable and not all inferences require the same effort. In our terminology, different class
structures and different choices of bases for classes might require different effort when processing information.
Thus, we believe our analysis can provide the formal grounds for introducing cost-benefit considerations into
classification schemes, based on the effort that will be spent on obtaining answers by applying inferences to
observed information.
29
REFERENCES
Berners-Lee, T., J. Hendler, O. Lassila. “The Semantic Web,” Scientific American, (284:5), 2001, pp. 34-43.
Bruner, J., J. Goodnow, and G. Austin. A Study of Thinking, Wiley, New York, 1956.
Bunge, M. Treatise on Basic Philosophy: Volume 3, Ontology, Reidel, Amsterdam, 1977.
Chandrasekaran, B., J. Josephson, and R. Benjamins. “What are Ontologies, and Why Do We Need Them?” IEEE
Intelligent Systems, (14:1), January-February 1999, pp. 20-26.
Chen, P. “The Entity-Relationship Model – Toward a Unified Model of Data,” ACM Transactions on Database
Systems, (1:1), March 1976, 9-36.
Codd, E. “A Relational Model of Data for Large Shared Data Banks,” Communication of the ACM, (13:6), June
1970, 377-387.
Dobing, B. and J. Parsons. “How UML is Used,” Communications of the ACM, (49:4), May 2006. 109-113.
Fensel, D. Ontologies: A Silver Bullet for Knowledge Management and Electronic Commerce, Springer,
Heidelberg, 2003.
Gemino, A. and Y. Wand, “Simplicity versus Clarity in Conceptual Modeling: Comparison of Mandatory and
Optional Properties”, Data and Knowledge Engineering, 55 (2005) pp. 301–326.
Guarino, N. and C. Welty. “Evaluating Ontological Decisions with Ontoclean,” Communications of the ACM,
(45:2), February 2002, pp. 61-65.
Hammer, M. and D. McLeod. “Database Description with SDM: A Semantic Database Model,” ACM Transactions
on Database Systems, (6:3), 1981pp. 351-386.
Hevner, A.R., S.T. March, Park, J. and S. Ram. “Design Science in Information Systems Research,” MIS Quarterly,
(28:1), March 2004, pp. 75-105.
Holland, J.H., Holyoak, K.J., Nisbett, R.E.’ and P R. Thagard, INDUCTION, The MIT Press, Cambridge,
Massachusetts, 1986.
Hull, R. and R. King. “Semantic Data Models: Survey, Applications, and Research Issues,” ACM Computing
Surveys, (19:3), pp. 201-260.
Kent, W. “Limitations of Record-based Information Models,” ACM Transactions on Database Systems, (4:1),
March 1979, pp. 107-131.
30
Lakoff, G. Women, Fire, and Dangerous Things: What Categories Reveal About the Mind, University of Chicago
Press, Chicago, 1987.
Larman, C. Applying UML and Patterns, Prentice-Hall, Upper Saddle River, New Jersey, 2002.
Lieberman, H. “Using Prototypical Objects to Implement Shared Behavior in Object-oriented Systems,” in
Meyrowitz, N. (Ed.), ACM SIGPLAN Notices, OOPSLA’86 Conference Proceedings, 21(9), September 1986,
214-223.
Medin, D. and E. Smith. “Concepts and Concept Formation,” Annual Review of Psychology, (35), 1984, pp. 113-
138.
Medin, D., J. Coley, G. Storms, and B. Hayes. “A Relevance Theory of Induction,” Psychonomic Bulletin and
Review, (10:3), 2003, pp. 517-532.
Monarchi, D. and G. Puhr. “A Research Typology for Object-oriented Analysis and Design,” Communications of
the ACM, (35:9), September 1992, pp. 35-47.
Parsons, J. “An Information Model Based on Classification Theory,” Management Science (42:10), October 1996,
pp. 1437-1453.
Parsons, J. and Y. Wand. “Choosing Classes in Conceptual Modeling,” Communications of the ACM (40:6), June
1997, pp. 63-69.
Parsons, J. and Y. Wand. “Emancipating Instances from the Tyranny of Classes in Information Modeling,” ACM
Transactions on Database Systems, (25:2), June 2000, pp. 228-268.
Parsons, J. and Y. Wand, “Attribute-Based Semantic Reconciliation of Multiple Data Sources”, Journal on Data
Semantics, (1:1), October 2003, pp. 21-47.
Rehder, B. and R. Burnett. “Feature Inference and the Causal Structure of Categories,” Cognitive Psychology, (50),
2005, pp. 264-314.
Rosch, E. “Principles of Categorization,” in Rosch, E. and B. Lloyd (Eds.), Cognition and Categorization, Erlbaum,
Hillsdale, New Jersey, 1978, pp. 27-48.
Rosch, E. and C. Mervis. “Family Resemblances: Studies in the Internal Structure of Categories,” Cognitive
Psychology, (7), pp. 573-605.
Ross, B. and G. Murphy. “Category-based Predictions: Influence of Uncertainty and Feature Associations,” Journal
of Experimental Psychology: Learning, Memory, and Cognition, (22:3), 1996, pp. 736-753.
31
Schmid, H. and R. Swenson. “On the Semantics of the Relational Data Model,” in Proceedings of the 1975
SIGMOD International Conference on Management of Data, King, W.F. (Ed.), San Jose, California, May 1975,
pp. 211-223.
Smith, E. “Concepts and Thoughts,” in Sternberg, R. and E. Smith (Eds.), The Psychology of Human Thought,
Cambridge University Press, Cambridge, Massachusetts, 1988.
Smith, E. and D. Medin. Categories and Concepts, Harvard University Press, Cambridge, MA, 1981.
Smith, J. and D. Smith. “Database Abstractions: Aggregation and Generalization,” ACM Transactions on Database
Systems, (2:2), June 1977, pp. 105-133.
Teorey, T., D. Yang, and J. Fry. “A logical design methodology for relational databases using the extended entity-
relationship model,” ACM Computing Surveys, (18:2), June 1986, pp. 197-222.
Tsichritszis, D. and F. Lochovsky. “Hierarchical Data-Base Management: A Survey,” ACM Computing Surveys,
(8:1), March 1976, pp. 105-123.
Yamauchi, T. and A Markman, “Inference Using Categories,” Journal of Experimental Psychology: Learning,
Memory, and Cognition, (26:3), 2000, pp. 776-795.
32