Chapter 2 Database System Design (part II)

Slides:



Advertisements
Similar presentations
Chapter 10: Designing Databases
Advertisements

Ch 12: Object-Oriented Analysis
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Analyzing system data: Class diagram Updated: October.
Systems development life cycle & development methodologies
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Object-oriented analysis (OOA) techniques are used to (1) study existing objects to see if they can be reused or adapted for new uses, and (2) define new.
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Chapter 14 (Web): Object-Oriented Data Modeling
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System sequence diagram Updated: 2014.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Database Design Chapter 2. Goal of all Information Systems  To add value –Reduce costs –Increase sales or revenue –Provide a competitive advantage.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
Jerry Post Copyright © 2013 DATABASE Database Management Systems Chapter 2 Database Design 1.
Based on G. Post, Database Management Systems University of Manitoba Asper School of Business 3500 DBMS Bob Travica Updated 2015 Chapter 1 Introduction.
Object Oriented Data Base. Traditional Data Models : Hierarchical, Network (since mid- 60’s), Relational (since 1970 and commercially since 1982) Object.
Modern Systems Analysis and Design Third Edition
Chapter 14: Object-Oriented Data Modeling
Chapter 2 Database System Design Based on G. Post, DBMS: Designing & Building Business Applications University of Manitoba Asper School of Business 3500.
1 Copyright © 2010 Jerry Post. All rights reserved. Database System Design IS240 – DBMS Lecture #3 – M. E. Kabay, PhD, CISSP-ISSMP Assoc. Prof.
Systems Analysis and Design in a Changing World, Tuesday, Feb 27
Systems Analysis and Design in a Changing World, Fifth Edition
MIS 327 Database Management system 1 MIS 327: DBMS Dr. Monther Tarawneh Dr. Monther Tarawneh Week 6: Database Design: Example Rolling Thunder.
1 Advanced Computer Programming Databases. Overview What is a database? Database Basics Database Components Data Models Normalization Database Design.
1 A Student Guide to Object- Orientated Systems Chapter 4 Objects and Classes: the basic concepts.
OBJECT AND CLASES: THE BASIC CONCEPTS Pertemuan 8 Matakuliah: Konsep object-oriented Tahun: 2009.
Chapter 4 Querying Based on G. Post, DBMS: Designing & Building Business Applications University of Manitoba Asper School of Business 3500 DBMS Bob Travica.
Chapter 8 Newer Database Topics Based on G. Post, DBMS: Designing & Building Business Applications University of Manitoba Asper School of Business 3500.
Database Design Sections 6 & 7 Second Normal Form (2NF), Unique Identifiers (UID), Third Normal Form (3NF), Arcs, Hierarchies and Recursive relationships.
1 Chapter 2 (Cont.) The BA’s Perspective on Object Orientation.
Conceptual Data Modeling. What Is a Conceptual Data Model? A detailed model that shows the overall structure of organizational data A detailed model.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
University of Manitoba Asper School of Business 3500 DBMS Bob Travica
An Introduction to Java Chapter 11 Object-Oriented Application Development: Part I.
R McFadyen Chapter 7 Conceptual Data Modeling.
DBSYSTEMS Chapter 3 Data Normalization Get data properly tabled! Based on G. Post, DBMS: Designing & Building Business Applications University of Manitoba.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 - Domain Classes.
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 Domain Classes.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
Unit 3 Conceptual Data Modeling. Key Concepts Conceptual data modeling process Classes and objects Attributes Identifiers, candidate keys, and primary.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
1 CSE 2337 Introduction to Data Management Textbook: Chapter 1.
Copyright © 2003 Addison-Wesley Sree Nilakanta. Copyright © 2003 Addison-Wesley Developing Relational Models What is the relational model and what is.
© 2007 by Prentice Hall1-1 Chapter 1 Introduction to Relational Database Systems and Oracle 10g Introduction to Oracle 10g James Perry and Gerald Post.
SYSTEMSDESIGNANALYSIS 1 Chapter 22 Object-Oriented Design Jerry Post Copyright © 1997.
Object-Oriented Data Modeling
ITEC 3220A Using and Designing Database Systems Instructor: Prof Z. Yang Course Website: 3220a.htm
Object Oriented Analysis: Associations. 2 Object Oriented Modeling BUAD/American University Class Relationships u Classes have relationships between each.
ITEC 3220A Using and Designing Database Systems Instructor: Gordon Turpin Course Website: Office: CSEB3020.
Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill/Irwin APPENDIX C DESIGNING DATABASES APPENDIX C DESIGNING DATABASES.
Chapter 4 Basic Object-Oriented Concepts. Chapter 4 Objectives Class vs. Object Attributes of a class Object relationships Class Methods (Operations)
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
CLASS DIAGRAMS A classy approach to objects. The Basic Class Diagram  Class Name  Attributes (- indicates private each would have properties or accessor/mutator.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
DATABASE MIS 327 Advanced Database 1. DATABASE 2 Objectives  Why are models important in designing systems?  How do you begin a database project? 
CH 10 DB Application Design n 10.1 Functions n 10.2 Case Application n 10.3 Creating, Reading, Updating, Deleting View n 10.4 Form Design n 10.5 Report.
Jerry Post Copyright © Database Management Systems Chapter 2 Database Design.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
5 Chapter 5: Modeling Systems Requirements: Events and Things Systems Analysis and Design in a Changing World.
Chapter 1 Introduction.
Object-Oriented Modeling
Business System Development
DATA REQIREMENT ANALYSIS
Database System Design
Lec 3: Object-Oriented Data Modeling
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
ITEC 3220A Using and Designing Database Systems
Presentation transcript:

Chapter 2 Database System Design (part II) University of Manitoba Asper School of Business 3500 DBMS Bob Travica Chapter 2 Database System Design (part II) Based on G. Post, DBMS: Designing & Building Business Applications Updated 2015 1

Special Associations: Aggregation Sale Item * contains * SaleID SaleDate EmployeeID ItemID Description listPrice Many-to-many relationship: Each sale transaction contains many items, and each item can be included in many sale transactions (provided items are keyed generically - ItemID identifies a sort of things). Item and Sale are loosely coupled. SaleID is the unique key (identifies one specific sale transaction), ItemA ItemB Note: This is called instance diagram and it might help you with visualizing multiplicity. Sale1 Sale2 ItemC

Special Associations: Composition (Part-Whole Relationship) Two ways of displaying composition: Wheel WheelID Rim Spoke … 2 part of Crank CrankID Weight Stem StemID Size Bicycle BicycleID Model Type 1 A Bicycle Size Model Type … Wheel Crank Stem B Association between the whole class (Bicycle) and part classes (Wheel, Crank and Stem). The whole class is composed from part classes—it does not exist without certain parts. Parts have purpose as the parts of a specific whole—they live and die with the whole. Therefore, part classes and whole class are tightly coupled. Typical use: Manufacturing, bill-of-materials

Generalization Animal AnimalID DateBorn Name Gender ListPrice Mammal LiiterSize TailLength Fish FreshWater ScaleCondition Spider Venomous Habitat {disjoint} is_a Is_a Association between the Superclass (Animal) and Sub-Classes (Mammal, Fish, Spider). Example: Modeling data on animals sold in a pet store. Superclass is parent class, and sub-class is the child class that inherits from parent. Generalization/Specialization resembles hierarchical classification schemes. Multiplicity is assumed: 1:1

Inheritance Concept from Object Orientated Approach Account AccountID CustomerID DateOpened CurrentBalance OpenAccount CloseAccount Class name Attributes Methods Class Encapsulation of Data Attributes Methods (Behavior) Inheritance Properties: Parent class (Super-class) and Sub-classes – inheriting attributes & methods Unique attributes and methods in sub-classes (all listed) Polymorphism (variation of parent’s methods in children) SavingsAccount InterestRate PayInterest CheckingAccount MinimumBalance Overdraft BillOverdraftFees CloseAccount Polymorphism

Class Diagram of Pet Store System Each animal keyed uniquely. Animal Customer Supplier Merchandise PurchaseOrder Sale Employee * 1 SaleItem MerchOrderItem Merchandise keyed generically. Note – differences from the textbook: Names of some classes modified. Association names not included. Some other slight modifications.

Pet Store Normalized Tables Diagram (Schema)

Data Types (Domains) Format of data and range of values. Access SQL Server Oracle Text fixed variable memo Memo char, nchar varchar, nvarchar text, ntext CHAR VARCHAR2,NVARCHAR2 LONG Number Byte (8 bits) Integer (16 bits) Long (32 bits) (64 bits) Fixed precision Float Double Cur rency Yes/No Byte Integer Long NA Currency tinyint smallint int bigint decimal(p,s) real float money bit INTEGER NUMBER(127,0) NUMBER(p,s) NUMBER, FLOAT NUMBER NUMBER(38,4) Date/Time datetime s malldatetime DATE Image OLE Object image LONG RAW, BLOB AutoNumber Identity rowguidcol SEQUENCES ROWID Common Type

{Age = Today’s Date - DateOfBirth} Computed Attributes Denote computed values. Written with a slash (/). Employee Name DateOfBirth /Age Phone … {Age = Today’s Date - DateOfBirth} Common example in business DB system: Sum=Item’s Sale Price * Quantity Sold

Events & Triggers+ + Discussion in the book somewhat confusing. Generate Standing Purchasing Order. Scroll down slides file. Change in time: ON (LastDayInMonth) Change in user interface: OnClickOfMouse Notify Purchasing Manager. Change in data: ON (QuantityOnHand < 100) Decrease Inventory count. Change in organization : Item is sold. Code (program) invoked by events.* Definition: Some change in organization, data, time, user interface invoking execution of certain code (programs). TRIGGER EVENT *In the general information systems vocabulary, triggers would make application software (application). But in the database systems vocabulary, “application” is usually used for designating a forms and reports working with a particular database. + Discussion in the book somewhat confusing.

Rolling Thunder Bicycles: Package View Sales Assembly Purchasing Location Bicycle Employee Package = A grouping of related elements to provide an overview of a database system. Each package typically has more classes. The way modern OO systems are designed and procured.

Rolling Thunder Bicycles: Sales Package Customer CustomerID Phone FirstName LastName Address ZipCode CityID BalanceDue Transaction TransactionDate EmployeeID Amount Description Reference Retail Store StoreID StoreName ContactFirstName ContactLastName Bicycle::Bicycle BicycleID … 1..1 0..* 0..1 From Bicycle package