COVENTRY UNIVERSITY. A.L.L. Project 3. Database Project. Jordan Bignell, Robert Bowry, Muhammed Abba Ismail, Emmanuel Idowu.

Size: px
Start display at page:

Download "COVENTRY UNIVERSITY. A.L.L. Project 3. Database Project. Jordan Bignell, Robert Bowry, Muhammed Abba Ismail, Emmanuel Idowu."

Transcription

1 Project III for A.L.L. COVENTRY UNIVERSITY A.L.L. Project 3 Database Project Jordan Bignell, Robert Bowry, Muhammed Abba Ismail, Emmanuel Idowu 7 th March 2015 Contribution to the A.L.L. Project 3 Report Page 0 By Robert, Ismail, Jordan and Emmanuel

2 Contents Introduction P2 Project Plan P3 Entity Relationship Diagram P4 Class Diagram P5 Use Case Diagram P6 Research P7 to P9 Selected Service Catalogue P10 ITIL Report P11 to P12 Normalization to 3 rd Normal Form P13 SQL+ Database P14 to P21 Copy Of Python Code P22 to P27 References P28 1

3 Introduction As a business Intelligence Company, we need to use CSI (Continual Service Improvement) which is one of the packages contained within the 3 rd version of ITIL, to help improve our service by highlighting the current problem will face and then find solution for said problem. The solution to this problem will be for us to create a database using an ORM (Object Relational Mapper) such as SQL+ that will allow us to build said database. Once we have the database created, we need to create a class for each table and them implement them into Python and create a piece of test code that will; A, enable us to connected to the database and B, enable us to pull data from SQL and display it in Python. In addition to the code, we will also be creating an ERD (Entity Relationship Diagram) as well as a class diagram to help us plan out our database and python test code. Along with this we will also be doing research into SQL, NOSQL and ORM. Contributions: Introduction All GANTT chart, ER Diagram, Class Diagram, Two Python Classes, Python Quire, ITIL Report Ismail Research Jordan (+1 Python Class and Use Case Diagram) and Emmanuel (+1 Python Class) Service Catalogue All GANNT chat, Use Case Diagram, ITIL Report, SQL+ Database, Two Python Classes, Normalization to 3 rd normal form Report edited by Jordan, finalized by Robert and Ismail. 2

4 Project Plan In addition to the project plan we created, we also used WhatsApp for communication and Podio to store our document; helping us to keep organized throughout the project. 3

5 Entity Relationship Diagram PK ID Client First name Last name Address Contact number PK PK Project Project ID Client ID FK Name Start date/time End date/time PK PK PK PK Work packages Work packages ID Document Id FK Employee ID FK Project ID FK Start time End time Projected Cost Actual Cost PK Documentation Documentation ID Document name Document Type Document Status Employees PK Employees ID First Name Last Name Address Contact Number Employee Role PK PK Employee ID FK Role ID Role name Charging Rate 4

6 Class Diagram 5

7 Use Case Diagram 6

8 Normalizing Tables Database normalization organizes the attributes and tables within the relational database to minimize the complexity and data redundancy. One example of normalization could be removing data that has been stored duplicate times in one table. This cuts down the size of the tables. In addition to this, you typically have 0NF, 1NF, 2NF and then 3NF (NF standing for Normal Form). As you go along each form, you are creating a more suitable and streamlined database No SQL The no SQL attempts to look and solve the scalability and big data performance issues that the relational databases were not designed to address. No SQL is mainly useful for large packs of unstructured data that is stored on multiple servers. Types of NoSQL Databases: Key Value Store This is one of the least complexes NoSQL. Key value store data in a schema less way (which means it doesn t have a fixed representation and you copy and paste into it) Column Store storing data tables as columns of data instead of rows of data. This allows high performance and highly scalable architecture Document Database is an expansion of key value store in which each document I s given a unique key which can be used to retrieve the data at a later time Graph Database this is for data that is presented as a graph but must have elements which are connected 7

9 Data model Performance Scalabilit y Flexibility Complexity Functionality Key-value store High High High None Variable (None) Column Store High High Moderate Low Minimal Document Store High Variable (High) High Low Variable (Low) Graph Database Variable Variable High High Graph Theory Reasons businesses use NoSQL database Most businesses tend to embrace the NoSQL database over SQL for various reasons as it provides them with competitive advantage in countless industries one being continuous data availability when a company experiences downtime it could ruin their reputation as well as result in loss of customers. The setup of NoSQL Other reasons to use a NoSQL Database The ability to store and retrieve great quantities of data Storing relationships between the elements is not important Dealing with growing lists of elements Twitter posts, internet server logs, Blogs The data is not structured or the structure changes with time Prototypes or fast applications need to be developed Constraints and Validations logic is not required to be implemented in database 8

10 SQL SQL is used as a standard language for a relational database management system. Also SQL is known as Structured Query Language. It communicates with the database. SQL is mainly designed for Managing, sorting and organizing the data stored within the relational database management system (RDSMS). Programs for SQL are implemented by businesses and other companies as an alternative way to access and manipulate the information and data stored in their databases. Small businesses will find a cheap way to manage their data such as Microsoft excel, however as the business populates they will eventually have to change the database to cope with the capacity of data incoming. Therefore, businesses will have to use Database management systems to organize the data. ORM Object Relational Mapping is abbreviated to ORM. It is a technique of entering a relational database from an OO (Object Oriented) language. An example of an OO language the ORM would access could be Java. ORM is used for sitting on top of a database abstraction layer (DBAL). This is an alternative to SQL as it is flexible as is does not require the duplication of code. 9

11 Selected Service Catalogue 10

12 ITIL: Continual Service Improvement Model Our Business: We are a business intelligence company that provides a wide range and variety of financial data to our clients. Using an API that is connected to the data sources we have created, it would enable our clients to access all of the information that they required and although our API works well, there is always room for improvement which is why we are always looking CSI (continual service improvement) so that we are always looking at ways in which we can improve our service as well as the experience for our clients. What is the vision? Our vision as a business intelligence company is to use a data-analysis tool which we will provide that will allow our clients to access the relevant and accurate information within a chosen financial sector; the information will be gathered by our organization. Where are we now? Currently, we have collected relevant and accurate financial data from a specific chosen sector; this sector being the automotive industry. Once we had created our data sources using the information we had previously gathered, we then moved on to create our dataanalysis tool (an API) that would allow our clients to view specific data. For example, using the API tool they would be able to access the following; DR Return On Capital Employed Opening Stock Purchases Closing Stock Gross Profit CR Gross Profit Margin Sales Net Profit Net Profit Margin Bad Debt Where do we want to be? Now that we have created the API and are now available to our clients, we now want to ensure that when our clients are using our data-analysis tool that our API is fast and efficient. In addition to this, we also want to be able to store our clients data to ensure that 11

13 if they lose their client data and want to use our service again, we shall have a record of their data stored; enabling us to negate past going through the entire cycle again. How do we get there? For our business to be able to achieve the goals/targets we have set ourselves, we will need to create an API that allows our clients to quickly gather and view specific information from our chosen financial sector. To make sure that our API is able to store all of our client s information as well as being able to calculate different financial ratios such as the ones mentioned before. In addition to this, to ensure that our data is both relevant and accurate we will employ a team of data-analyst that will go through each record to ensure that it is suitable for our client. Did we get there? Unfortunately, we were not able to achieve the targets/goals because of several reasons. The first reason being is that the API we created was very slow in both gathering and displaying the data to our clients; whiling not being able to store our clients information as well. Moreover, the second reason as to why we were not able to get achieve our goals/targets was because the initial employee we hired to create and maintain our API has departed. In addition to this, because of the high amount of data we had to handle for our clients, some of this data was lost and overall impacted the quality of our service that we were providing to our clients. Solution In order to fix these problems that we have highlighted, we have now employed a team of people who have had experience with using databases. Once employed, we are now currently training the group of employees on how to create a database as well as how to maintain one and how to manage it. The reason why we have done this is because by creating a database, we will be able to save all of our client s data as well as being able to efficiently and quickly access all of the data stored within it; also allowing our data-analysts to easily manage large volumes of data In addition to this, as a business we can also look at the seven step improvement process that will help as measure whether the goals we want to achieve are long-term, short-term or day-to-day. 12

14 Normalizing to 3 rd Normal Form 13

15 SQL+ SQL Database Since I have already created my tables and inserted my data, below I will be showing print screens of how I have created by tables as well as how I have inserted my table. 14

16 In order to add our foreign keys into our table, we had to use the following statement: 15

17 The print screen above shows the six tables we have created within SQL for our Database. Below we will be evidencing our database outputting different information regarding to the quires we have been given in our brief. 16

18 List of All Records in Each Table: Displayed above is all of the records within both the Client and Project table. 17

19 18

20 Displayed above is all of the records within the Work-Packages and Employees Table. 19

21 Displayed above is all of the records for both the Documentation and Employee-Roles table Total cost of Actual Cost for a Work Package in a given month: Displayed above shows both the work package ID and the actual costs for the work packages within a month. The work package ID represents the work package name and highlighted next to it is the actual cost for that work package within a given month. For example, for Work package 5, the actual cost was 3300 for the month. The print screen to the left of this text, displays the second quire from the brief. First of all, we can see the Project ID and the Projected Costs for that project. Since the projected costs are on a monthly basis, we then have to multiply whatever figure we have by 12 which will give us the answer to the following quire: Total Projected Cost for a Project in a year 20

22 List of Employees and their Assigned Project Name: These two print screens represent the Project Name and who has been assigned to it. To explain this, we look at the Project ID and the Employee ID. The project ID corresponds to the employee ID. This was intended when creating the database since (for example) if Warren Peace as their employee ID of 2, which relates to project ID 2, we can see that project ID 2 has an assigned name of Project, 2. Therefore, my viewing the ID s of the projects and employees, we can see who exactly has been assigned to which project. 21

23 Copy of the Python Code: ############ Connection to the DataBase ############ from sqlalchemy import Table, MetaData, Column, Integer, String, ForeignKey from sqlalchemy.orm import mapper from sqlalchemy import create_engine engine = create_engine("oracle://bowryr:grey.wolf101@dbacad.services.coventry.ac.uk:1521/eclive.coventry.ac.uk") metadata = MetaData() ############ Client Table ############ Robert Client_Table('client', metadata, Column('clientId', Integer, primary_key=true), Column('lastName', String(38)), Column('firstName', String(38)), Column('address', String(38)), Column('contactNum', Integer) ) clientid = select clientid from Client class Client(object): def init (self, clientid, lastname, firstname, address, contactnum): self.clientid = clientid self.lastname = lastname self.firstname = firstname self.address = address self.contactnum = contactnum def get(self): return client. init () 22

24 mapper(client, client) ############ Project Table ############ Robert Project_Table('project', metadata, Column('client_clientId', Integer, ForeignKey('Client.clientId')), Column('projectId', Integer, primary_key=true), Column('projectName', String(38)), Column('startDate', Integer), Column('endDate', Integer), ) projectid = select projectid from Project class Project(object): def init (self, clientid, projectid, projectname, startdate, enddate): self.clientid = clientid self.projectid = projecid self.projectname = projectname self.startdate = startdate self.enddate = enddate def get(self): return project. init () mapper(project, project) ############ WorkPackages Table ############ Ismail Workpackages_Table('workpackages', metadata, Column('workpackageId', Integer, primary_key=true), Column('Employees_employeeId', Integer, ForeignKey('Employees.employeeId')), 23

25 Column('Project_projectId', Integer, ForeignKey('Project.projectId')), Column('Documentation_documentationId', Integer, ForeignKey('Documentation.documentationId')), ) Column('time', Integer), Column('projectedCosts', Integer), Column('actualCosts', Integer) class workpackages(object): def init (self,workpackagesid,employeeid, projectid, documentid, time, projectedcost, actualcost): self.workpackageid = workpackagesid self.employeeid = employeeid self.projectid = projectid self.documentationid = documentationid self.time = time self.projectedcosts = projectedcosts self.actualcosts = actualcosts def get(self): return workpackages. init () mapper(workpackages, workpackages) ############ Employees Table ############ Ismail Employees_Table('employees', metadata, Column('employeeId', Integer, primary_key=true), Column('employeeRoles_roleId', Interger, ForeignKey('EmployeeRoles.roleId')), Column('lastName', String(38)), Column('firstName', String(38)), 24

26 Column('address', String(38)) Column('contactNumber', Integer) ) employeeid = select employeeid from Employees class employees(object): def init (self,employeeid,lastname,firstname,address,contactnumber): self.employeeid = employeesid self.lastname = lastname self.firstname = firstname self.address = address self.contactnumber = contactnumber def get(self): return employees. init () mapper(employees, employees) ############ EmployeeRoles Table ############ Jordan Employeeroles = Table('employeeRoles', metadata, Column ('employeelastname', String(38)), Column ('employeefirstname', String(38)), Column ('roleid', Integer(38), PrimaryKey,('roleId')), Column ('nameofrole', String(38)), COlumn ('chargingrate', Integer) ) class employeeroles (object): def init (self,employeeroles,employeelastname,employeefirstname,roleid,nameofrole,chargingrate): 25

27 self.employeelastname = employeelastname self.employeefirstname = employeefirstname self.roleid = roleid self.nameofrole = nameofrole slef.chargingrate = chargingrate def get(self): return employeeroles. init () mapper(employeeroles, employeeroles) ############ Documentation Table ############ Emmanuel Documentation = Table('documentation', metadata, Column ('documentationid', Integer, PrimaryKey,('documentationId')), Column ('documentname', String(38)), Column ('typeofdocument', String(38), Column ('statusofdocument', String(38)), ) class documentation (object): def init (self,doucmentationid, documentname, typeofdocument, statusofdocument): self.documentationid = documentationid self.documentname = documentname self.typeofdocument = typeofdocument self.statusofdocument = statusofdocument def get(self): return documentation. init () mapper(documentation, documentation) 26

28 # conn controls the span of connection, while the transaction holds the select statement which prints all the rows from the tables in the database. conn = engine.connect() trans = conn.begin() conn.execute("select * from Client") conn.execute("select * from Project") conn.execute("select * from Work Packages") conn.execute("select * from Employee") conn.execute("select * from Employee Roles") conn.execute("select * from Documentation") conn.fetchall() trans.commit() conn.close() 27

29 References Margaret Rouse. (2014). NoSQL (Not Only SQL database) definitionavailable: Only-SQL. Last accessed 07/03/2015. Carry Janssen. (N/A). Object-Relational Mapping (ORM). Available: Last accessed 07/03/2015 N/A. (N/A). NOSQL DATABASES EXPLAINED. Available: Last accessed 07/03/2015 N/A. (N/A). SQL. Available: Last accessed 07/03/2015. Margaret Rouse. (N/A). SQL (Structured Query Language) definition. Available: Last accessed 07/03/2015. Steve Pailthorpe. (2014). Practical Advice from the Experts in Business Technology. Available: Last accessed 07/03/2015. N/A. (2015). ITIL - Introducing Continual Service Improvement (Online). Available: TIL_Introducing%20Continual%20Service%20Improv%20pdf/. Last accessed 07/03/

Introduction to MS Access: creating tables, keys, and relationships

Introduction to MS Access: creating tables, keys, and relationships Introduction to MS Access: creating tables, keys, and relationships BSAD 141 Dave Novak Topics Covered Brief introduction to MS Access Name and save a DB file Create tables and keys Create and enforce

More information

SQL Server 2008 Tutorial 3: Database Creation

SQL Server 2008 Tutorial 3: Database Creation SQL Server 2008 Tutorial 3: Database Creation IT 5101 Introduction to Database Systems J.G. Zheng Fall 2011 DDL Action in SQL Server Creating and modifying structures using the graphical interface Table

More information

Construction and Real Estate. Improve system performance and data security with SQL Server

Construction and Real Estate. Improve system performance and data security with SQL Server Construction and Real Estate Improve system performance and data security with SQL Server Sage Impact 2 3 Improve system performance and data security with SQL Server 3 What is Microsoft SQL Server? 3

More information

Tutorial. Creating ERDs Using

Tutorial. Creating ERDs Using Tutorial Creating ERDs Using Microsoft Visio 2007 Sandra Dyke, 2009 Visio 2007 Tutorial: Creating ERDs Contents Page Using Visio to Create ERDs... 1 Let s Get Started... 3 Changing the Relationship to

More information

The Relational Model

The Relational Model The Relational Model What is the Relational Model Relations Domain Constraints SQL Integrity Constraints Translating an ER diagram to the Relational Model and SQL Views A relational database consists

More information

GuruFocus User Manual: The FilingWiz

GuruFocus User Manual: The FilingWiz GuruFocus User Manual: The FilingWiz Contents 0. Introduction to FilingWiz a. Brief overview b. Access 1. The Search Query Toolbox 2. The Search Results Column 3. The Highlights Column a. Highlights tab

More information

Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition. Chapter 7 Data Modeling with Entity Relationship Diagrams

Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition. Chapter 7 Data Modeling with Entity Relationship Diagrams Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition Chapter 7 Data Modeling with Entity Relationship Diagrams Objectives In this chapter, students will learn: The

More information

Consistency The DBMS must ensure the database will always be in a consistent state. Whenever data is modified, the database will change from one

Consistency The DBMS must ensure the database will always be in a consistent state. Whenever data is modified, the database will change from one Data Management We start our studies of Computer Science with the problem of data storage and organization. Nowadays, we are inundated by data from all over. To name a few data sources in our lives, we

More information

Report Templates in Action Webinar Questions

Report Templates in Action Webinar Questions Report Templates in Action Webinar Questions How do we add an Excel spreadsheet and link it into a report template? You can copy and paste information from Excel into blank text blocks in your Xero templates

More information

I. Introduction A. Client Description B. Product Vision II. Requirements III. System Architecture... 5

I. Introduction A. Client Description B. Product Vision II. Requirements III. System Architecture... 5 Madalyn Gort and Annalee Halbert Ecocion, Inc. Project Management System June 17, 2014 Contents I. Introduction... 2 A. Client Description... 2 B. Product Vision... 2 II. Requirements... 3 III. System

More information

Test bank for accounting information systems 1st edition by richardson chang and smith

Test bank for accounting information systems 1st edition by richardson chang and smith Test bank for accounting information systems 1st edition by richardson chang and smith Chapter 04 Relational Databases and Enterprise Systems True / False Questions 1. Three types of data models used today

More information

GlobAl EDITION. Database Concepts SEVENTH EDITION. David M. Kroenke David J. Auer

GlobAl EDITION. Database Concepts SEVENTH EDITION. David M. Kroenke David J. Auer GlobAl EDITION Database Concepts SEVENTH EDITION David M. Kroenke David J. Auer This page is intentionally left blank. Chapter 3 Structured Query Language 157 the comment. We will use similar comments

More information

R O I C a s e S t u d i e s

R O I C a s e S t u d i e s HIGHLIGHTS Goal: For Hypermedia to increase the capacity and scalability of the dark fiber connecting its three data centers in Los Angeles. Solution: A comprehensive Fujitsu solution, including the FLASHWAVE

More information

Database Design. 9-2 Basic Mapping: The Transformation Process. Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database Design. 9-2 Basic Mapping: The Transformation Process. Copyright 2015, Oracle and/or its affiliates. All rights reserved. Database Design 9-2 Objectives This lesson covers the following objectives: Distinguish between a conceptual model and a physical model Apply terminology mapping between the two models Understand and apply

More information

Database Tables Lookup Wizard Relationships Forms Subforms Queries Reports

Database Tables Lookup Wizard Relationships Forms Subforms Queries Reports Version 07/11/09 Microsoft Office 2007 PDF Picture Tutorial Series Databases Tables, Forms, Subforms, and the Lookup Wizard May 2009 by Floyd Jay Winters and Julie Manchester winterf@mccfl.edu Database

More information

Basic Mapping: The Transformation Process. Copyright 2011, Oracle. All rights reserved.

Basic Mapping: The Transformation Process. Copyright 2011, Oracle. All rights reserved. Basic Mapping: The Transformation Process Copyright 2011, Oracle. All rights reserved. What Will I Learn? Objectives In this lesson, you will learn to: Distinguish entity relationship models from database

More information

Metabase Metadata Management System Data Interoperability Need and Solution Characteristics

Metabase Metadata Management System Data Interoperability Need and Solution Characteristics Metabase Metadata Management System Data Interoperability and 2008 Althea Lane Bowie, Maryland 20716 Tele: 301-249-1142 Email: Whitemarsh@wiscorp.com Web: www.wiscorp.com : Interoperable business information

More information

COIT20248: Information Systems Analysis and Design Term 2, 2015 Assignment 2. Lecturer: Dr. Meena Jha Tutor: Aries Tao

COIT20248: Information Systems Analysis and Design Term 2, 2015 Assignment 2. Lecturer: Dr. Meena Jha Tutor: Aries Tao COIT20248: Information Systems Analysis and Design Term 2, 2015 Assignment 2 Lecturer: Dr. Meena Jha Tutor: Aries Tao Prepared by: AXXXX XXXX: S0XXXXXX AXXXX MXXXXX: BisXXXXX BaXXXX: S0XXXXX S02XXXX SXXXXX

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

File Processing Approaches

File Processing Approaches Relational Database Basics Review Overview Database approach Database system Relational model File Processing Approaches Based on file systems Data are recorded in various types of files organized in folders

More information

Logical Database Design. ICT285 Databases: Topic 06

Logical Database Design. ICT285 Databases: Topic 06 Logical Database Design ICT285 Databases: Topic 06 1. What is Logical Database Design? Why bother? Bad logical database design results in bad physical database design, and generally results in poor database

More information

Dr. Michael Curry. Oregon. The Big Picture: SQL Overview and Getting the Most from SQL Saturday

Dr. Michael Curry. Oregon. The Big Picture: SQL Overview and Getting the Most from SQL Saturday Dr. Michael Curry michael.curry@wsu.edu Oregon The Big Picture: SQL Overview and Getting the Most from SQL Saturday Academic Data Management E-Commerce Entrepreneurship Dr. Michael Curry /michaellcurry/

More information

CSE 308. Database Issues. Goals. Separate the application code from the database

CSE 308. Database Issues. Goals. Separate the application code from the database CSE 308 Database Issues The following databases are created with password as changeit anticyber cyber cedar dogwood elm clan Goals Separate the application code from the database Encourages you to think

More information

Using a Web Services Transformation to Get Employee Details from Workday

Using a Web Services Transformation to Get Employee Details from Workday Using a Web Services Transformation to Get Employee Details from Workday Copyright Informatica LLC 2016, 2017. Informatica, the Informatica logo, and Informatica Cloud are trademarks or registered trademarks

More information

CMPE 131 Software Engineering. Database Introduction

CMPE 131 Software Engineering. Database Introduction Presented By Melvin Ch ng CMPE 131 Software Engineering September 14, 2017 Database Introduction Ruby on Rails ORM Agenda Database Management System (DBMS) SQL vs NoSQL Relational Database Introduction

More information

Table of Contents General Information Table Maintenance Top Ten Reports

Table of Contents General Information Table Maintenance Top Ten Reports Table of Contents General Information 1 Windows Print Manager 1 Print Button for Documents 1 Print Spooling 1 Print Spool Buttons 2 Report Destination 2 Single document 3 All Documents 3 Delete 3 Clear

More information

Relational Model. IT 5101 Introduction to Database Systems. J.G. Zheng Fall 2011

Relational Model. IT 5101 Introduction to Database Systems. J.G. Zheng Fall 2011 Relational Model IT 5101 Introduction to Database Systems J.G. Zheng Fall 2011 Overview What is the relational model? What are the most important practical elements of the relational model? 2 Introduction

More information

October 16, Q Investor Presentation Svenn-Tore Larsen, CEO Pål Elstad, CFO

October 16, Q Investor Presentation Svenn-Tore Larsen, CEO Pål Elstad, CFO October 16, 2015 Svenn-Tore Larsen, CEO Pål Elstad, CFO Summary Q3 2015: 2 Record MUSD 53.9 revenue in quarter despite the previously announced guidance Strong Bluetooth Smart Sales at MUSD 34.2 Improvements

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

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

Database Logical Design

Database Logical Design Database Logical Design IT 5101 Introduction to Database Systems J.G. Zheng Fall 2011 Overview Relational model is a logical model Based on mathematical theories and rules Two ways to design a relational

More information

Hand Coded Applications with SQLAlchemy

Hand Coded Applications with SQLAlchemy Hand Coded Applications with SQLAlchemy What's a Database? We can put data in, get it back out. Data is stored as records/rows/documents/ etc. Records/rows are composed of sets of attributes. Queries allow

More information

Database Application Architectures

Database Application Architectures Chapter 15 Database Application Architectures Database Systems(Part 2) p. 221/287 Database Applications Most users do not interact directly with a database system The DBMS is hidden behind application

More information

ALTERNATE SCHEMA DIAGRAMMING METHODS DECISION SUPPORT SYSTEMS. CS121: Relational Databases Fall 2017 Lecture 22

ALTERNATE SCHEMA DIAGRAMMING METHODS DECISION SUPPORT SYSTEMS. CS121: Relational Databases Fall 2017 Lecture 22 ALTERNATE SCHEMA DIAGRAMMING METHODS DECISION SUPPORT SYSTEMS CS121: Relational Databases Fall 2017 Lecture 22 E-R Diagramming 2 E-R diagramming techniques used in book are similar to ones used in industry

More information

Andrey Zavadskiy. Database Modeling In Practice

Andrey Zavadskiy. Database Modeling In Practice Andrey Zavadskiy Database Modeling In Practice About me Solutions architect, SQL &.NET developer Interests: SQL Server, Entity Framework, Backend, MVC http://andreyzavadskiy.com https://www.facebook.com/andrey.k.zavadskiy

More information

Higher National Unit specification: general information. Relational Database Management Systems

Higher National Unit specification: general information. Relational Database Management Systems Higher National Unit specification: general information Unit code: H16W 35 Superclass: CB Publication date: March 2012 Source: Scottish Qualifications Authority Version: 01 Unit purpose This Unit is designed

More information

What is database? Types and Examples

What is database? Types and Examples What is database? Types and Examples Visit our site for more information: www.examplanning.com Facebook Page: https://www.facebook.com/examplanning10/ Twitter: https://twitter.com/examplanning10 TABLE

More information

QM Chapter 1 Database Fundamentals Version 10 th Ed. Prepared by Dr Kamel Rouibah / Dept QM & IS

QM Chapter 1 Database Fundamentals Version 10 th Ed. Prepared by Dr Kamel Rouibah / Dept QM & IS QM 433 - Chapter 1 Database Fundamentals Version 10 th Ed Prepared by Dr Kamel Rouibah / Dept QM & IS www.cba.edu.kw/krouibah Dr K. Rouibah / dept QM & IS Chapter 1 (433) Database fundamentals 1 Objectives

More information

Project 4 Financials (Excel)

Project 4 Financials (Excel) Project 4 Financials (Excel) Project Objective To offer an introduction to building spreadsheets, creating charts, and entering functions. Part 1 - Financial Projections One of the most important aspects

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

Real-World Performance Training Dimensional Queries

Real-World Performance Training Dimensional Queries Real-World Performance Training al Queries Real-World Performance Team Agenda 1 2 3 4 5 The DW/BI Death Spiral Parallel Execution Loading Data Exadata and Database In-Memory al Queries al Queries 1 2 3

More information

L12: ER modeling 5. CS3200 Database design (sp18 s2) 2/22/2018

L12: ER modeling 5. CS3200 Database design (sp18 s2)   2/22/2018 L12: ER modeling 5 CS3200 Database design (sp18 s2) https://course.ccs.neu.edu/cs3200sp18s2/ 2/22/2018 200 Announcements! Keep bringing your name plates J Exam 1 discussion: questions on grading: Piazza,

More information

razi Documentation Release 2.0.0b0 Riccardo Vianello

razi Documentation Release 2.0.0b0 Riccardo Vianello razi Documentation Release 2.0.0b0 Riccardo Vianello Dec 23, 2017 Contents 1 Introduction 3 1.1 Installation................................................ 3 1.2 Documentation..............................................

More information

Introduction to ERwin

Introduction to ERwin Introduction to ERwin Database Design & Modelling Hans-Petter Halvorsen, M.Sc. Software The following Editions can be downloaded for Free on Internet: CA ERwin Data Modeler Community Edition SQL Server

More information

relational Key-value Graph Object Document

relational Key-value Graph Object Document NoSQL Databases Earlier We have spent most of our time with the relational DB model so far. There are other models: Key-value: a hash table Graph: stores graph-like structures efficiently Object: good

More information

System Analysis & design

System Analysis & design Assiut University Faculty of Computers and Information System Analysis & design Year 2 Academic Year 2014/ 2015 Term (2) Copyright 2014 Dr. Hossam Ragab 6 data model describes the data that flow through

More information

WHAT IS A DATABASE? There are at least six commonly known database types: flat, hierarchical, network, relational, dimensional, and object.

WHAT IS A DATABASE? There are at least six commonly known database types: flat, hierarchical, network, relational, dimensional, and object. 1 WHAT IS A DATABASE? A database is any organized collection of data that fulfills some purpose. As weather researchers, you will often have to access and evaluate large amounts of weather data, and this

More information

CA ERwin Data Modeler

CA ERwin Data Modeler CA ERwin Data Modeler Implementation Guide Service Pack 9.5.2 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to only and is subject

More information

Chapter 1: Introduction to Microsoft Access 2003

Chapter 1: Introduction to Microsoft Access 2003 Chapter 1: Introduction to Microsoft Access 2003 Learning Objectives This chapter begins your study of application development using Microsoft Access. After this chapter, you should have acquired the knowledge

More information

Database Vs. Data Warehouse

Database Vs. Data Warehouse Database Vs. Data Warehouse Similarities and differences Databases and data warehouses are used to generate different types of information. Information generated by both are used for different purposes.

More information

1D D0-541 CIW v5 Database Design Specialist Version 1.7

1D D0-541 CIW v5 Database Design Specialist Version 1.7 1D0-541 CIW v5 Database Design Specialist Version 1.7 QUESTION NO: 1 With regard to databases, what is normalization? A. The process of reducing the cardinality of a relation B. The process of organizing

More information

DATABASE IMPLEMENTATION

DATABASE IMPLEMENTATION DATABASE IMPLEMENTATION Interior Design Management System Instructor: Dr. Stephanie Haas Information Science School of Information and Library Science University of North Carolina at Chapel Hill Wanchen

More information

Invoicing brings it all together

Invoicing brings it all together Invoicing brings it all together Chad Klein TECHNICAL LEVEL: EASY INTERMEDIATE ADVANCED What we ll cover Using keyboard shortcuts Displaying a quantity discount message Opening the cash drawer Printing

More information

Databases. Purpose Of A Database. To store information

Databases. Purpose Of A Database. To store information Databases In this section of notes you will learn about: different types of databases, how information is stored in databases, the different types of relations that can exist within a database and how

More information

Enterprise Challenges of Test Data Size, Change, Complexity, Disparity, and Privacy

Enterprise Challenges of Test Data Size, Change, Complexity, Disparity, and Privacy Size, Change, Complexity, Disparity, and Privacy For simple applications, representative test data can be relatively easy What if you are testing enterprise-scale applications? In enterprise data centers,

More information

L6 Application Programming. Thibault Sellam Fall 2018

L6 Application Programming. Thibault Sellam Fall 2018 L6 Application Programming Thibault Sellam Fall 2018 Topics Interfacing with applications Database APIs (DBAPIS) Cursors SQL!= Programming Language Not a general purpose programming language Tailored for

More information

Column-Family Stores: Cassandra

Column-Family Stores: Cassandra NDBI040: Big Data Management and NoSQL Databases h p://www.ksi.mff.cuni.cz/ svoboda/courses/2016-1-ndbi040/ Lecture 10 Column-Family Stores: Cassandra Mar n Svoboda svoboda@ksi.mff.cuni.cz 13. 12. 2016

More information

Database Logical Design

Database Logical Design Database Logical Design CIS 3730 Designing and Managing Data J.G. Zheng Fall 2010 1 Overview Relational model is a logical model Based on mathematical theories and rules Two ways to design a relational

More information

Star Schema Design (Additonal Material; Partly Covered in Chapter 8) Class 04: Star Schema Design 1

Star Schema Design (Additonal Material; Partly Covered in Chapter 8) Class 04: Star Schema Design 1 Star Schema Design (Additonal Material; Partly Covered in Chapter 8) Class 04: Star Schema Design 1 Star Schema Overview Star Schema: A simple database architecture used extensively in analytical applications,

More information

Business Intelligence and Reporting Tools

Business Intelligence and Reporting Tools Business Intelligence and Reporting Tools Release 1.0 Requirements Document Version 1.0 November 8, 2004 Contents Eclipse Business Intelligence and Reporting Tools Project Requirements...2 Project Overview...2

More information

Business Analytics Nanodegree Syllabus

Business Analytics Nanodegree Syllabus Business Analytics Nanodegree Syllabus Master data fundamentals applicable to any industry Before You Start There are no prerequisites for this program, aside from basic computer skills. You should be

More information

National 5 Computing Science Assignment Assessment task

National 5 Computing Science Assignment Assessment task National 5 Computing Science Assignment Assessment task Specimen valid from session 2017 18 and until further notice. This edition: August 2017 (version 1.0) The information in this publication may be

More information

Unit 10 Databases. Computer Concepts Unit Contents. 10 Operational and Analytical Databases. 10 Section A: Database Basics

Unit 10 Databases. Computer Concepts Unit Contents. 10 Operational and Analytical Databases. 10 Section A: Database Basics Unit 10 Databases Computer Concepts 2016 ENHANCED EDITION 10 Unit Contents Section A: Database Basics Section B: Database Tools Section C: Database Design Section D: SQL Section E: Big Data Unit 10: Databases

More information

Mining Your Warranty Data Finding Anomalies (Part 1)

Mining Your Warranty Data Finding Anomalies (Part 1) Mining Your Warranty Data Finding Anomalies (Part 1) Rob Evans (vrevans@us.ibm.com), Support Warranty Analyst, IBM 3 December 2010 The problem One of my jobs each month is to review all of the warranty

More information

Bachelor in Information Technology (BIT) O Term-End Examination

Bachelor in Information Technology (BIT) O Term-End Examination No. of Printed Pages : 6 I CSI-14 I Bachelor in Information Technology (BIT) O Term-End Examination cn Cn1 June, 2010 CD cp CSI-14 : DATA ANALYSIS AND DATABASE DESIGN Time : 3 hours Maximum Marks : 75

More information

CS 327E Lecture 2. Shirley Cohen. January 27, 2016

CS 327E Lecture 2. Shirley Cohen. January 27, 2016 CS 327E Lecture 2 Shirley Cohen January 27, 2016 Agenda Announcements Homework for today Reading Quiz Concept Questions Homework for next time Announcements Lecture slides and notes will be posted on the

More information

Creating Custom Financial Statements Using

Creating Custom Financial Statements Using Creating Custom Financial Statements Using Steve Collins Sage 50 Solution Provider scollins@iqacct.com 918-851-9713 www.iqaccountingsolutions.com Financial Statement Design Sage 50 Accounting s built in

More information

Data, Information, and Databases

Data, Information, and Databases Data, Information, and Databases BDIS 6.1 Topics Covered Information types: transactional vsanalytical Five characteristics of information quality Database versus a DBMS RDBMS: advantages and terminology

More information

Quotations. 3. The quotation will have an automatic number, comprising of the request ID, a hyphen and then the number of the quotation in the list.

Quotations. 3. The quotation will have an automatic number, comprising of the request ID, a hyphen and then the number of the quotation in the list. Quotations If an end-user wishes to purchase something, whether, physical or service, NetHelpDesk has the ability to raise quotations to send to the end-user. Whether they are stand alone, or as part of

More information

Contractors Guide to Search Engine Optimization

Contractors Guide to Search Engine Optimization Contractors Guide to Search Engine Optimization CONTENTS What is Search Engine Optimization (SEO)? Why Do Businesses Need SEO (If They Want To Generate Business Online)? Which Search Engines Should You

More information

John Edgar 2

John Edgar 2 CMPT 354 http://www.cs.sfu.ca/coursecentral/354/johnwill/ John Edgar 2 Assignments 30% Midterm exam in class 20% Final exam 50% John Edgar 3 A database is a collection of information Databases of one

More information

Fundamentals of Information Systems, Seventh Edition

Fundamentals of Information Systems, Seventh Edition Chapter 3 Data Centers, and Business Intelligence 1 Why Learn About Database Systems, Data Centers, and Business Intelligence? Database: A database is an organized collection of data. Databases also help

More information

Built for Speed: Comparing Panoply and Amazon Redshift Rendering Performance Utilizing Tableau Visualizations

Built for Speed: Comparing Panoply and Amazon Redshift Rendering Performance Utilizing Tableau Visualizations Built for Speed: Comparing Panoply and Amazon Redshift Rendering Performance Utilizing Tableau Visualizations Table of contents Faster Visualizations from Data Warehouses 3 The Plan 4 The Criteria 4 Learning

More information

SQLite vs. MongoDB for Big Data

SQLite vs. MongoDB for Big Data SQLite vs. MongoDB for Big Data In my latest tutorial I walked readers through a Python script designed to download tweets by a set of Twitter users and insert them into an SQLite database. In this post

More information

EXECUTIVE REPORT. 4 Critical Steps Financial Firms Must Take for IT Uptime, Security, and Connectivity

EXECUTIVE REPORT. 4 Critical Steps Financial Firms Must Take for IT Uptime, Security, and Connectivity EXECUTIVE REPORT 4 Critical Steps Financial Firms Must Take for IT Uptime, Security, and Connectivity When Millions of Dollars of Financial Transactions are On the Line, Downtime is Not an Option The many

More information

ADDRESS DATA CLEANSING A BETTER APPROACH

ADDRESS DATA CLEANSING A BETTER APPROACH ADDRESS DATA CLEANSING A BETTER APPROACH Oracle s JD Edwards EnterpiseOne Address Data Cleansing: A Better Approach The term Undeliverable as Addressed (UAA) and Return Mail (return to sender) are common

More information

School of Computing and Information Technology Session: Spring CSCI835 Database Systems (Bridging Subject) Sample class test 23 July 2018

School of Computing and Information Technology Session: Spring CSCI835 Database Systems (Bridging Subject) Sample class test 23 July 2018 School of Computing and Information Technology Session: Spring 2018 University of Wollongong Lecturer: Janusz R. Getta CSCI835 Database Systems (Bridging Subject) Sample class test 23 July 2018 THE QUESTIONS

More information

FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM

FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM RECOMMENDATION AND JUSTIFACTION Executive Summary: VHB has been tasked by the Florida Department of Transportation District Five to design

More information

The appendix contains information about the Classic Models database. Place your answers on the examination paper and any additional paper used.

The appendix contains information about the Classic Models database. Place your answers on the examination paper and any additional paper used. Name: Student Number: Instructions: Do all 9 questions. There is a total of 87 marks. The appendix contains information about the Classic Models database. Place your answers on the examination paper and

More information

WHITE PAPER DATA DICATIONARY DEFINING AND USING A COMMON LANGUAGE

WHITE PAPER DATA DICATIONARY DEFINING AND USING A COMMON LANGUAGE DATA DICATIONARY DEFINING AND USING A COMMON LANGUAGE TABLE OF CONTENTS INTRODUCTION 3 DEFINED 3 NEED FOR 3 USES OF 3 ANATOMY OF 4 BENEFITS OF USING 4 2 P a g e INTRODUCTION The success of any business

More information

CHAPTER 11. Data Normalization

CHAPTER 11. Data Normalization CHAPTER 11 Data Normalization CHAPTER OBJECTIVES How the relational model works How to build use-case models for predicting data usage How to construct entity-relationship diagrams to model your data How

More information

Storing data in databases

Storing data in databases Storing data in databases The webinar will begin at 3pm You now have a menu in the top right corner of your screen. The red button with a white arrow allows you to expand and contract the webinar menu,

More information

Introduction to SQL Server 2005/2008 and Transact SQL

Introduction to SQL Server 2005/2008 and Transact SQL Introduction to SQL Server 2005/2008 and Transact SQL Week 4: Normalization, Creating Tables, and Constraints Some basics of creating tables and databases Steve Stedman - Instructor Steve@SteveStedman.com

More information

Database Management Systems,

Database Management Systems, Database Management Systems SQL Query Language (1) 1 Topics Introduction SQL History Domain Definition Elementary Domains User-defined Domains Creating Tables Constraint Definition INSERT Query SELECT

More information

This tutorial is designed for all those Python programmers who would like to understand the ORM framework with SQLAlchemy and its API.

This tutorial is designed for all those Python programmers who would like to understand the ORM framework with SQLAlchemy and its API. About the Tutorial is a popular SQL toolkit and Object Relational Mapper. It is written in Python and gives full power and flexibility of SQL to an application developer. It is an open source and cross-platform

More information

SEE GRADING CRITERIA AT THE BOTTOM. Database Tables Lookup Wizard Relationships Forms Queries Reports

SEE GRADING CRITERIA AT THE BOTTOM. Database Tables Lookup Wizard Relationships Forms Queries Reports Microsoft Office 2007 PDF Picture Tutorial Series Databases Tables, Forms, Queries, Lookup Wizard, Relationships August 2010 by Floyd Jay Winters and Julie Manchester winterf@scf.edu SEE GRADING CRITERIA

More information

Previous Webinar. Access to the video and slides:

Previous Webinar. Access to the video and slides: Previous Webinar Access to the video and slides: http://www.prometheusresearch.com/webinar-bridging-the-clinic-and-research-divide/ Mission: Empower teams to securely harness complex, sensitive data in

More information

1 DATAWAREHOUSING QUESTIONS by Mausami Sawarkar

1 DATAWAREHOUSING QUESTIONS by Mausami Sawarkar 1 DATAWAREHOUSING QUESTIONS by Mausami Sawarkar 1) What does the term 'Ad-hoc Analysis' mean? Choice 1 Business analysts use a subset of the data for analysis. Choice 2: Business analysts access the Data

More information

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P.

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Russo Active Server Pages Active Server Pages are Microsoft s newest server-based technology for building dynamic and interactive

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

EXPERIENCES MOVING FROM DJANGO TO FLASK

EXPERIENCES MOVING FROM DJANGO TO FLASK EXPERIENCES MOVING FROM DJANGO TO FLASK DAN O BRIEN, VP OF ENGINEERING CRAIG LANCASTER, CTO Jana Mobile Inc. www.jana.com WHO WE ARE Jana is a startup company in Boston connecting advertising and marketing

More information

Vendor: CIW. Exam Code: 1D Exam Name: CIW v5 Database Design Specialist. Version: Demo

Vendor: CIW. Exam Code: 1D Exam Name: CIW v5 Database Design Specialist. Version: Demo Vendor: CIW Exam Code: 1D0-541 Exam Name: CIW v5 Database Design Specialist Version: Demo QUESTION: 1 With regard to databases, what is normalization? A. The process of reducing the cardinality of a relation

More information

Database madness with & SQL Alchemy. Jaime Buelta. wrongsideofmemphis.worpress.com

Database madness with & SQL Alchemy. Jaime Buelta. wrongsideofmemphis.worpress.com Database madness with & SQL Alchemy Jaime Buelta jaime.buelta@gmail.com wrongsideofmemphis.worpress.com A little about the project Online football management game Each user could get a club and control

More information

Do not turn over until you are told to do so by the invigilator. Module Contact: Dr. Beatriz de la Iglesia (CMP)

Do not turn over until you are told to do so by the invigilator. Module Contact: Dr. Beatriz de la Iglesia (CMP) UNIVERSITY OF EAST ANGLIA School of Computing Sciences January PG Examination 2013-14 DATABASE MANIPULATION CMPSMB11 Time allowed: 3 hours Answer THREE questions. All questions carry equal weight. Notes

More information

School of Computing and Information Technology. Examination Paper Autumn Session 2017

School of Computing and Information Technology. Examination Paper Autumn Session 2017 School of Computing and Information Technology CSIT115 Data Management and Security Wollongong Campus Student to complete: Family name Other names Student number Table number Examination Paper Autumn Session

More information

CTI Short Learning Programme in Internet Development Specialist

CTI Short Learning Programme in Internet Development Specialist CTI Short Learning Programme in Internet Development Specialist Module Descriptions 2015 1 Short Learning Programme in Internet Development Specialist (10 months full-time, 25 months part-time) Computer

More information

PART I SQLAlchemy Core

PART I SQLAlchemy Core PART I SQLAlchemy Core Now that we can connect to databases, let s begin looking at how to use SQLAlchemy Core to provide database services to our applications. SQLAlchemy Core is a Pythonic way of representing

More information

SAM Ad-Hoc. Gives direct, near unrestricted (view-only) access to your SAM database Ability to see raw data with queries created by you.

SAM Ad-Hoc. Gives direct, near unrestricted (view-only) access to your SAM database Ability to see raw data with queries created by you. SAM Ad-Hoc Gives direct, near unrestricted (view-only) access to your SAM database Ability to see raw data with queries created by you. Four Clauses of a Query SELECT Describes the columns that will be

More information

II. Data Models. Importance of Data Models. Entity Set (and its attributes) Data Modeling and Data Models. Data Model Basic Building Blocks

II. Data Models. Importance of Data Models. Entity Set (and its attributes) Data Modeling and Data Models. Data Model Basic Building Blocks Data Modeling and Data Models II. Data Models Model: Abstraction of a real-world object or event Data modeling: Iterative and progressive process of creating a specific data model for a specific problem

More information

Reaching the Next Level in Data Management. By : P Sridhar Reddy Chairman & Managing Director CtrlS Datacenters Ltd

Reaching the Next Level in Data Management. By : P Sridhar Reddy Chairman & Managing Director CtrlS Datacenters Ltd Reaching the Next Level in Data Management By : P Sridhar Reddy Chairman & Managing Director CtrlS Datacenters Ltd Data Loss 93% of the companies that lost their data center due to disaster filed for bankruptcy

More information