DOC PREVIEW
Toronto CSC 340 - Practice Example

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Practice ExampleThe University of Toronto has several departments. Each department is managed by a chair, and at least one professor. Professors must be assigned to one, but possibly more departments. At least one professor teaches each course, but a professor may be on sabbatical and not teach any course. Each course may be taught more than once by different professors. We know of the department name, the professor name, the professor employee id, the course names, the course schedule, the term/year that the course is taught, the departments the professor is assigned to, the department that offers the course.Tutorial Week 7 - Class and Entity-Relationship Diagrams page 1 of 14 1 Class Diagrams and Entity Relationship Diagrams (ERD) Class diagrams and ERDs both model the structure of a system. Class diagrams represent the dynamic aspects of a system: both the structural and behavioural features. ERDs, depicting only structural features provide a static view of the system. 2 Class Diagrams 2.1 Elements of a class diagram: 2.1.1 class Class Name A class is a general concept (represented as a square box). A class defines the structural attributes and behavioural characteristics of that concept. Shown as a rectangle labeled with the class name. 2.1.2 association Class 1 Class 2Association A (semantic) relationship between classes. A line that joins two classes. 2.1.2.1 binary Person FoodEats Simple association between two classes. A solid triangle with the association name indicates the direction in which the association is meant to be read. 2.1.2.2 n-ary Class 1 Class 2Class 3n-ary n-ary Association expresses an association between multiple classes 2.1.2.3 Aggregation Team Member “has-a” relationshipTutorial Week 7 - Class and Entity-Relationship Diagrams page 2 of 14 2.1.2.4 Composition Car Engine “is-composed-of” relationship 2.1.2.5 Generalization Car Volvo “is-a-kind-of” relationship 2.1.2.6 Dependency Project ManagerProjectTeam The source class depends on (uses) the target class. (not used for requirements analysis) 2.1.2.7 Realization Worker«datatype»Human Resources«datatype»Project Manager«datatype»System Administrator Class supports all operations of target class but not all attributes or associations. (not used for requirements analysis)Tutorial Week 7 - Class and Entity-Relationship Diagrams page 3 of 14 2.1.2.8 Association Classes class 1class 2Association Class Can be applied to binary or n-ary associations. Used to capture the attributes of an association. 2.1.3 attribute -attribute 1-attribute 2-attribute 3class 1 What is known about each object of this class type. Typical characteristics. 2.1.4 operation +operation 1()+operation 2()+operation 3()-attribute 1-attribute 2-attribute 3class 1 What objects of this class type do. Typical actions that are relevant to the current analysis. 3 Creating a Class Diagram Here are some steps to help create a class diagram: 3.1 Identify Classes These are the abstract or physical “things” in our system which we wish to describe. Find all the nouns and noun phrases in the domain descriptions you have obtained through your analysis. Consider these class candidates. 3.2 Find Associations Now find the verbs that join the nouns. e.g., The professor (noun) teaches (verb) students (noun). The verb in this case, defines an association between the two nouns. Identify the type of association. Use a matrix to define the associations between classes. 3.3 Draw Rough Class Diagram Put classes in rectangles and draw the associations connecting the classes. 3.4 Fill in Multiplicity Determine the number of occurrences of one class for a single occurrence of the associated class.Tutorial Week 7 - Class and Entity-Relationship Diagrams page 4 of 14 3.5 Identify Attributes Name the information details (fields) which are relevant to the application domain for each class. 3.6 Identify Behaviours - Specify the operations that are required for each class. (assume getter and setter methods for each attribute.) 3.7 Review your diagram and fine tune it. Look for inconsistencies and errors. Fix them. Make sure you have captured everything required from the domain you are studying - that your diagram is complete. 4 Entity Relationship Diagrams 4.1 Elements of Entity Relationship Diagrams: 4.1.1 Entity A data entity is anything about which we want to store data . 4.1.2 Relationship A relationship is a semantic association between one or more entities. 4.1.3 Attribute Entity 1Key AttributeAttribute 3Attribute 2Attribute 1 A data attribute is a property common to an entity. 4.2 Creating an ERD Here are the steps you may follow to create an entity-relationship diagram.Tutorial Week 7 - Class and Entity-Relationship Diagrams page 5 of 14 4.2.1 Identify Entities Identify the entities. These are typically the nouns and noun-phrases in the descriptive data produced in your analysis. Do not include entities that are irrelevant to your domain. 4.2.2 Find Relationships Discover the semantic relationships between entities. These are usually the verbs that connect the nouns. Not all relationships are this blatant, you may have to discover some on your own. The easiest way to see all possible relationships is to build a table with the entities across the columns and down the rows, and fill in those cells where a relationship exists between entities. 4.2.3 Draw Rough ERD Draw the entities and relationships that you have discovered. 4.2.4 Fill in Cardinality Determine the cardinality of the relationships. You may want to decide on cardinality when you are creating a relationship table. 4.2.5 Define Primary Keys Identify attribute(s) that uniquely identify each occurrence of that entity. 4.2.6 Draw Key-Based ERD Now add them (the primary key attributes) to your ERD. Revise your diagram to eliminate many-to-many relationships, and tag all foreign keys . 4.2.7 Identify Attributes Identify all entity characteristics relevant to the domain being analyzed. 4.2.8 Map Attributes Determine which to entity each characteristic belongs. Do not duplicate attributes across entities. If necessary, contain them in a new, related, entity. 4.2.9 Draw fully attributed ERD Now add these attributes. The diagram may need to be modified to accommodate necessary new entities. 4.2.10 Check Results Is the diagram a consistent and complete


View Full Document

Toronto CSC 340 - Practice Example

Documents in this Course
Scoping

Scoping

10 pages

Load more
Download Practice Example
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Practice Example and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Practice Example 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?