DOCUMENTATION FULLY DRESSED USE-CASE. 29. oktober 2012 [ TEMA PERSISTENS DOKUMENTATION] Use-case: Process Order

Relaterede dokumenter
! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

Projekt database. 3 Semester - Mul a Projekt 1. Yaser Osman cph-mo102@cphbusiness.dk. Dan Eskildsen cph-de32@cphbusiness.dk

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

Projekt 1 Database. Cphbusiness Lyngby Multimediedesigner, 3. semester mul-a12e, gruppe 1

3. SEMESTER 2. PROJECT MULB Gruppe september 2015

Database. lv/

Views etc. Databaser

Conceptual, logic, physical

Jayne Alice Jensen [Link til portfolio]

3. semester, 2. projekt: Database

Fra ER-Diagram til Relationel model i 7 step

En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Begrænsninger i SQL. Databaser, efterår Troels Andreasen

Projekt Database, Gruppe 4A. Projekt 1, 3. Semester D A T A B A S E. Klasse MulA13 Gruppenummer: A4

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28.

Workshop Persistence

Data lagring. 2. iteration (implement backend)

Projekt database. (vores htmlside)

En Kort Introduktion til Oracle

DATABASE Projekt 1-3. semester

Anne Randorff Højen

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE

Projekt titel. Projekt navn. Gruppe medlemmer. Klasse/Gruppenummer. Databaseprojekt 1. Ferrari

PROJEKT 3. The Design Diaries. LINK TIL BLOG: Af Mikkel Borg Svendsen & Sebastian Frank MUL B

CLmul-b14e Gruppe 2 2. Database projekt

Projekt 1 - Database. Cphbusiness Lyngby Multimediedesigner, 3. semester. MulB13e, gruppe 4

-- Først opretter vi databasen CREATE DATABASE projekt_database; -- og så benytter vi den: USE projekt_database;

Unitel EDI MT940 June Based on: SWIFT Standards - Category 9 MT940 Customer Statement Message (January 2004)

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach 2002

Database. Pr jekt. Hold CLmul-a14e Gruppe 3 3. semester Vejledere: Tue Becher Ivan R. Frederiksen

BADGES CATALOG d e s i g n p r o d u c e d e l i v e r

Software Projekt NoSQL vs RMDB

Eksamen, DSDS, efterår 2008

SYSTEM DESIGN. 18. december 2012 [Mink Farm Rapport] Dette projekt bruger UP model, som er et krav for dette semesters projekt.

Elaboration fase 2. semester projekt Gruppe 4

IBM Network Station Manager. esuite 1.5 / NSM Integration. IBM Network Computer Division. tdc - 02/08/99 lotusnsm.prz Page 1

Eksamen, DSDS, forår 2009

POST IT! Cph Business Academy Multimediedesign 2. Semester flow april Kirstine Marie Rasmussen cph-

Introduktion til SQL queries

Søren Løbner (lobner) ddb Databaser

Portal Registration. Check Junk Mail for activation . 1 Click the hyperlink to take you back to the portal to confirm your registration

MSE PRESENTATION 2. Presented by Srunokshi.Kaniyur.Prema. Neelakantan Major Professor Dr. Torben Amtoft

Databaser Obligatorisk opgave 1

Informal Design Guidelines. March 23, 2008 DB:EER Model - 1 1

SQL Server 2016 Data Adgang

Projekt: Database. Multimedia Design: Semester 3 - projekt 01. Sabine Larsen cph-sl176@cphbusiness.dk. Anastasia Keller cph-ak186@cphbusiness.

2a. Conceptual Modeling Methods

DB undervisning 01-01

Engelsk. Niveau D. De Merkantile Erhvervsuddannelser September Casebaseret eksamen. og

PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU

Eksamen, DSDS, efterår 2007

Da beskrivelserne i danzig Profile Specification ikke er fuldt færdige, foreslås:

Database design for begyndere

Privat-, statslig- eller regional institution m.v. Andet Added Bekaempelsesudfoerende: string No Label: Bekæmpelsesudførende

Assignment #5 Toolbox Contract

A11: Last Year s Exam

Basic statistics for experimental medical researchers

WIKI & Lady Avenue New B2B shop

ExpressShipper BRUGERVEJLEDNING

Casper Fabricius ActiveRecord. O/RM i Ruby on Rails

SB ShooeBox. SB Introduction / Indledning SB Inspiration combinations/inspirationsopstillinger SB Functionality/Funktion 07-07

DONG-område Resten af landet

Practical Intermodal Communication. How-To WebBooking Customer Cap-Flex. Version

Datablad: Nature Impact Roof modul

Reeksamen, DSDS, forår 2008

Software Design (SWD) Spørgsmål 1

Linear Programming ١ C H A P T E R 2

Tagwall med Php & MySQL

Obligatorisk opgave 2. SQL, relationel algebra og relationel kalkyle

RentCalC V Soft-Solutions

Begrynder til at lave log ind system

Database optimering - Indeks

Afleveringsopgave. Efterår 2001

1 Indlæsning af script

Historien om en ikonisk vase

Semco Maritime - Vækst under vanskelige vilkår. Offshoredag 2009 Vice President Hans-Peter Jørgensen

Titel: Database 1. projekt - 3. semester Multimediedesigner uddannelsen - Lyngby

Informationsteknologi Datamatgrafik Metafil til lagring og overførsel af billedbeskrivelsesinformation Del 1: Funktionel beskrivelse

Skriftlig eksamen i Databaser, Vinter 2001/2002. Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men

Introduktion til programmering

nyt håndmalet univers

Database kursus Forår 2013

Aktivering af Survey funktionalitet

Få sin querystring til at fungere. (Nybegyndere)

Software Design (SWD) Spørgsmål 1

The GAssist Pittsburgh Learning Classifier System. Dr. J. Bacardit, N. Krasnogor G53BIO - Bioinformatics

Ansøgningen vedrører udstedelse af

VPN VEJLEDNING TIL MAC

Website review groweasy.dk

ATEX direktivet. Vedligeholdelse af ATEX certifikater mv. Steen Christensen

Software Design (SWD) Spørgsmål 1

Black Jack --- Review. Spring 2012

Oracle PL/SQL. Overview of PL/SQL

Air Crash Booking System

Statistik for MPH: 7

The Design Diaries Project 3 2. Semester. Blog om designprincipper

SEPA Direct Debit. Mandat Vejledning Nets Lautrupbjerg 10 DK-2750 Ballerup

Databasesystemer. IT Universitetet i København 16. januar 2006

Transkript:

DOCUMENTATION FULLY DRESSED USE-CASE Use-case: Process Order Omfang og niveau: Dette omhandler en ordre der går gennem systemet Primær aktør: Sælger Pre betingelser: At der ikke er registret kunder Post betingelser: Varen bliver leveret Basis succes flow: 1. Sælger modtager en ordre på mail eller telefon 2. Systemet opretter en ordre 3. Sælgeren modtager og angiver kundens oplysninger 4. Sælger tilføjer varen og antal til ordren 5. Systemet returnere at varen er tilføjet til ordren 6. Sælgeren opdaterer ordren med den nye status 7. Sælgeren modtager kundens betalingsoplysninger 8. Systemet bekræfter kundens oplysninger 9. Sælgeren afslutter ordren 10. Systemet gemmer og printer en faktura ud 11. Systemet sender en mail med fakturaen med ordreinformation til kunden Alternativt flow: Systemet går ned Kunden fortryder 4a Sælgeren indtaster et forkert varenummer 4b Varenummeret findes ikke i systemet 10a Ordren bliver ikke gemt Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 1 af 10

SYSTEM SEQUENCE DIAGRAM Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 2 af 10

INTERACTION DIAGRAM Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 3 af 10

RELATIONAL DATABASE SCHEMA Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 4 af 10

DATABASE SCHEMA DESCRIPTION The database schema shows the structure of our database. It shows the tables and the relationship between the tables. We 7 tables namely; Customer, ZipcodeCity, Supplier, Invoice, SalesOrder, ProductSalesOrder, and Product. Customer table consists of the attributes to represent a customer in our domain. It uses custid as its primary key. An interesting point in Customer table is the zipcode column. We normalized Customer table. This is because there is a functional dependence between zipcode and city columns. We derived a new table called zipcodecity it uses zipcode as primary key; this new table stores zip codes and their corresponding city names. Customer table has a foreign key to Zipcode city table. Supplier table consists of attributes to represent suppliers in our domain. It uses supplierid as its primary key. Invoice table consists of attributes to represent invoice in our domain. It uses invoiceno as primary key. SalesOrder table consists of attributes to represent orders in our domain. It uses salesorderid as primary key. It has a foreign key to invoiceno and custid. ProductSalesOrder table is used to represent partorders. It is a new table that was added to the domain to handle partorders. This is because there is no object referencing in databases. When we have many to many, relationship in our domain, we cannot use list over our data, therefore we make a new table that joins both tables to form a new table and combine their primary keys as the primary key of the new table. ProductSalesOrder table uses the foreign keys salesorderid and productid as its primary key (super key). It also uses the column name quantity to represent the number of each product. Product table consists of attributes to represent products in our domain. It uses productid as primary key. It has a foreign key to supplierid. Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 5 af 10

DOMAIN MODEL 1 Det mest åbenlyse vi har ændret i den domæne model vi fik udleveret, er at vi har indsat produktsalesorder klassen. Det har vi gjort for at kunne få antal med på de vare, der bliver bestilt, så at man ikke kun kan bestille 1 af noget og så hvis man skal bruge flere så bestille en flere gange. Vi har sat en aggregering fra produktsalesorder klassen til salesorder klassen da produktsalesorder klassen bruger alle de ting der er i salesorder klassen og så sætter den antal på hver vare og dermed kan salesorder klassen regne TotalAmount. Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 6 af 10

SQL SCRIPTS FOR OPRETTELSE AF DATABASEN 1 create table Customer 2 (fname varchar(20) not null, 3 lname varchar(20) not null, 4 custid int, 5 address varchar(30) not null, 6 zipcode int, 7 city varchar(20), 8 phoneno int not null, 9 email varchar(50) not null, 10 type varchar(15) not null, 11 primary key (custid)); 12 13 14 15 create table Supplier 16 (supplierid int not null, 17 name varchar (20), 18 address varchar (30), 19 country varchar (30), 20 phonenumber int not null, 21 email varchar (50) not null, 22 primary key (supplierid)); 23 24 25 create table Invoice 26 (invoicenum int, 27 paymentdate datetime DEFAULT GETDATE(), 28 totalamount decimal(10, 2), 29 primary key (invoicenum)); 30 31 32 create table Product 33 (productid int, 34 purchaseprice decimal(10, 2), 35 salesprice decimal(10, 2), 36 rentprice decimal (10, 2), 37 countryoforigin varchar(30), 38 minimumstock int, 39 size char (9), 40 colour varchar(20), 41 producttype varchar (20), 42 productdescription varchar (50), 43 fabric varchar (50), 44 supplier int, 45 calibre decimal (4,4) 46 primary key (productid), 47 foreign key (supplier) references Supplier(supplierid)); 48 49 50 create table SalesOrder 51 (salesorderid int, 52 creationdate datetime DEFAULT GETDATE(), 53 deliverydate datetime DEFAULT GETDATE(), 54 deliverystatus varchar(20), 55 totalamount decimal (10, 2), 56 customer int not null, 57 invoice int Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 7 af 10

58 primary key (salesorderid), 59 foreign key (customer) references Customer(custid), 60 foreign key (invoice) references Invoice (invoicenum)); 61 62 63 64 create table ProductSalesOrder 65 (prodid int, 66 salesid int, 67 quantity int not null, 68 foreign key(prodid) references Product(productid) on update cascade on delete cascade, 69 foreign key(salesid) references SalesOrder(salesorderid) on update cascade on delete cascade); 70 Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 8 af 10

SQL SCRIPTS FOR INDSÆTTELSE AF DATA TIL DATABASEN Indsættelse af Products 1 2 3 insert into Product values (111, 20.50, 30.50, 5.50, 'USA', 50, 'large', 'blue', null, null, null, 330, null,'cowboy Hat', 'Clothing'); 4 insert into Product values (112, 21.50, 31.50, 4.50, 'Denmark', 50, 'medium', 'green', null, null, null, 331, null, 'Cowboy Boots', 'Clothing'); 5 insert into Product values (113, 32.50, 50.50, 5.50, 'France', 50, 'medium', 'yellow', null, null, null, 332, null, 'Ponchos', 'Clothing'); 6 insert into Product values (114, 50.50, 65.50, 5.50, 'Germany', 50, 'large', 'blue', null, null, null, 333, null, 'Denims', 'Clothing'); 7 8 9 10 11 insert into Product values (115, 11.50, 21.50, 4.50, 'USA', 50, null, null, 'New Model', 'describe prod', null, 334, null, 'Licence Plates', 'Equipment'); 12 insert into Product values (116, 27.50, 37.50, 5.50, 'Nigeria', 50, null, null, 'New Model', 'describe prod', null, 335, null, 'Bags', 'Equipment'); 13 insert into Product values (117, 25.50, 41.50, 4.50, 'Faroe Islands', 50, null, null, 'New Model', 'describe prod', null, 336, null, 'Ornaments', 'Equipment'); 14 insert into Product values (118, 20.50, 30.50, 5.50, 'Hawai', 50, null, null, 'New Model', 'describe prod', null, 337, null, 'Pistol Belts', 'Equipment'); 15 16 17 18 insert into Product values (119, 71.50, 91.50, 4.50, 'France', 50, null, null, null, null, 'silver', 338, 0.02, 'Texas Ranger', 'GunReplicas'); 19 insert into Product values (120, 28.50, 60.50, 5.50, 'Denmark', 50, null, null, null, null, 'gold', 339, 0.18, 'Deringer Pistol', 'GunReplicas'); 20 insert into Product values (121, 43.50, 67.50, 5.50, 'Faroe Islands', 50, null, null, null, null, 'metal', 340, 0.1, 'Frontier Revolver', 'GunReplicas'); 21 insert into Product values (122, 61.50, 90.50, 4.50, 'Nigeria', 50, null, null, null, null, 'aluminium', 341, 0.4, 'Dragoon Revolver', 'GunReplicas'); 22 Indsættelse af Supplier 1 insert into Supplier values (330, 'Aarhus A/S', 'Aalbogvej 13', 'USA', 2 insert into Supplier values (331, 'Aabybro A/S', 'Aalbogvej 13', 'USA', 3 insert into Supplier values (332, 'Hamburg A/S', 'Aalbogvej 13', 'USA', 4 insert into Supplier values (333, 'Nike', 'Aalbogvej 13', 'USA', Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 9 af 10

5 insert into Supplier values (334, 'Denim A/S', 'Aalbogvej 13', 'USA', 6 insert into Supplier values (335, 'Cowboys A/S', 'Aalbogvej 13', 'USA', 7 insert into Supplier values (336, 'Copenhagen A/S', 'Aalbogvej 13', 'USA', 8 insert into Supplier values (337, 'Thisted A/S', 'Aalbogvej 13', 'USA', 9 insert into Supplier values (338, 'Cromwell A/S', 'Aalbogvej 13', 'USA', 10 insert into Supplier values (339, 'Lagoon A/S', 'Aalbogvej 13', 'USA', 11 insert into Supplier values (340, 'UCN A/S', 'Aalbogvej 13', 'USA', 12 insert into Supplier values (341, 'Crown A/S', 'Aalbogvej 13', 'USA', 13 insert into Supplier values (342, 'Longoria A/S', 'Aalbogvej 13', 'USA', 14 Indsættelse af Customers 1 insert into Customer values('høgni', 'Juul', '444', 'Marie Curies alle', '9220', 'Aalborg', '53501204', 'hognijuul@gmail.com', 'Kunde' 2 insert into Customer values('jakob', 'Kaspersen', '555', 'Læsøgade', '9000', 'Aalborg', '22850582', 'jakob.kaspersen@gmail.com', 'Kunde' 3 insert into Customer values('søren', 'vege', '666', 'Sigred Undsetsvej', '9220', 'Aalborg', '26402498', 'mail@vegeberg.net', 'Kunde' 4 insert into Customer values('kaj', 'Olsen', '777', 'Dannebrosgade', '9000', 'Aalborg', '61994853', 'kajnet@gmail.com', 'Kunde' Faith, Kaj, Høgni, Søren, Jakob DM79 gruppe 3 Documentation Side 10 af 10