Database Reference
In-Depth Information
the cart will need to track the quantity and the status of these products.
The status of the product in the cart will help provide the functionality to
save an item in the cart and check out with other items. Based on this we
can update our entity list to contain a Shopping Cart entity.
This section only touches on interpreting use cases; there are volumes
of topics dedicated to the topic if you want to learn more. The important
thing here is to look at the principals, the use cases, and the relationship
between the use cases for clues to help you build your data model.
Determining Attributes
After you have gone over all the documented requirements that were gath-
ered from the users, your data will likely still have a lot of gaps. The
sketchiest will be the attributes of the entities. People tend to explain
things at very high levels, except for the grandmother of one of your au-
thors, who explains things in excruciating detail. If she were our customer,
we can guarantee we would have all we need at this point, but she is not,
so we will have to do some digging.
What do we mean by detail? Most people would explain a process in a
generic way, such as, “Customers place orders for products.” They do not
say, “Customers, who have first names, last names, e-mail addresses, and
phone numbers, place orders for products based on height, SKU, weight,
color, and length.” It is this descriptive detail about each entity that we
need in order to build our logical model. At this point, if you don't have
what you need, get in a room with your customers and ask them to help
you fill in the gaps.
Bring a complete list of entities to the meeting, and make sure you also
have the list of attributes you have so far for each entity; see Table 6.1 for
our final entity list.
You will notice that we have added an entity description to the list. This
tells us what the entity is for and helps us constrain the type of data that
will be stored in the entity.
Once this list is complete, you need to go through each and every en-
tity and ask the users what detailed data they need to store for that partic-
ular entity. Where applicable, you should try to ask about the possible
lengths of the data to be stored. For example, if you're told that the data-
base needs to store a product description, ask them to specify the length of
the longest, average, and shortest description they might need. Take some
time to verify the attributes you identified from the requirements.
Search WWH ::




Custom Search