D.3. Owner's Needs: Business Subjects

In the owner's needs view, the business experts defined the major categories of “stuff” that XYZ needed to store in its filing cabinet. The team followed these steps:

1.
Start with the data classes that were deemed to be relevant for this project.

2.
Identify the major divisions (data subjects) for these data classes.

3.
Write a definition of each data subject.

Let's continue following the path that the project team took during planning and execution of Valencia.

D.3.1. Select Relevant Data Classes

Of course, they started with the previous view results—the list of data classes. During strategic planning XYZ had identified 12 (really 30) of them for their overall CRM program. Next, they identified just what was needed to accomplish the Valencia project. After reviewing its class list, XYZ identified just two data classes that were relevant to Valencia (which was the first iteration of the customer database, El Cid).

El Cid will serve as a customer reference database so all customers can be consistently identified and recognized wherever they touch XYZ. Obviously, the data class CUSTOMER was the starting point for Valencia. In addition, XYZ knew that an important part of customer recognition included knowing what products were owned by what customers. The INSTALLED PRODUCTS data class was the other one identified as relevant by the project team. Valencia involves only these two data classes. Other projects (like MyXYZ) would touch many data classes—one of the reasons we didn't select it, remember?

D.3.2. Identify Data Subjects

The data class (or file drawer) “Customer” represents just about anything we might decide to collect about a company or a person who owns one of our products or uses our services. This is a very conceptual level, which is easy to show on a diagram, but not useful in helping the IT team to understand what to build. Because building the information infrastructure is one of our goals, we'll keep working.

Subjects divide data classes into meaningful subsets that let us organize and store information in a way that it is useful for many different purposes. Subjects represent real things (including concepts like profit) that have characteristics that describe them. Their characteristics are usually different from those of any other subject. We have discussed that a customer can be a company or a person, so two obvious data subjects are company and people. These certainly have different characteristics, so they pass the test to be separate subjects.

Of course, XYZ also sells products to consumers, so should it separate consumers and company contacts? XYZ chose to have just one People subject because (at least for now) it needed the same basic information about all people (name, address, etc.) in either case. XYZ called these two subjects Customer Company and Customer Contact.

For the other data class, INSTALLED PRODUCTS, XYZ could not identify any meaningful subsets (at least for this project). The company decided to retain it as a data class, at least for now, and defined a subject Installed Products as its only subset. Later, XYZ might want to either find more data subjects for INSTALLED PRODUCTS or eliminate it as a data class and find another home for the Installed Products subject. The right model is the one that's right for XYZ's business. After they had identified the business data subjects for Valencia, the next step was to clearly define them all.

D.3.3. Create Data Subject Definitions

Just as we did for our data classes, we will create business definitions for each subject. Note that each definition is based on the data class definition so it took less time to create than if we started over (see Table D-6).

Table D-6. Data Subjects for Valencia
Data Subject Definition
Customer Companies Organizations that acquire at least one of our products or services
Customer Contacts Persons who acquire at least one of our products or services
Installed Products Products or services owned or used by a customer company or contact

These are the data subjects that XYZ needed to support its business independent of any system that used them. We never organize data around its uses, only on what the data actually is. XYZ's next step was to plan how to organize the facts it wanted to collect and store. “Company” is one thing, but what do we want to know about companies?

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset