Feb 18, 200291.3913 R McFadyen1 Feb 18, 2002 Review of some modeling concepts Introduction of Moment-Interval.

Slides:



Advertisements
Similar presentations
Object-oriented modeling Class/Object Diagrams
Advertisements

Ch5: ER Diagrams - Part 1 Much of the material presented in these slides was developed by Dr. Ramon Lawrence at the University of Iowa.
Copyright © 2015 Pearson Education, Inc. Database Design Chapters 17 and
Jan 23, Ron McFadyen1 SSD for a samplePOS Use Case Figure 13.1 Input Events invoke a system operation of the same name same idea as in object-oriented.
Jan 2003Ron McFadyen Generalization (Ch 26) a generalization is a relationship between a general thing (the superclass or parent class) and a.
Design Principles: Faithfulness
November R McFadyen1 Aggregation and Composition – section 27.2 both are associations used to denote that an object from one class is part.
January Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box.
1 Relationships Relationships will have justification in business rules, in the way the enterprise manages its business. The following figure illustrates.
Sequence Diagram Objects are represented horizontally across the top of the diagram Each object has a lifeline some exist before and/or after some are.
Jan 16, Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Iteration 1: a simple cash-only success scenario of Process Sale.
March Ron McFadyen1 Observer P Also known as Publish-Subscribe Applied in order to implement the Model-View Separation principle (see.
Design Principles: Faithfulness
Oct Ron McFadyen1 Ch 17: Use Case Realizations with GRASP Patterns P. 248: “The assignment of responsibilities and design of collaborations.
Fall 2009ACS-3913 Ron McFadyen1 Observer Problem: There are many objects (subscribers) needing to know of the state changes, or events, of another object.
Modeling Data The Entity Relationship Model (ER) For Database Design.
Jan 21, Ron McFadyen1 Domain Modeling Specification classes “need-to-know” associations Reflexive associations “association checklist”
Feb 4, Ron McFadyen1 Design Class Diagrams n Class diagram with – classes – associations – attributes – methods – navigability – (interfaces,
Feb Ron McFadyen1 Use Case Realizations with GRASP Patterns “The assignment of responsibilities and design of collaborations are very important.
Event Architectures & Design with Composition Elizabeth Bigelow CS C Computer Science Carnegie Mellon University October 9, 2000.
Lecture 3 :Database Analysis and Design (II)
1 Data Modelling Which data to include in the database.
Needles Powers Crosson Principles of Accounting 12e Supplement: Special-Purpose Journals 6 C H A P T E R © human/iStockphoto.
CSSE 374: Domain Model Refinements and Iteration 3 Preparations Q1 These slides and others derived from Shawn Bohner, Curt Clifton, Alex Lo, and others.
1. 2 Data Modeling 3 Process of creating a logical representation of the structure of the database The most important task in database development E-R.
Data Modeling with ER Diagrams What is an Entity-Relationship Model? How is an E-R model represented as an E-R diagram? How can a video store be modeled.
MIS 2502 Business Rules BJ’s is interested in developing a new application. The database will track product, customer, and sale information. It will.
Copyright © 2000, Department of Systems and Computer Engineering, Carleton University 1 Introduction Structures are somewhat like an array in that.
Module Title? Data Base Design 30/6/2007 Entity Relationship Diagrams (ERDs)
Principles of Database Systems With Internet and Java Applications Today’s Topic Chapter 2: Representing Information with Data Models The lecture notes.
DOMAIN MODEL— PART 2: ATTRIBUTES SYS466. Looking For Potential Classes “Know the business”. Ask Questions Identify business concepts; filter nouns (person,
R McFadyen Chapter 7 Conceptual Data Modeling.
Sept Ron McFadyen1 Section 10.1 Domain Models Domain Model: a visual representation of conceptual classes or real-world objects in a domain.
Association Class Generalization/Specialization Whole-Part Page More Associations 1.
0 Glencoe Accounting Unit 4 Chapter 14 Copyright © by The McGraw-Hill Companies, Inc. All rights reserved. The Operating Cycle of a Merchandising Business.
Implementing an REA Model in a Relational Database
Review ♦ System sequence diagram ♦ Domain model
Jan 21, Ron McFadyen1 Ch 10. Domain Model: Visualizing Concepts Domain model illustrated with a class diagram (with no operations defined)
INFO 620Lecture #81 Information Systems Analysis and Design Class Diagram Refinement INFO 620 Glenn Booker.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
Domain Model—Part 2: Attributes.  A logical data value of an object  (Text, p. 158)  In a domain model, attributes and their data types should be simple,
Object-Oriented Analysis and Design CHAPTERS 9, 31: DOMAIN MODELS 1.
Fall 2009ACS-3913 Ron McFadyen1 Use Case Realizations with GRASP Patterns “The assignment of responsibilities and design of collaborations are very important.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2A: Attributes.
January Ron McFadyen1 Domain Models Domain Model: a visual representation of conceptual classes or real-world objects in a domain of interest.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
Sept 2004Ron McFadyen Generalization (Ch 26) a generalization is a relationship between a general thing (the superclass or parent class) and a.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
Database Design Sections 8 & 12 Modeling Historical Data, conditional nontranferability, time-related constraints.
Phoenix Suns/DECA Workshop January 26, :30 pm – Senior Director of Marketing Workshop 7:00 pm – Phoenix Suns v. Charlotte – $44 – $59 – Free Gift.
Lecture 5 Entity Relationship Modeling
BTS430 Systems Analysis and Design using UML Domain Model—Part 3: Association Classes.
$1 Million $500,000 $250,000 $125,000 $64,000 $32,000 $16,000 $8,000 $4,000 $2,000 $1,000 $500 $300 $200 $100 Welcome.
1 CS 430 Database Theory Winter 2005 Lecture 3: A Fifty Minute Introduction to Data Modeling.
Jan 2005Ron McFadyen Qualified Associations ProductCatalogueProductDescription A one to many association can be altered in a diagram to a one.
DOMAIN MODEL—PART 2: ATTRIBUTES BTS430 Systems Analysis and Design using UML.
1 Object Oriented Analysis and Design System Events & Contracts.
Sept Ron McFadyen1 Include Relationship UC1:Process Sale … Main Success Scenario … 7. Customer pays and System handles payment. … Extensions.
Comp 1100 Entity-Relationship (ER) Model
Let try to identify the conectivity of these entity relationship
CSIS 115 Database Design and Applications for Business
MIS2502: Data Analytics Relational Data Modeling
Factless Facts: Occurrences of Relationships or Events
Retail Sales is used to illustrate a first dimensional model
Relationships Relationships will have justification in business rules, in the way the enterprise manages its business. The following figure illustrates.
Database Management system
a generalization is a relationship between a general thing (the
Page 37 Figure 2.3, with attributes excluded
Presentation transcript:

Feb 18, R McFadyen1 Feb 18, 2002 Review of some modeling concepts Introduction of Moment-Interval

Feb 18, R McFadyen2 Association Classes (Pages ) In a typical university: We have an Course class and a Student class. A Student enrolls in an Course and is eventually assigned a grade. A Student may enroll in several Courses. A Course will have many Students enrolled. Consider : StudentCourse ** Where is the student’s grade kept? We can’t keep it with Student … nor with Course

Feb 18, R McFadyen3 Association Classes StudentCourse ** Grade is considered an attribute that belongs to the association between a student and a course. If your model has a many-to-many association between two classes, then there will likely be a need for an association class Enrollment grade courseNum

Feb 18, R McFadyen4 Association Classes StudentCourse ** Enrollment grade Suppose we have 3 students taking one or two courses : courseNum studNum

Feb 18, R McFadyen5 Association Classes StudentCourse ** Now suppose we need to track these grades over several terms we need to know what grades a student received for a course that was repeated more than once. The above model doesn’t accommodate this - there are different approaches Enrollment grade courseNum studNum

Feb 18, R McFadyen6 Association Classes StudentCourse ** Associate a collection of Offerings with a course - each offering is associated with a particular time interval (in this case the time interval is duration of the term) Section 27.3 refers to a Moment-Interval archetype - a concept promoted by Peter Coad. The idea recognizes that some things that we need to track, either occur at a moment in time, or, they occur over an interval of time. Enrollment grade Offering courseNum term instructor studNum *

Feb 18, R McFadyen7 Moment-Interval archetype Coad would indicate these types of classes with the designation: >, and, they would be coloured: > Offering term instructor > Offering term instructor Colour makes these kinds of classes stand out in a diagram. Supposed to be pink

Feb 18, R McFadyen8 Association Class Student Offering ** Enrollment grade term instructor studNum 11 Wouldn’t this work too? (and there’s no association class) What’s different? This permits the same course and the same student to be related several times Enrollment is promoted to a full-fledged class There are two associations now, instead of one

Feb 18, R McFadyen9 Peter Coad & Moment-Interval > Student > Course * * > Enrollment grade courseNum studNum > Offering term courseNum instructor *

Feb 18, R McFadyen10 Peter Coad & Four Archetypes > PartyRole A role is a way of participation by a person, place, or thing. Instead of Person, Coad uses Party since it captures both person and organization. A Cashier accepts the payment An Instructor gives a mark A clerk processes the registration > ThingRole > PlaceRole

Feb 18, R McFadyen11 Peter Coad & Four Archetypes > PartyDescription A Description is a catalogue- entry-like description. It is a collection of values that apply again and again. > ThingDescription > PlaceDescription

Feb 18, R McFadyen12 Peter Coad & Four Archetypes > Party A Party, Place, or Thing is someone or something that plays different roles. A person might be both an employee and a customer. A Place might be both a retail outlet and a wholesale outlet. A Thing might play one role in a manufacturing process and a different role in a purchasing process > Thing > Place

Feb 18, R McFadyen13 Peter Coad & Four Archetypes > MomentInterval Something one works with and tracks for business or legal reasons, Something that occurs at a moment in time, or over an interval of time A sale is made at a moment in time A rental happens over an interval of time A reservation occurs over an interval of time

Feb 18, R McFadyen14 Peter Coad & Four Archetypes > PartyDescription > PlaceDescription > ThingDescription > PlaceRole > Place > PartyRole > Party > MomentInterval number date total... makeMomentInterval addDetail calcTotal... > ThingRole > Thing Coad calls this pattern the Domain Neutral Component

Feb 18, R McFadyen15 Peter Coad & Four Archetypes > ProductDescription > BusinessLocation > Customer Not all components must be there > Cashier > Payment > CashSale > CashSaleDetail * * * * * *

Feb 18, R McFadyen16 From the text A SalesLineItem is related to a ProductSpecification which is associated with a collection of ProductPrice Which class is the Moment-Interval?

Feb 18, R McFadyen17 Reflexive Associations (section 27.8) child parent Would an association class be of any use here?

Feb 18, R McFadyen18 Reflexive Associations Would an association class be of any use here? marries husband wife **