ERD – Tightlines Flies Week 2

Can anyone say Tightlines Flies 10 times fast???

Here are some notes about the diagrams in general:

I do have higher standards for the MSC 645 class, BTW. What I consider a good quality diagram for this class is a general grasp of what the entities are and some display of the relationships between entities.

Just to give you an idea, this is a checklist of what I consider MINIMUM requirements in MSC 645:

  1. Name and title is on your paper when I print it out.
  2. Entities are identified (Entities and Relationships are NOT Process Flows. "An Entity is a thing about which you wish to collect information." Saying this statement about each of your entities should make sense. Example: "An Order is a thing about which I wish to collect information." )
  3. Relationships are identified i.e.: both the 1:1, 1:many, etc (see 2.3) as well as a few words (verbs) that clearly describe what the relationship is (avoid using "has" as in: "entity 1 has one or more entity 2’s" and "one or more entity 2’s is contained in entity 1" If at all possible, come up with more descriptive verbs. The relationship is generally a VERB.
  4. Attributes are identified (should include major ones, but if some are missing that’s OK for now)

For MSC 525, I want this to be a LEARNING experience, therefore, as some of you can see I have not been as strict. By the end of this class, you should be able to diagram entity relationships according to the above standards.

So... for notes on your diagrams...

Housekeeping rules.

  1. PLEASE put your name and somehow identify the assignment so these will appear on the printed document. I THANK the 5 or 6 so out of 16 who did include your name.
  2. Also, PLEASE put your initials in the file name when you save it. That way, I won’t write over your file with another file having the same name. (This is important because many of the diagrams must be saved in order to be viewed in this WebCT environment. So you can imagine what I get when I save a bunch of files and some have had the same name.) Bottom line... if YOU want to ensure the credit for YOUR work, please use your initials or name in naming files either posted to the forum or emailed to me.
  3. Once you have posted a document to the forum, please go back in there and make sure you can both view and print the document. Some of the posts were gif’s that were too large to print.

ERD notes: I will send individual notes on specific diagrams to each student. I think this ERD diagramming exercise is very important and I ask that you take the time now to learn what you can from it. ERD diagrams are used universally in the industry to identify the entities in a system. The entities may be put in "table" format in the database, and the table’s column names come from the "Attribute" list.

  1. First off, the fact that this is a web application is a distraction. The "system" is the customers, inventory, etc, and at this point it doesn’t matter how it’s implemented.
  2. Make sure your entities are nouns AND are something about which you wish to collect and save information. For example: several students identified the unregistered customer, guest, visitor, I believe there were other names... This would not be a thing about which we wish to collect information (according to the narrative.) This was a "trick" element in the narrative. We want visitors to come to our web site, but we will not be collecting information about them. Also, a couple of people noted the web site as an entity. In this system, I don’t believe we want to collect information about the web site per se.
  3. If your relationship lines do not have words on them, try to add some. Relationships are VERBS and they relate two entities. One of the entities is the "subject" of that verb (entity does the verb) and the other entity is the "object" of that verb (entity is done unto or "is verbed" by the other entity). The words should be going both ways... see WebCT Week by Week Section 2.3: "Supplier(E1, subject) provides (R, verb) inventory (E2, object)" AND "Inventory (E2, subject) is supplied by (R, verb) Supplier (E1, object)" Notice that in the second sentence, the Entities’ (E1 and E2) subject/object rolls were reversed when you used a different VERB. Several students used other than verbs to identify the relationships, and this would be an incorrect relationship. Also, if the verb you use does not connect the entities, one as the subject and the other as the object, then you’ve used the wrong verb. As an example: Order "approved" Credit card transaction. Neither the order nor the credit card transaction actually "approved" anything, therefore this verb is incorrect. The Order "Initiates" the Credit card transaction AND the Credit card Transaction "is a result of" the Order. See the difference?
  4. If you cannot put words to the relationship between two entities, consider the possibility that a relationship between those two entities does not exist. Perhaps another entity is required to connect the two.
  5. If all of one entity is in the population of another entity, then just identify the super-entity. For example: In this case, several students identified both Customer and registered customer as entities. These would be one entity. Another example: A couple of students identified "Product on order" (various names for this) as well as "Products." In this case, the "Order" would identify each product by product number. There is no need to separately identify "Products on order." The product information is kept in the "Products" entity and the order information is kept in the "Orders" entity. Likewise, we don’t need to identify "catalog of products" as an entity. What the customers are looking at is a list generated from our "Inventory." Maintaining a separate entity called "catalog of products" implies that we are collecting information about our products in two separate places... (Not a good idea. There should be one "source" of a particular data element, then other places that need that data should get it from a single place. Think of how you would "update" data... if you had to update your address in 5 different places in a system, imagine the opportunity for error there.)
  6. RE 1:1, many:1, etc... Just double-check these in your diagrams. I think you all get the point, but it sometimes gets confusing if you don’t go back and double check the way you’ve expressed it on the diagram.