EDUCE Overview Copyright 2009 Nikolas S. Boyd.
All rights reserved.

Normal Article

Intent

Convert a definite article to an indefinite article, unless a definite article identifies a true domain singleton.

Motivation

Casual conversational English frequently (and appropriately) uses an indefinite article to indicate one, or any one, or some one, or a certain one, (usually) of many. An originates from Anglo-Saxon, meaning one; a abbreviates an.

Casual conversational English frequently (and appropriately) uses the definite article (the) as a simple referential indicator. However, it can also be used to emphasize, distinguish, or indicate uniqueness (the only one). It is this final usage which raises an issue for conceptual modeling.

Applicability

Use an indefinite article (a or an) when

Use a definite article (the) only when

Considerations

Object-oriented designs focus on relationships and collaborations between individuals. Object-oriented designs often use a basic metonymy as a source of design components: a single instance represents an entire category or class of individuals. So, a statement about a single individual is applied to all the instances of a class. Thus, object-oriented designers often use sentence subjects and objects as candidates for class names.

Conceptual models and object-oriented design models derived from them respect assertions of uniqueness within a discussion domain. So, conceptual models need some precision with respect to the cardinality of instances and relationships, especially uniqueness versus multiplicity.

True domain singletons are rare. If problem statements explicitly mention the business enterprise under consideration, the enterprise may be (considered) a true singleton (taken as a whole).

the ECO depot ...

However, business enterprises often have some complex internal structure that will also need to be modeled. This may call into question whether it's appropriate to model the business enterprise as a whole or as a collection of parts.

Statements about a problem domain, especially problem descriptions and solution usage descriptions, may mention a solution system. So, a solution system may appear as a true singleton in such statements.

the system will ...

However, some solutions implemented as distributed computing systems replicate system instances on multiple hosts in order to achieve reliability, availability, and/or scalability. In this kind of solution, clearly "the system" is no longer a true singleton.

Consequences

You can use an indefinite article (a or an) to indicate that an object is an instance of a class. You can use an indefinite pronoun (each) to retain a strong indication that an object is a member of a collection. Reserve the definite article (the) to indicate that only one instance of a subject (or a clausal object) exists in the discussion domain. You can also use a limiting adjective to explicitly indicate the cardinality of a relationship.