21. Document Component Design

Size: px
Start display at page:

Download "21. Document Component Design"

Transcription

1 Page 1 of Plan for Today's Lecture Methods for identifying aggregate components 21. Document Component Design Bob Glushko (glushko@sims.berkeley.edu) Document Engineering (IS 243) - 11 April 2005 Heuristic techniques for non-transactional document types Normalization techniques for transactional document types 2. Where We Are in the Document Engineering Approach We have now reached the point where we have captured the business rules and content components of the domain / document inventory in which we're working We have separated the Presentational, Structural and Content Components We have developed a conceptual model of our essential "atomic" content components (the "leaves" or the "pool") Now we have to organize the components so that we can reuse them when we assemble document models from them This often means rebuilding structures that we took apart in document analysis, but not always because what we want are "good" structures "Good" structures give us minimal redundancy and maximum reuse; these are obviously desirable goals but it can be difficult to achieve them in an objective and repeatable way 3. Analogy: The Furniture Factory Imagine you want to build a factory that makes "build-to-order" furniture You might start with a set of hand-crafted items of furniture like tables, chairs, desks and take them apart to see what pieces are needed to assemble them (ANALYSIS) Because you want to be able to make these items with reasonable quality but at less cost and at greater efficiency, you redesign the tables, chairs, and desks to use standard components (DESIGN FOR REUSE) You organize the components and the assembly lines in your factory to make it easy to locate the needed components when you get an order (ORGANIZE FOR REUSE) 4. The Concept Factory in Document Engineering Imagine you want to build a conceptual model of some domain You might start with a set of hand-crafted applications with printed or online data entry forms and take them apart to see what pieces of information each of them needs (ANALYSIS) Because you want the complete "enterprise model" for the domain that will be able to represent any application or

2 Page 2 of 17 form with reasonable quality but at less cost and at greater efficiency, you redesign the pieces of information identified in analysis to be more standard and context-free (DESIGN FOR REUSE) You organize the components to make it easy to locate the needed components when you build the specific contextualized model needed for an application or form (ORGANIZE FOR REUSE) 5. Aggregate Components It is reasonably easy to conceive of content components of two kinds: Atomic components that hold individual pieces of information Especially in transactional documents,where atomic components have a natural representation as primitive data types ("string," "Boolean," "date") or as datatypes that are derived from these by restriction Document components that assemble smaller components into the set of information needed to carry out a self-contained purposeful activity Especially in transactional contexts, where documents have a natural correspondence to some unit of work that initiates, records, or responds to a clearly-defined event Aggregate components are composed of atomic ones and are reused in the assembly of document components They are easier to identify in transactional contexts because they are often the key information that flows from one document to another (that's tautological... it's a transactional context because of the repetition or flow of information between related documents) "Address" or "Person" are obvious examples of aggregates composed of smaller ones Two key questions: How do we select and group atomic components into aggregates? How many aggregates should we create? 6. Components: A Reminder Components the units of content Any piece of information that has a unique label or identifier is a candidate component Any piece of information that is self-contained and comprehensible on its own is a candidate component A component is a logical unit, with no presentation implied; it may be organized structurally These definitions are very helpful for finding (aggregate) components in some types of documents but less so in others It depends on the presence of, and relationships with, the structural and presentational information

3 Page 3 of Home Blueprint

4 Page 4 of Engineering Compendium Typical Entry [left side of facing pages] 9. Engineering Compendium Typical Entry [right side of facing pages]

5 Page 5 of Recipe

6 Page 6 of Identifying Aggregate Components in Non-Transactional Documents [1]

7 Page 7 of 17 Aggregates are more elusive on the narrative end of the DTS because there are limits to the rigor with which components can be grouped into structures (There you go again... that's tautological... the reason that documents are non-transactional is because the context has too few constraints on how information components go together or are to be used) "Mixed content" models arise when there are few or weak constraints on where atomic components can appear Presentation often masks the atomic components in potential aggregates Structures are often based on conventions for organization and presentation than on semantic relationships But there will still generally be components that "go together" to form reusable structures And "going together" means different things for each set of components 12. Identifying Aggregate Components in Non-Transactional Documents [2] Aggregates can be created in two "bottom-up" ways that focus on the atomic components: By rebuilding or making explicit the structures that we took apart in document analysis But not all of them; we only want the "good" structures (Real) tables are usually "good" structures By creating structure in "blobs" of poorly structured information written in an overly narrative style (with mixed content at best) A more modular style for the information will increase its regularity and reusability; it will eliminate content that has little value to users and reinforce its use as "boilerplate" or via links A good document analyst can do this as you've seen... but only up to a point 13. Identifying Aggregate Components in Non-Transactional Documents [3] We also can identify aggregates via a kind of reverse engineering of the document models required or suggested by the context We call this core plus contextualization; think of it as factoring a set of related document models into the aggregates that are needed to assemble them Aggregates used by a lot of documents are core ones We'll discuss this technique in detail in a couple of lectures 14. A More Rigorous/Predictable Approach for Identifying Aggregates The heuristic and informal approach we just followed was called "document analysis" in the SGML/publishing/content management tradition

8 Page 8 of 17 But these techniques are shaped by the skill and biases of the document analyst; they don't yield uniform results and don't scale as XML becomes the modeling foundation for transactions and distributed applications / complex business processes If there is to be a discipline of Document Engineering, we need a more teachable and predictable modeling approach that is consistent with classical document analysis 15. Data Modeling Principles for Designing Content Components The more transactional our design situation is the more we can (and need) to apply additional rules or requirements that apply to "data-intensive" components Data Integrity the information must be correct Referential Integrity repeated data components (in an "information supply chain" or set of documents) must agree in values Identification Integrity the identify of data should be unambiguous These three principles embody the concept of Essentiality the model contains only the essential information with no duplication Relational Theory is the basis for identifying essential components 16. Relational Theory Mother of all data modeling approaches (Codd, 1970s; Date, 1980s) Relational theory gets its name from the fact it defines relations, two dimensional matrix views of data, which we know better as tables The focus of relational theory is Keys (essential data identification) - uniquely referencing structures - prevents identification integrity problems Functional Dependency (essential data aggregates) - aggregating data into logical groups or sets (or relations, tables, entities, object classes) - prevents referential integrity problems Normalization formal techniques for identifying and defining functional dependencies; yields a set of progressively more rigorous "normal forms" 17. The Concept of "Key" A Key uniquely identifies an instance in a set of content components Given a key value we could identify one, and only one, instance of a set of content components

9 Page 9 of 17 - examples: Student ID, Username, CourseID, Building number Candidate keys - both Student ID and Username may be keys to the same thing, Student Primary keys - not all Usernames are Students, so Student ID is the better (Primary) Key 18. Functional Dependency 'Recognizing functional dependency is an essential part of understanding the meaning or semantics of the data' Chris Date 1981 Functional dependency means that if the values of a set of components change when another component's value changes, then the former component is dependent on the latter. For each Person we identify, there is a different Address and DateOfBirth, which means that their values are functionally dependent on Person 19. First Normal Form The consolidated list of unique candidate components is equivalent to 1NF in relational theory Make all of the components discrete only take a single value in their set Remove repeating sets of data into their own (new) set Identify components that are keys For example, an Order may contain components for item descriptions, prices and quantities. Because there can be many repetitions of these components, we need to introduce a component like LineItem as an aggregate data set that contains them Now the model for Order is that it contains one of more unique LineItems (discrete with no repetition) 20. Second Normal Form 2NF separates all non-dependent components Split off into separate (new) sets any components that do not wholly depend on the entire key Focus on sets of components with composite keys For example, the Quantity depends on the precise LineItem on a specific Order. It applies only to this particular occurrence of a LineItem. In contrast, Description and Price may be the same each time They are not dependent on the LineItem (they more likely depend on a product catalogue that lists item descriptions and prices).

10 Page 10 of 17 2NF would separate these non-dependent components into their own set, possibly called Product or Item 21. Third Normal Form Ensure that all non-key components are independent of one another As for 2NF but for components that are not keys. For example, Order may contain a CustomerName and their AccountCode These non-key values may have some dependency on each other and should be separated into another set, e.g. Customer. 3NF also involves removing any derived or calculated components Also remove derived components - calculated from other components, or derived through logic from other values - they are a type of duplication through transitive dependency - examples: TotalAmount, NumberofItems, Discount% with DiscountAmount 22. Normalization Example: Model of Lecture Notes Assume we've analyzed my lecture notes to yield a set of candidate components We can represent a populated set of content components for a lecture in a single data set (as a table or "relation'") 23. Content View of a Lecture Slide

11 Page 11 of Candidate Components from Lecture Slide 25. Candidate Components as Relation

12 Page 12 of 17 If I taught the same lectures every year the content of my slides could be arranged like this Lots of redundancy here: we start by analyzing how Lecture number, Theme, Year of Creation, Author Name and Class Identifier repeat They repeat for each unique combination of Date of Presentation and Learning Material Theme That makes that combination the Primary Key for that set of information components 26. Identifying Repetition We can use keys to factor the original table into two tables with less redundancy The LECTURE table, which contains the content and has a primary key of Lecture number The PRESENTATION table, which specifies when the lecture was given 27. The LECTURE Table 28. The PRESENTATION Table The PRESENTATION table is joined to the LECTURE table by including its primary key (lecture number) as a foreign key 29. Repetition in PRESENTATION

13 Page 13 of 17 However, PRESENTATION still has repeating sets of values (Learning Material Number and Learning Material Description) so it is not yet in First Normal Form 30. The LEARNING MATERIAL Table We need to separate out these components into their own set, which we will call LEARNING MATERIAL - the Primary Key of LEARNING MATERIAL could be Learning Material Number 31. PRESENTATION in 1NF After extracting LEARNING MATERIAL from PRESENTATION it must include the Primary Key of LEARNING MATERIAL (Learning Material Number) as a Foreign Key PRESENTATION now consists only of keys 32. Repetition in LECTURE The set we called LECTURE still has repeating sets of values (Year of Creation, Author Name and Class Identifier ) We need to separate out these components into their own set, which we will call CLASS

14 Page 14 of 17 - the Primary Key of CLASS could be Class Identifier 33. LECTURE in 1NF The remaining components of LECTURE must now include the Primary Key of CLASS (Class Identifier) as a Foreign Key 34. Lecture Notes Second Normal Form In Second Normal Form we look at data sets with composite keys to ensure all components depend on the entire key In our model, only PRESENTATION has a composite key - but neither of the non-key components (Learning Material Number and Lecture number) are dependent on just Date of Presentation or just Learning Material Theme, they depend on both. So our model is already in Second Normal Form as well 35. Lecture Notes Third Normal Form In Third Normal Form we ensure that all non-key components are independent of one another In our model, only CLASS has more than one non-key component - but neither of the non-key components (Year of Creation, Author Name) are dependent on each other. An author could have other creative years and vice versa. So our model is also already in Third Normal Form as well 36. Normalized Model

15 Page 15 of Representations of Normalized Model - Primary Key Path

16 Page 16 of 17 The Primary Key Path shows how we can navigate among the relations / aggregates in the model 38. Representations of Normalized Models - UML Class Diagram Transform the model into a UML Class Diagram (data sets/tables become Object Classes, individual components become Attributes, Primary Key Paths become Associations)

17 Page 17 of For 13 April First report from team projects No new reading assigned

6. The Document Engineering Approach

6. The Document Engineering Approach 6. The Document Engineering Approach DE + IA (INFO 243) - 11 February 2008 Bob Glushko 1 of 40 Plan for Today's Class Modeling Methodologies The Document Engineering Approach 2 of 40 What Modeling Methodologies

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 6 Normalization of Database Tables

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 6 Normalization of Database Tables Database Systems: Design, Implementation, and Management Tenth Edition Chapter 6 Normalization of Database Tables Objectives In this chapter, students will learn: What normalization is and what role it

More information

Modeling Methods and Artifacts for Crossing the Data/Document Divide

Modeling Methods and Artifacts for Crossing the Data/Document Divide Page 1 of 15 Modeling Methods and Artifacts for Crossing the Data/Document Divide Keywords: Document Engineering, Modeling, Document Analysis, Data Modeling Robert Glushko Center for Document Engineering

More information

THE RELATIONAL DATABASE MODEL

THE RELATIONAL DATABASE MODEL THE RELATIONAL DATABASE MODEL Introduction to relational DB Basic Objects of relational model Properties of relation Representation of ER model to relation Keys Relational Integrity Rules Functional Dependencies

More information

Document Engineering

Document Engineering 1 of 44 3/4/2007 10:40 AM Document Engineering Strategic Computing and Communications Technology 12 March 2007 Bob Glushko glushko@ischool.berkeley.edu 2 of 44 3/4/2007 10:40 AM Plan for Today's Lecture

More information

Learning outcomes. On successful completion of this unit you will: 1. Understand data models and database technologies.

Learning outcomes. On successful completion of this unit you will: 1. Understand data models and database technologies. 2015-2016 Phil Smith Learning outcomes On successful completion of this unit you will: 1. Understand data models and database technologies. (Assignment 1) Recap and setting the scene Before we get to Normalisation

More information

Data Modeling: Beginning and Advanced HDT825 Five Days

Data Modeling: Beginning and Advanced HDT825 Five Days Five Days Prerequisites Students should have experience designing databases. Who Should Attend This course is targeted at database designers, data modelers, database analysts, and anyone else who needs

More information

Instructor: Craig Duckett. Lecture 04: Thursday, April 5, Relationships

Instructor: Craig Duckett. Lecture 04: Thursday, April 5, Relationships Instructor: Craig Duckett Lecture 04: Thursday, April 5, 2018 Relationships 1 Assignment 1 is due NEXT LECTURE 5, Tuesday, April 10 th in StudentTracker by MIDNIGHT MID-TERM EXAM is LECTURE 10, Tuesday,

More information

What is a Data Model?

What is a Data Model? What is a Data Model? Overview What is a Data Model? Review of some Basic Concepts in Data Modeling Benefits of Data Modeling Overview What is a Data Model? Review of some Basic Concepts in Data Modeling

More information

10. Documents and Data Models... and Modeling

10. Documents and Data Models... and Modeling 10. Documents and Data Models... and Modeling INFO 202-1 October 2008 Bob Glushko Plan for INFO Lecture #10 Modeling across the "Document Type Spectrum" Document models {and,or,vs} data models "Berkeley

More information

8) A top-to-bottom relationship among the items in a database is established by a

8) A top-to-bottom relationship among the items in a database is established by a MULTIPLE CHOICE QUESTIONS IN DBMS (unit-1 to unit-4) 1) ER model is used in phase a) conceptual database b) schema refinement c) physical refinement d) applications and security 2) The ER model is relevant

More information

UBL Library Content Methodology

UBL Library Content Methodology UBL Library Content Methodology The purpose of this document is two-fold: 1. To explain how we got to where we are with the UBL vocabulary, we felt it necessary to provide a background to the rationale

More information

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau Semantic Web Ontology Pattern Gerd Gröner, Matthias Thimm {groener,thimm}@uni-koblenz.de Institute for Web Science and Technologies (WeST) University of Koblenz-Landau July 18, 2013 Gerd Gröner, Matthias

More information

Technical Framework Supporting ebusiness Standards. Christian Huemer TMG Chair

Technical Framework Supporting ebusiness Standards. Christian Huemer TMG Chair Technical Framework Supporting ebusiness Standards Christian Huemer TMG Chair Requirements for interoperability between enterprises Which documents are exchanged between enterprises? Common definition

More information

SOME TYPES AND USES OF DATA MODELS

SOME TYPES AND USES OF DATA MODELS 3 SOME TYPES AND USES OF DATA MODELS CHAPTER OUTLINE 3.1 Different Types of Data Models 23 3.1.1 Physical Data Model 24 3.1.2 Logical Data Model 24 3.1.3 Conceptual Data Model 25 3.1.4 Canonical Data Model

More information

Data Management Lecture Outline 2 Part 2. Instructor: Trevor Nadeau

Data Management Lecture Outline 2 Part 2. Instructor: Trevor Nadeau Data Management Lecture Outline 2 Part 2 Instructor: Trevor Nadeau Data Entities, Attributes, and Items Entity: Things we store information about. (i.e. persons, places, objects, events, etc.) Have relationships

More information

Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No.

Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. # 3 Relational Model Hello everyone, we have been looking into

More information

Modern Systems Analysis and Design

Modern Systems Analysis and Design Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Designing Databases Learning Objectives Concisely define each of the following key database design terms:

More information

Database Foundations. 3-9 Validating Data Using Normalization. Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database Foundations. 3-9 Validating Data Using Normalization. Copyright 2015, Oracle and/or its affiliates. All rights reserved. Database Foundations 3-9 Roadmap Conceptual and Physical Data Models Business Rules Entities Attributes Unique Identifiers Relationships Validating Relationships Tracking Data Changes over Time Validating

More information

Lecture 03. Spring 2018 Borough of Manhattan Community College

Lecture 03. Spring 2018 Borough of Manhattan Community College Lecture 03 Spring 2018 Borough of Manhattan Community College 1 2 Outline 1. Brief History of the Relational Model 2. Terminology 3. Integrity Constraints 4. Views 3 History of the Relational Model The

More information

Chapter 2 Introduction to Relational Models

Chapter 2 Introduction to Relational Models CMSC 461, Database Management Systems Spring 2018 Chapter 2 Introduction to Relational Models These slides are based on Database System Concepts book and slides, 6th edition, and the 2009 CMSC 461 slides

More information

CS403- Database Management Systems Solved MCQS From Midterm Papers. CS403- Database Management Systems MIDTERM EXAMINATION - Spring 2010

CS403- Database Management Systems Solved MCQS From Midterm Papers. CS403- Database Management Systems MIDTERM EXAMINATION - Spring 2010 CS403- Database Management Systems Solved MCQS From Midterm Papers April 29,2012 MC100401285 Moaaz.pk@gmail.com Mc100401285@gmail.com PSMD01 CS403- Database Management Systems MIDTERM EXAMINATION - Spring

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

A STUDY OF OBJECT ORIENTED ANALYSIS AND DESIGN

A STUDY OF OBJECT ORIENTED ANALYSIS AND DESIGN A STUDY OF OBJECT ORIENTED ANALYSIS AND DESIGN GARJE RAKESH RAMESHRAO RESEARCH SCHOLAR, DEPT. OF COMPUTER SCIENCE CMJ UNIVERSITY, SHILLONG, MEGHALAYA INTRODUCTION Object-oriented Analysis and Design is

More information

20. Business Process Analysis (2)

20. Business Process Analysis (2) 20. Business Process Analysis (2) DE + IA (INFO 243) - 31 March 2008 Bob Glushko 1 of 38 3/31/2008 8:00 AM Plan for Today's Class Process Patterns at Different Levels in the "Abstraction Hierarchy" Control

More information

Relational Model. Rab Nawaz Jadoon DCS. Assistant Professor. Department of Computer Science. COMSATS IIT, Abbottabad Pakistan

Relational Model. Rab Nawaz Jadoon DCS. Assistant Professor. Department of Computer Science. COMSATS IIT, Abbottabad Pakistan Relational Model DCS COMSATS Institute of Information Technology Rab Nawaz Jadoon Assistant Professor COMSATS IIT, Abbottabad Pakistan Management Information Systems (MIS) Relational Model Relational Data

More information

Introduction to Relational Databases. Introduction to Relational Databases cont: Introduction to Relational Databases cont: Relational Data structure

Introduction to Relational Databases. Introduction to Relational Databases cont: Introduction to Relational Databases cont: Relational Data structure Databases databases Terminology of relational model Properties of database relations. Relational Keys. Meaning of entity integrity and referential integrity. Purpose and advantages of views. The relational

More information

The Open Group SOA Ontology Technical Standard. Clive Hatton

The Open Group SOA Ontology Technical Standard. Clive Hatton The Open Group SOA Ontology Technical Standard Clive Hatton The Open Group Releases SOA Ontology Standard To Increase SOA Adoption and Success Rates Ontology Fosters Common Understanding of SOA Concepts

More information

21. Business Process Analysis (3)

21. Business Process Analysis (3) 21. Business Process Analysis (3) DE + IA (INFO 243) - 2 April 2008 Bob Glushko 1 of 43 4/1/2008 3:34 PM Plan for Today's Class Business Transaction Patterns Business Signals Collaborations and Choreography

More information

Years ago many of us had high expectations for effective database systems to support our requirements analysis and management needs.

Years ago many of us had high expectations for effective database systems to support our requirements analysis and management needs. Years ago many of us had high expectations for effective database systems to support our requirements analysis and management needs. Many of us developed in-house systems because system engineering tools

More information

CS211 Lecture: Database Design

CS211 Lecture: Database Design CS211 Lecture: Database Design Objectives: last revised November 21, 2006 1. To introduce the anomalies that result from redundant storage of data 2. To introduce the notion of functional dependencies

More information

Database Normalization. (Olav Dæhli 2018)

Database Normalization. (Olav Dæhli 2018) Database Normalization (Olav Dæhli 2018) 1 What is normalization and why normalize? Normalization: A set of rules to decompose relations (tables) into smaller relations (tables), without loosing any data

More information

UNIT II Requirements Analysis and Specification & Software Design

UNIT II Requirements Analysis and Specification & Software Design UNIT II Requirements Analysis and Specification & Software Design Requirements Analysis and Specification Many projects fail: because they start implementing the system: without determining whether they

More information

Database Management System Prof. Partha Pratim Das Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

Database Management System Prof. Partha Pratim Das Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Database Management System Prof. Partha Pratim Das Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture - 19 Relational Database Design (Contd.) Welcome to module

More information

Design patterns of database models as storage systems for experimental information in solving research problems

Design patterns of database models as storage systems for experimental information in solving research problems Design patterns of database models as storage systems for experimental information in solving research problems D.E. Yablokov 1 1 Samara National Research University, 34 Moskovskoe Shosse, 443086, Samara,

More information

The Entity-Relationship Model (ER Model) - Part 2

The Entity-Relationship Model (ER Model) - Part 2 Lecture 4 The Entity-Relationship Model (ER Model) - Part 2 By Michael Hahsler Based on slides for CS145 Introduction to Databases (Stanford) Lecture 4 > Section 2 What you will learn about in this section

More information

Review for Exam 1 CS474 (Norton)

Review for Exam 1 CS474 (Norton) Review for Exam 1 CS474 (Norton) What is a Database? Properties of a database Stores data to derive information Data in a database is, in general: Integrated Shared Persistent Uses of Databases The Integrated

More information

Lecture 03. Fall 2017 Borough of Manhattan Community College

Lecture 03. Fall 2017 Borough of Manhattan Community College Lecture 03 Fall 2017 Borough of Manhattan Community College 1 2 Outline 1 Brief History of the Relational Model 2 Terminology 3 Integrity Constraints 4 Views 3 History of the Relational Model The Relational

More information

Relational model. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Relational model. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) Relational model Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) 2011-2016 Relational database model Data are represented as a mathematical relation (subset of cartesian product) of attribute domains

More information

! Define terms. ! Interpret history and role of SQL. ! Write single table queries using SQL. ! Establish referential integrity using SQL

! Define terms. ! Interpret history and role of SQL. ! Write single table queries using SQL. ! Establish referential integrity using SQL OBJECTIVES CHAPTER 6: INTRODUCTION TO SQL Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi! Define terms! Interpret history and role of SQL! Define a database using SQL

More information

Modeling Systems Using Design Patterns

Modeling Systems Using Design Patterns Modeling Systems Using Design Patterns Jaroslav JAKUBÍK Slovak University of Technology Faculty of Informatics and Information Technologies Ilkovičova 3, 842 16 Bratislava, Slovakia jakubik@fiit.stuba.sk

More information

New Trends That Can Change Our Role

New Trends That Can Change Our Role "Architecture" Architecture... what is it? Enterprise Architecture Some people think this is Architecture: New Trends That Can Change Our Role John A. Zachman Zachman International 2222 Foothill Blvd.

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) A process has a: 1) A) pronoun label B) noun phrase label C) verb phrase label D) adjective

More information

Normalization. Normal Forms. Normal Forms

Normalization. Normal Forms. Normal Forms Normalization A technique that organizes data attributes (or fields) such that they are grouped to form stable, flexible and adaptive entities. 5- Normal Forms First Normal Form (NF) There are no attributes

More information

DOWNLOAD PDF INSIDE RELATIONAL DATABASES

DOWNLOAD PDF INSIDE RELATIONAL DATABASES Chapter 1 : Inside Microsoft's Cosmos DB ZDNet Inside Relational Databases is an excellent introduction to the topic and a very good resource. I read the book cover to cover and found the authors' insights

More information

Software Reuse and Component-Based Software Engineering

Software Reuse and Component-Based Software Engineering Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering

More information

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query

More information

A practical introduction to database design

A practical introduction to database design A practical introduction to database design Dr. Chris Tomlinson Bioinformatics Data Science Group, Room 126, Sir Alexander Fleming Building chris.tomlinson@imperial.ac.uk Computer Skills Classes 17/01/19

More information

Efficiency Gains in Inbound Data Warehouse Feed Implementation

Efficiency Gains in Inbound Data Warehouse Feed Implementation Efficiency Gains in Inbound Data Warehouse Feed Implementation Simon Eligulashvili simon.e@gamma-sys.com Introduction The task of building a data warehouse with the objective of making it a long-term strategic

More information

CS403- Database Management Systems Solved Objective Midterm Papers For Preparation of Midterm Exam

CS403- Database Management Systems Solved Objective Midterm Papers For Preparation of Midterm Exam CS403- Database Management Systems Solved Objective Midterm Papers For Preparation of Midterm Exam Question No: 1 ( Marks: 1 ) - Please choose one Which of the following is NOT a feature of Context DFD?

More information

3. Information Organization {and,or,vs} Search

3. Information Organization {and,or,vs} Search 1 of 36 8/31/2006 3:14 PM 3. Information Organization {and,or,vs} Search IS 202-5 September 2006 Bob Glushko 2 of 36 8/31/2006 3:14 PM Plan for IO & IR Lecture #3 The Information Life Cycle "Search"!=

More information

Hippo Software BPMN and UML Training

Hippo Software BPMN and UML Training Hippo Software BPMN and UML Training Icon Key: www.hippo-software.co.uk Teaches theory concepts and notation Teaches practical use of Enterprise Architect Covers BPMN, UML, SysML, ArchiMate Includes paper

More information

6 February 2014 CSE-3421M Test #1 w/ answers p. 1 of 14. CSE-3421M Test #1. Design

6 February 2014 CSE-3421M Test #1 w/ answers p. 1 of 14. CSE-3421M Test #1. Design 6 February 2014 CSE-3421M Test #1 w/ answers p. 1 of 14 CSE-3421M Test #1 Design Sur / Last Name: Given / First Name: Student ID: Instructor: Parke Godfrey Exam Duration: 75 minutes Term: Winter 2014 Answer

More information

Chapter 3. Foundations of Business Intelligence: Databases and Information Management

Chapter 3. Foundations of Business Intelligence: Databases and Information Management Chapter 3 Foundations of Business Intelligence: Databases and Information Management THE DATA HIERARCHY TRADITIONAL FILE PROCESSING Organizing Data in a Traditional File Environment Problems with the traditional

More information

INDE499B: Information Systems Course Review Autumn 2000

INDE499B: Information Systems Course Review Autumn 2000 INDE499B: Information Systems Course Review Autumn 2000 WHAT did we cover? HOW did we cover it? WHY did we cover it? And the exam, what s on it INDE499B: Information Systems Course Review Autumn 2000 WHAT

More information

Systems Analysis & Design

Systems Analysis & Design Systems Analysis & Design Dr. Arif Sari Email: arif@arifsari.net Course Website: www.arifsari.net/courses/ Slide 1 Adapted from slides 2005 John Wiley & Sons, Inc. Slide 2 Course Textbook: Systems Analysis

More information

Chapter 3. The Relational database design

Chapter 3. The Relational database design Chapter 3 The Relational database design Chapter 3 - Objectives Terminology of relational model. How tables are used to represent data. Connection between mathematical relations and relations in the relational

More information

OO-Design. Steven R. Bagley

OO-Design. Steven R. Bagley OO-Design Steven R. Bagley Introduction Object-Oriented Design: Splitting problem into classes Techniques for breaking the problem down Applying those techniques in practice Object System OO Programs consists

More information

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU Process Modeling Based on Chapter 9 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007 Wei-Tsong Wang 1 IIM, NCKU 2 Models: Logical and

More information

Conceptual Design. The Entity-Relationship (ER) Model

Conceptual Design. The Entity-Relationship (ER) Model Conceptual Design. The Entity-Relationship (ER) Model CS430/630 Lecture 12 Slides based on Database Management Systems 3 rd ed, Ramakrishnan and Gehrke Database Design Overview Conceptual design The Entity-Relationship

More information

Chapter 3: The Relational Database Model

Chapter 3: The Relational Database Model Chapter 3: The Relational Database Model Student: 1. The practical significance of taking the logical view of a database is that it serves as a reminder of the simple file concept of data storage. 2. You

More information

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships. Q 1) Attempt all the following questions: (a) Define the term cohesion in the context of object oriented design of systems? (b) Do you need to develop all the views of the system? Justify your answer?

More information

Lecturer 2: Spatial Concepts and Data Models

Lecturer 2: Spatial Concepts and Data Models Lecturer 2: Spatial Concepts and Data Models 2.1 Introduction 2.2 Models of Spatial Information 2.3 Three-Step Database Design 2.4 Extending ER with Spatial Concepts 2.5 Summary Learning Objectives Learning

More information

Data about data is database Select correct option: True False Partially True None of the Above

Data about data is database Select correct option: True False Partially True None of the Above Within a table, each primary key value. is a minimal super key is always the first field in each table must be numeric must be unique Foreign Key is A field in a table that matches a key field in another

More information

DBMS. Relational Model. Module Title?

DBMS. Relational Model. Module Title? Relational Model Why Study the Relational Model? Most widely used model currently. DB2,, MySQL, Oracle, PostgreSQL, SQLServer, Note: some Legacy systems use older models e.g., IBM s IMS Object-oriented

More information

MySQL. A practical introduction to database design

MySQL. A practical introduction to database design MySQL A practical introduction to database design Dr. Chris Tomlinson Bioinformatics Data Science Group, Room 126, Sir Alexander Fleming Building chris.tomlinson@imperial.ac.uk Database Classes 24/09/18

More information

Software Engineering Lab Manual

Software Engineering Lab Manual Kingdom of Saudi Arabia Ministry Education Prince Sattam Bin Abdulaziz University College of Computer Engineering and Sciences Department of Computer Science Software Engineering Lab Manual 1 Background:-

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information

Design Engineering. Dr. Marouane Kessentini Department of Computer Science

Design Engineering. Dr. Marouane Kessentini Department of Computer Science Design Engineering Dr. Marouane Kessentini Department of Computer Science 1 Design Starts mostly from/with requirements (evolving mostly from functionalities and other non functional characteristics) How

More information

Relational Model. Courses B0B36DBS, A4B33DS, A7B36DBS: Database Systems. Lecture 02: Martin Svoboda

Relational Model. Courses B0B36DBS, A4B33DS, A7B36DBS: Database Systems. Lecture 02: Martin Svoboda Courses B0B36DBS, A4B33DS, A7B36DBS: Database Systems Lecture 02: Relational Model Martin Svoboda 28. 2. 2017 Faculty of Electrical Engineering, Czech Technical University in Prague Lecture Outline Logical

More information

Distributed Database Systems By Syed Bakhtawar Shah Abid Lecturer in Computer Science

Distributed Database Systems By Syed Bakhtawar Shah Abid Lecturer in Computer Science Distributed Database Systems By Syed Bakhtawar Shah Abid Lecturer in Computer Science 1 Distributed Database Systems Basic concepts and Definitions Data Collection of facts and figures concerning an object

More information

Lecture 14 of 42. E-R Diagrams, UML Notes: PS3 Notes, E-R Design. Thursday, 15 Feb 2007

Lecture 14 of 42. E-R Diagrams, UML Notes: PS3 Notes, E-R Design. Thursday, 15 Feb 2007 Lecture 14 of 42 E-R Diagrams, UML Notes: PS3 Notes, E-R Design Thursday, 15 February 2007 William H. Hsu Department of Computing and Information Sciences, KSU KSOL course page: http://snipurl.com/va60

More information

3. UML Class Diagrams Page 1 of 15

3. UML Class Diagrams Page 1 of 15 3. UML Class Diagrams Page 1 of 15 The UML Class Diagram: Part 1 In the last article, we saw what use cases were, and how to identify and create use cases. Taking the series ahead, in this article, we

More information

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 9 Process Modeling McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives Define systems modeling and differentiate logical and physical models. Define

More information

LAB 2 Notes. Conceptual Design ER. Logical DB Design (relational) Schema Refinement. Physical DD

LAB 2 Notes. Conceptual Design ER. Logical DB Design (relational) Schema Refinement. Physical DD LAB 2 Notes For students that were not present in the first lab TA Web page updated : http://www.cs.ucr.edu/~cs166/ Mailing list Signup: http://www.cs.ucr.edu/mailman/listinfo/cs166 The general idea of

More information

Category Theory in Ontology Research: Concrete Gain from an Abstract Approach

Category Theory in Ontology Research: Concrete Gain from an Abstract Approach Category Theory in Ontology Research: Concrete Gain from an Abstract Approach Markus Krötzsch Pascal Hitzler Marc Ehrig York Sure Institute AIFB, University of Karlsruhe, Germany; {mak,hitzler,ehrig,sure}@aifb.uni-karlsruhe.de

More information

Computational Foundations of Cognitive Science

Computational Foundations of Cognitive Science Computational Foundations of Cognitive Science Lecture 16: Models of Object Recognition Frank Keller School of Informatics University of Edinburgh keller@inf.ed.ac.uk February 23, 2010 Frank Keller Computational

More information

Lecture 1/2. Copyright 2007 STI - INNSBRUCK

Lecture 1/2. Copyright 2007 STI - INNSBRUCK Introduction to modeling MSc 2008/2009 009 Lecture 1/2 1 Copyright 2007 STI - INNSBRUCK www.sti-innsbruck.at Course overview Introduces modeling as a discipline within Computer Science and Engineering,

More information

Minsoo Ryu. College of Information and Communications Hanyang University.

Minsoo Ryu. College of Information and Communications Hanyang University. Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based

More information

Database Design Theory and Normalization. CS 377: Database Systems

Database Design Theory and Normalization. CS 377: Database Systems Database Design Theory and Normalization CS 377: Database Systems Recap: What Has Been Covered Lectures 1-2: Database Overview & Concepts Lecture 4: Representational Model (Relational Model) & Mapping

More information

Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition. Chapter 9 Normalizing Database Designs

Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition. Chapter 9 Normalizing Database Designs Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition Chapter 9 Normalizing Database Designs NORMALIZATION What is normalization? Normalization is a procedure that is

More information

Essay Question: Explain 4 different means by which constrains are represented in the Conceptual Data Model (CDM).

Essay Question: Explain 4 different means by which constrains are represented in the Conceptual Data Model (CDM). Question 1 Essay Question: Explain 4 different means by which constrains are represented in the Conceptual Data Model (CDM). By specifying participation conditions By specifying the degree of relationship

More information

Component-Based Software Engineering TIP

Component-Based Software Engineering TIP Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.

More information

POSTGRADUATE CERTIFICATE IN LEARNING & TEACHING - REGULATIONS

POSTGRADUATE CERTIFICATE IN LEARNING & TEACHING - REGULATIONS POSTGRADUATE CERTIFICATE IN LEARNING & TEACHING - REGULATIONS 1. The Postgraduate Certificate in Learning and Teaching (CILT) henceforth the Course - comprises two modules: an Introductory Certificate

More information

(ADVANCED) DATABASE SYSTEMS (DATABASE MANAGEMENTS) PROF. DR. HASAN HÜSEYİN BALIK (6 TH WEEK)

(ADVANCED) DATABASE SYSTEMS (DATABASE MANAGEMENTS) PROF. DR. HASAN HÜSEYİN BALIK (6 TH WEEK) (ADVANCED) DATABASE SYSTEMS (DATABASE MANAGEMENTS) PROF. DR. HASAN HÜSEYİN BALIK (6 TH WEEK) 4. OUTLINE 4. Implementation 4.1 Introduction to SQL 4.2 Advanced SQL 4.3 Database Application Development 4.4

More information

Systems Analysis and Design Methods Chapter 7: Data Modeling and Analysis

Systems Analysis and Design Methods Chapter 7: Data Modeling and Analysis Systems Analysis and Design Methods Chapter 7: Data Modeling and Analysis Multiple Choice Questions 1. Which of the following sentence is NOT correct about a logical model: A. is implementation dependent

More information

WP3 Technologies and methods for Web applications

WP3 Technologies and methods for Web applications WP3 Technologies and methods for Web applications Introduction The primary goal of work package WP3 - Technologies and methods for Web applications - is the definition, design, and implementation of the

More information

Objectives Definition iti of terms List five properties of relations State two properties of candidate keys Define first, second, and third normal for

Objectives Definition iti of terms List five properties of relations State two properties of candidate keys Define first, second, and third normal for Chapter 5: Logical Database Design and the Relational Model Modern Database Management 9 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Heikki Topi 2009 Pearson Education, Inc. Publishing as Prentice

More information

Analytics: Server Architect (Siebel 7.7)

Analytics: Server Architect (Siebel 7.7) Analytics: Server Architect (Siebel 7.7) Student Guide June 2005 Part # 10PO2-ASAS-07710 D44608GC10 Edition 1.0 D44917 Copyright 2005, 2006, Oracle. All rights reserved. Disclaimer This document contains

More information

Fuente. conceptual data modelling model

Fuente. conceptual data modelling model 1. Class Definition 1.1. Fuente. KULeuvenX: UMLx UML Class Diagrams for Software Engineering (Copia Textual - Literature Review). 1.1.1. UML Class Diagrams for Software Engineering 1.1.2. Welcome 1.1.3.

More information

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process

More information

Volume

Volume Volume Volume is a measure of how much space a three-dimensional object takes up. Area only looked at surface; we counted how many little flat squares could fit on a surface. Volume measures how many 1

More information

Introduction to Database. Dr Simon Jones Thanks to Mariam Mohaideen

Introduction to Database. Dr Simon Jones Thanks to Mariam Mohaideen Introduction to Database Dr Simon Jones simon.jones@nyumc.org Thanks to Mariam Mohaideen Today database theory Key learning outcome - is to understand data normalization Thursday, 19 November Introduction

More information

DBMS Chapter Three IS304. Database Normalization-Comp.

DBMS Chapter Three IS304. Database Normalization-Comp. Database Normalization-Comp. Contents 4. Boyce Codd Normal Form (BCNF) 5. Fourth Normal Form (4NF) 6. Fifth Normal Form (5NF) 7. Sixth Normal Form (6NF) 1 4. Boyce Codd Normal Form (BCNF) In the first

More information

Relational Database Components

Relational Database Components Relational Database Components Chapter 2 Class 01: Relational Database Components 1 Class 01: Relational Database Components 2 Conceptual Database Design Components Class 01: Relational Database Components

More information

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2)

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2) SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay Lecture #10 Process Modelling DFD, Function Decomp (Part 2) Let us continue with the data modeling topic. So far we have seen

More information

High-Level Database Models (ii)

High-Level Database Models (ii) ICS 321 Spring 2011 High-Level Database Models (ii) Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 1 Logical DB Design: ER to Relational Entity sets to

More information

Detailed Data Modelling. Detailed Data Modelling. Detailed Data Modelling. Identifying Attributes. Attributes

Detailed Data Modelling. Detailed Data Modelling. Detailed Data Modelling. Identifying Attributes. Attributes IMS1002 /CSE1205 Systems Analysis and Design Detailed Data Modelling The objective of detailed data modelling is to develop a detailed data structure that: Detailed Data Modelling: Attribute Collection

More information