CLmul-b14e Gruppe 2 2. Database projekt

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

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

Projekt database. (vores htmlside)

Jayne Alice Jensen [Link til portfolio]

! 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

3. SEMESTER 2. PROJECT MULB Gruppe september 2015

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

DATABASE Projekt 1-3. semester

3. semester, 2. projekt: Database

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

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

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

CFunding-IT. Web DB Multimediedesigner 3. Semester Gruppe 15

Data lagring. 2. iteration (implement backend)

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

Sådan kommer du i gang

Brugervejledning i ændring af login-oplysninger i CO 2 -kvoteregisteret

Sådan bruger du Go Madpak

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

Hvad er en relationsdatabase? Odense, den 19. januar Version 1.0

Datamodeller. 1. Elementerne. Vi betragter E/R-diagrammet, som et diagram over entiteter og relationer Tegneregler: Entitet

Eksamen, DSDS, forår 2009

Brugervejledning til MASCOT SmartStore Ver02

Guide til første gang du skal på shopeasy.dk.

Login-vejledning til Falck MyCare

For at komme videre er det nødvendigt at vælge punktet Produkter i menuen til venstre. Her kan du navigere dig rundt på shoppen.

Crowdfunding. Modul 3. CPH Business Academy. Lærere: JHI & TUJE www

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

Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Manual til administration af online booking

PROJEKT WEB_DB CROWDFUNDING

CPH Business Academy. Lærere: JHI & TUJE

Use cases Log ind procedurer Generelt Du oprettes i Kitos Generelt Log på Kitos... 3

Webshop manual. Vejledning i at handle på DONG shoppen. Gå ind på din afdelingsshop: f.eks Klik på Log ind

Rev Brugervejledning. Webshop Sika Danmark A/S

Dataanalyse og databaser

Vejledning til mindstelønsportal

WebSite og databaseprojekt

Guide til webshop 2. JEG HAR ALLEREDE EN KONTO - HVORDAN FÅR JEG ADGANG, OG HVAD ER FORDELENE?... 2

Vejledning til brug af Y s Men s klubintranet administrator guide

Indholdsfortegnelse. Side 1 af 8

Gå ind på forsiden til hjemmesiden. Skriv typo3 i adresselinjen og tryk på retur.

My Shop. Funktioner, oversigt: Kom i gang: Online shop system

Mayianne Nøks Pedersen Mail:

Databaser. Område / Specialefag nr Database, design og programmering Datatekniker Infra & Prog IT-Supporter AMU Kursister

Guide til første gang du skal på shopeasy.dk

Boligsøgning hos Domea

Vejledning til BUF Akademis administrationssystem for ledere

Indholdsfortegnelse for kapitel 3

MASCOT SmartStore Quick guide

E-SHOPPEN. Brugervejledning

Kursusbeskrivelse. Forarbejde. Oprettelse af en Access-database

Databaser. 3. Normalform. Mette Frost Nielsen

Sådan kommer du i gang med at handle på Berners WEBshop

Tilmelding til NORDLEK 2015 i Viborg:

cpos Online Quickguide Version Johannesskolen

Introduktion til programmering

Vejledning til Formandsportalen

Online status. Brugervejledning

WEBSITE DB. Copenhagen Business Academy Multimediedesigner. 3 semester 2 projekt, oktober 2014 Gruppe 1 MulA

cpos Online Quickguide Version Sct. Ibs skole

Tlf Fax

QUICKGUIDE Sådan bestiller du hurtigt og nemt varer på webshoppen

Conventus Instruktør brugervejledning

GUIDE TIL OPRETTELSE AF SIDER OG INDHOLD I UMBRACO ONLINE BETJENING

DCU Distrikternes Tilmeldingssystem. Vejledning for Ryttere

Worflow plugin til Dynamics CRM

Brugerguide til 3M Online Center

EN DANSK MERCHANDISE SHOP

Dette er en vejledning til hvordan nye skarvkolonier oprettes og hvordan resultater fra optællinger af kolonier indtastes.

Vejledning til Pagunettes Webshop

Kontaktpersoner. Indhold

Eksamen, DSDS, efterår 2008

Brugervejledning til Djurspakken

Dalux Field Brugermanual

Reeksamen, DSDS, forår 2008

Eksamen, DSDS, efterår 2007

Vejledning Tilmelding til World Firefighters Games Sidst opdateret:

Vejledning til brug for indberetning af energimærkninger

Vinavlerdatabasen høstrapport og meget mere

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

GEOGIS UDVEKSLING AF DATA MELLEM REGIONER OG RÅDGIVERE. Beregnet for GeoGIS Brugere. Dokument type Brugervejledning.

Manual til E-shoppen. Hvordan bruger jeg E-shoppen

Vejledning til BUF Akademis administrationssystem for ledere

Conventus Instruktør brugervejledning

Introduktion til frontend

GeoGIS2020. Installation. Udkast. Revision: 1 Udarbejdet af: BrS Dato: Kontrolleret af: Status: Løbende Reference: Godkendt af:

My booking. Generelt. Forsiden. Version 9.0

Conventus Instruktør brugervejledning

Vejledning Patientportal

I tolkeportalen har alle brugere en rolle. Rollen bestemmer hvad man som bruger har adgang til.

Quickguide til skoleadministrator Skriftsproglig udvikling. Administrators rolle. Kom godt i gang

INSTRUKTION TIL BETALING AF KONTINGENT I BNS

TRIN FOR TRIN GUIDE VELUX Tilbudsberegner

Assignment #5 Toolbox Contract

METODE. De non-funktionelle krav er ikke specifikke krav, men kan være med til at bedømme driften af et system/ website.

Velkommen som registreret energimærkningsfirma i Energistyrelsens system

Transkript:

1

2 CLmul-b14e Gruppe 2 2. Database projekt JONAS FALK sniller27@hotmail.com Projekt vejledere Ivan Rosenvinge Frederiksen CHRISTIAN BRAMS halkjaer-brams@hotmail.com Tue Becher LINE RASMUSSEN line-rasmussen@live.com AUGUSTA NAUNDRUP augusta@naundrup.net SNEZANA ILIC snezana.ilic@outlook.com

3 INTRODUKTION VIRKSOMHEDEN PBS WBS GANTT SKEMA ER DIAGRAM USE CASE USE CASE MODEL CRUD MATRIX ATTRIBUT SKEMA ARBEJDSFORM 3 4 4 5 5 6 8 10 11 13 14 I dette projekt skulle vi udvælge et velkendt firma, som skulle ligge til grundlag for vores projekt. Efterfølgende skulle vi udarbejde en e-shop til den valgte virksomhed, hvor vi, i dette projekt, udelukkende skulle lægge vægt på data-modeling. Det vil sige, at vi ikke skulle lægge vægt på interface eller andre designprincipper. Derfor har vi i dette projekt arbejdet med ER-diagram, Use Case, Use Case-model, Attribut-skema og til sidst CRUD-matrix.

4 Vi har valgt at arbejde med den danske tøjvirksomhed Buch Copenhagen. Tøjkæden har siden sin opstart i 2009 solgt tøj til kvinder med fokus på tøjstilen bohemian. Buch Copenhagen har 4 fysiske butikker i Danmark: København Ø Lyngby Frederiksberg Hørsholm.sql db-sql.zip Rapport På Buch Copenhagen s Facebook-side fremgår det, at de har en hjemmeside - www.buchcopenhagen.dk. Denne side er dog blot et link tilbage til deres Facebook-side. Vi undersøgte derfor, om vi kunne finde en reel hjemmeside for virksomheden, men uden held. 3.NF ER model attribut skema Vi kan konkludere, at Buch Copenhagen på nuværende tidspunkt ingen funktionel hjemmeside eller e-shop har. Dermed har virksomhedens kunder kun én mulighed for at købe deres tøj eller se hele deres kollektion - ved at besøge en af de 4 fysiske butikker. Derfor kunne man derfor forestille sig, at firmaets tøj ikke er særligt udbredt andre steder end i hovedstads området. Use case sql statements CRUD Ud fra de ovennævnte observationer, ser vi derfor virksomheden som et oplagt valg til dette projekt, da vi på et senere tidspunkt ville have stort set frie tøjler indenfor design af hjemmesiden, og ikke mindst deres e-shop.

5 Database Projekt Startfase ER-diagram Lav database Læs opgavebeskrivelse Use Case / User Stories Indsæt data i database Projektplanlægning Use Case Model Lav rapport Brainstorm Attribute tabel Opdater portfolio CRUD-matrix

6

7 ER-diagrammet viser, hvordan vores database er opbygget. Kasserne i ER-diagrammet er entiteter, som er databasens tabeller. Inde i entiteterne kan vi se attributterne og deres datatyper, som indikerer hvilken data, tabellerne indeholder. Stregerne mellem entiteterne er relationer/cardinaliteter, som viser forholdet mellem entiteterne. Cardinaliteterne har vi valgt at illustrere med Crow s Foot notation. Hver tabel i databasen har en unik primærnøgle, som illustreres ved en gul nøgle. Primærnøglerne sørger for at alle rækkerne entydigt kan identificeres, og tabellerne er forskellige fra hinanden. Fremmednøglerne i tabellerne er illustreret ved en rød nøgle, som forbinder tabellerne, ved at fremmednøglen peger på en primærnøgle i en af de andre tabeller. I databasen har vi følgende tabeller: Zipcodes, Address, Customers, Orders, Orderline, Products, ProductCategories. I databasen kan en kunde oprettes med én eller flere adresser, afhængigt af hvor produktet skal sendes hen. Hver adresse kan have et postnummer (zipcode), mens et postnummer sagtens kan have flere adresser. Hver kunde kan have én eller flere ordrer, mens hver ordre kun er tilknyttet én kunde. Ordrerne i Order-tabellen fungerer først og fremmest som indkøbskurv i e-shoppen, og bliver først til en egentlig ordre, når kunden gennemfører betalingen. Ved betaling ændres Status fra 0 til 1 i Order-tabellen. Umiddelbart er en eller flere produkter tilknyttet en eller flere ordrer. For at undgå en mangetil-mange -relation mellem Orders- og Products-tabellerne, har vi lavet en ordrelinje (Orderline-tabellen). Denne binder to fremmednøgler sammen. De sammensatte fremmednøgler i Orderline-tabellen fungerer som én samlet primærnøgle. Produkterne i e-shoppen har også en produktkategori, som er tilknyttet til ProductCategory-tabellen. Normalisering For at kunne bruge databasen lettere og mere effektivt, har vi normaliseret databasen. Normalisering er en måde at organisere databaser på. Ved normalisering bliver databasen mere fleksibel, og det bliver lettere at indsætte, ændre og slette data. Man undgår også redundans i tabellerne, altså data der står flere steder. Dette sparer i sidste ende plads i databasen. Der ud over bliver data somregel også grupperet på en mere logisk måde. Vi har normaliseret databasen til 3. normalform, hvilket vi har gjort ved at opfylde følgende retningslinjer: 1NF: Der må ikke være information i rækker, der gentager sig (redundans). 2NF: For at 2NF kan opfyldes skal 1NF være opfyldt, og alle attributter, der ikke er en del af en sammensat primærnøgle, skal være afhængige af hele den sammen satte primærngle. 3NF: For at 3NF kan opfyldes, skal 2NF være opfyldt, og alle attributter skal direkte afhænge af primærnøglen.

Før vi laver databasen, har vi lavet use cases som en del af de funktionelle krav til systemet. Vores use cases viser, hvilke krav der er til interaktionen med Buch Copenhagen s shopping system. Vi har lavet forskellige use cases for både bruger og administrator, som er aktørerne. Use Case UC01 Alternativt flow 1. Brugeren går til Buch Copenhagen s hjemmeside. 2. (Brugeren går ind på registreringssiden) 3. Brugeren indtaster personinformationer, e-mail og password, og klikker på registrer. 4. Brugeren får feedback på sin tilmelding og får tilsendt en mail. 5. (Brugeren går til login-siden) 6. Brugeren indtaster brugernavn og password og klikker login. 7. Brugeren sendes til forsiden. Use Case Navn Beskrivelse Betingelser/antagelser Frekvens Fremgangsmåde Registrer bruger og login Vores use case viser, hvordan man registrerer sig på Buch Copenhagen s hjemmeside og logger ind. Målet for vores use case er at klargøre, hvordan man som bruger registrerer sig på Buch Copenhagen s hjemmeside, samt hvordan man efterfølgende logger ind. Brugeren kan finde ud af at bruge en hjemmeside, og har kendskab til systemer og sider, hvor man kan registrere sig. Det kræves at brugeren har en mail, som vedkommende kan modtage informationer på. Denne proces bliver gennemgået flere gange dagligt. Udfald Udfald Aktører Fortsættelse af use case 1. Brugeren forsøger at logge ind på hjemmesiden og indtaster forkert brugernavn/password. 2. Brugeren får feedback om, at brugernavn/password er forkert. 3. Brugeren klikker på Glemt password? og indtaster e-mail. 4. Brugeren tjekker sin e-mail, hvor kodeordet står. 5. Kunden logger ind. Vores use case slutter med, at kunden har fået en bekræftelsesmail vedr. sin tilmelding til Buch Copenhagen. Kunden er også blevet registreret i databasen. Bruger/kunde Vores use case fortsættes af UC02 8

Use Case UC02 Use Case UC03 Use Case Navn Køb i e-shop Use Case Navn Indsætte produkt på website Beskrivelse Denne use case viser, hvordan brugeren køber et produkt i Buch Copenhagen s e-shop Beskrivelse Vores use case viser, hvilke trin man som administrator skal igennem, for at indsætte et produkt i databasen, og derefter på Buch Copenhagen s e-shop. 9 Mål Betingelser/antagelser Frekvens Fremgangsmåde Alternativt flow Udfald Målet for vores use case er, at brugeren skal være i stand til at købe et produkt fra e-shoppen. Brugeren kan finde ud af at benytte en hjemmeside, og indkøbskurven er tom. Brugeren har også et kreditkort. Der er tilføjet produkter i e-shoppen. Det antages at brugeren er logget ind. Denne proces bliver gennemgået flere gange dagligt. 1. Brugeren går til shoppen 2. Brugeren vælger en kategori 3. Brugeren vælger produkt 4. Brugeren lægger produkt i indkøbskurven 5. Brugeren går til kassen 6. Brugeren betaler 7. Brugeren får respons på sit køb, samt en kvittering 1. Brugeren vælger produkt på forsiden i stedet for i kategorierne eller benytter sig af søgefunktion. Vores use case slutter med at kunden har købt et produkt, som er blevet registreret som en ordre i databasen. Mål Betingelser/antagelser Frekvens Fremgangsmåde Målet er, at administratoren indsætter et produkt på Buch Copenhagen s hjemmeside, ved først at tilføje produktet samt informationer i databasen. Administratoren har Buch Copenhagen s database og webserver tilgængelig, samt deres login. Administratoren ved, hvilket produkt og produktinformation, der skal indsættes i databasen. Databasen indeholder ikke nogen nye produkter endnu, og kan ikke ses på Buch Copenhagen s e-shop. Denne proces bliver gennemgås flere gange månedligt. (Når der er nye produkter) 1. Administratoren logger ind i Buch Copenhagen s database. 2. Administratoren går til Product-tabellen og indtaster produktinformation via SQL. 3. Administratoren tjekker om produktet er tilføjet i tabellen. 4. Administratoren logger ind på webserveren og tilføjer evt. produktet via PHP-filer.

Alternativt flow Udfald Aktører 1. Administratoren logger ind i Buch Copenhagen s database. 2. Administratoren går til Produ t tabel, og indtaster produkt og produktinformation via SQL. 5. Administratoren tjekker om produktet er tilføjet i tabellen. 6. Administratoren opdager indtastningsfejl. 7. Administratoren ændrer tastefejlen vha. SQL Update Statement. 8. Administratoren logger ind på webserveren og tilføjer evt. produktet via PHP-filer. Vores use case slutter med, at et eller flere produkter er tilføjet til Buch Copenhagen s database og kan ses på Buch Copenhagen s e-shop. Administrator 10

11 En use case model beskriver krav til et system. Modellen kan indeholde flere scenarier, der viser interaktion mellem bruger, system og administrator, samt hvordan specifikke opgaver løses. I modellen figurerer brugeren altid til venstre og administratoren til højre. Mellem dem er scenen, hvor de forskellige funktioner er vist i bobler. I vores e-shop skal brugeren kunne se og søge efter produkter, lægge varer i kurven, samt have mulighed for at rette kurvens indhold, inden den bliver til en ordre og betalingen bekræftes. Brugeren skal være logget på, før vedkommende kan gå videre til betaling, og derfor også have muligheden for at oprette sig som bruger før betalingen. Der skal efterfølgende være mulighed for at tjekke ordrestatus. Administrator skal have alle rettigheder, og kunne oprette, læse, ændre og slette alt i systemet.

12

13 I vores CRUD-matrix illustrerer vi, hvilke funktioner SQL bruger ud fra de forskellige user actions der bliver foretaget - både af kunder, men også af administratoren.

14 Ordre: Ordre_ID 1-Z N Ordre_Data Unique no. N I attribut-skemaet kan man få overblik over tabellerne, hvad de indeholder, samt hvad attributterne må og kan indeholde. Som eksempel kan vi se, at Customer Lastname -attributten kan indeholde alle store og små bogstaver fra a-å, men må kun indeholde op til 30 tegn. Entity Attributes Value Notes Datatype Num./ Alfanum Customer: Customer_ID 1-Z Unique no. AN Custom. firstname a-å Max. 30 char. AN Custom. lastname a-å Max.30 char AN Status Zip codes 1000-9999 N Orderline: Orders Order ID 1-Z AN Products Product ID 1-Z Unique no. AN Order_qty 1-Z AN Produkt: Produkt_ID 1-Z Unique no. AN Produkt_name a-å Max 30 char AN Produkt_info Produkt_price 0-9 Number N Mobil 0-9 Max. 10 char N Custom. Email a-å Max. 50 char. AN Custom. Address All char. Max. 35 char. AN Birthday Date 0-9 Max. 8 char. N Produkt Image Produkt location Produkt minstock Produkt_Qtv Img Password 0-9, a-z Max. 14 char. AN Adress: Zip codes 1000-9999 Number N Street a-å Max. 30 char. AN ProduktCategories a-å Max. 20 char AN Category: ProduktCategories ID 1-Z Unique no. AN ProduktCategories Name a-å Max. 30 char. AN

15 Vi har valgt at arbejde med traditionel projektplanlægning, hvor vi starter med at lave Gantt-kort, WBS og PBS. Dog er der dele af projektet, der er udarbejdet ud fra vandfaldsmodellen - ER-diagrammet skulle færdiggøres, inden vi kunne påbegynde arbejdet med CRUD-matrixen. Vores vurdering var dog, at det ikke ville være optimalt at benytte vandfaldsmodellen fast igennem projektet, da vi vidste, at vi flere gange ville vende tilbage til allerede færdige arbejdsopgaver for at rette. Derfor har vi primært arbejdet ud fra vores Gantt-kort gennem hele projektet.