Projekt database. http://bysileha.com/3.semester/database-eshop/index.html (vores htmlside)

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

Jayne Alice Jensen [Link til portfolio]

3. semester, 2. projekt: Database

CLmul-b14e Gruppe 2 2. Database projekt

DATABASE Projekt 1-3. semester

! 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

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

Gruppe nr. MULB2, Multimediedesign 3. semester hold B. Tue Becher Jesper Hinchely

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

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

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

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

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

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

Mayianne Nøks Pedersen Mail:

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

Web DB project semester - 3. projekt - Gruppenr. 23 MULA - September 2015

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

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

Eksamen, DSDS, forår 2009

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

EN DANSK MERCHANDISE SHOP

Sådan fungerer onlinetilmeldingen

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

PROJEKT WEB_DB CROWDFUNDING

indreoesterbro.bysileha.com LOKALOMRÅDE - 3 SEMESTER EKSAMEN INDRE ØSTERBRO

A11: Last Year s Exam

Indhold Log ind... 2 MIN KONTO... 3 PROFIL... 4 Rediger dit kodeord... 4 Order... 4 Fakturaer... 5 Følgesedler... 6 Favoritter...

Brugerundersøgelse 2. semester 3. projekt

Database design for begyndere

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

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

Vejledning til Autodesk Account - Maintenance Plan

Bruger v1.5 QUICK GUIDE. Green Glass Software V/ Dan Feld-Jakobsen Lojovej Aabenraa / dan@rekvi-skole.dk

Vejledning Tilmelding til World Firefighters Games Sidst opdateret:

Sådan bruger du Go Madpak

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

Instruktionsmanual Indholdsfortegnelse

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

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.

Kvikguide. e-bevillingsbrugere.

Vejledning til Kilometer Registrering

KMD Brugeradministration til Navision og LDV

Kvikmanual til FacilityNet

Vejledning til Autodesk Account - Subscription

WebSite og databaseprojekt

Vejledning til Autodesk Account - Autodesk Collection

Vejledning til registrering som bruger til EudraCT results

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

(fig.1. Eksempel på en almindelig entity)

5. Vælg den udgave du ønsker, og skriv det antal du ønsker at købe i rubrikken efter antal og

Vejledning til Autodesk Account - Autodesk Collection og Autodesk AutoCAD Toolset

CPH Business Academy. Lærere: JHI & TUJE

Quick Guide Ditmer edagsorden Oktober 2013

Guide til madordning. Indhold. 1. Log ind på din konto Bestil mad til dit barn...4

PHJWebshop. Brugermanual

Vejledning til Autodesk Account - Subscription

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

Database optimering - Indeks

Web-mail eller et Live-ID

Vejledning. Indhold. Side 1

TRIN FOR TRIN GUIDE VELUX Tilbudsberegner

Dataanalyse og databaser

DCU Distrikternes Tilmeldingssystem. Vejledning for Ryttere

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

Eksamen, DSDS, efterår 2007

Brugervejledning til SMS-database i Lotus Notes.

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

Miniguide til e-handel på apoteket.dk

Når du har logget dig ind, ser du Randers Kommunes byvåben midt på siden. I venstre side er der en række mapper:

Vejledning til anmodning om driftslignende tilskud fra Undervisningsministeriet

Eksamen, DSDS, efterår 2008

Tlf Fax

Instruktionsmanual Indholdsfortegnelse. Adgang og jeg har glemt mit password

Ratingsystem i PHP og MySQL

Manual til ansøgning om Lokaletilskud i Assens Kommunes tilskudsportal

Indholdsfortegnelse. Indhold

MANUAL TIL PROJECTWEB UDBUDSPORTAL FOR UDBUDSADMINISTRATORER

Brugervejledning til udfyldelse og udstedelse af Europass Mobilitetsbevis i Europass Mobilitetsdatabasen

Novotek Planning Systems A/S 2013 Version 1.0 Jan 2013 ROB-EX 4.2

Internet. Komplet featureliste. Aesiras - integreret Regnskab, Handel og Internet

Velkommen til DK Beton s kundeportal

Kom godt i gang med DanaShop

En bestilling til bruger starter som en opgave. Brugeren henvender sig enten personligt i Helpdesk, eller sender en mail til helpdesk@nfit.au.dk.

ConveyIT - Visualisation of your dreams 3. semester - 2. projekt

OK Analyse system. Vejledning i brug af OK Analyse systemet:

Bruger v1.0 QUICK GUIDE. Green Glass Software V/ Dan Feld-Jakobsen Lojovej Aabenraa /

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Accepttest-specifikation

Vejledning til Autodesk Account Maintenance Subscription

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

Kvikmanual til FacilityNet

Vejledning til KOMBIT KLIK

Rev Brugervejledning. Webshop Sika Danmark A/S

IDENTIFON. Emil Hauberg, Jakob Christoffersen, Ninette Nielsen og Senia Lundberg

Brugermanual Kontrolpanel

Vejledning til brug af Y s Men s klubintranet administrator guide

Transkript:

Projekt database http://bysileha.com/3.semester/database-eshop/index.html (vores htmlside) Amanda Lindschouw - cph-al144@cphbusiness.dk http://ahldesign.dk/learningthird.html Charlotte Øberg - cph-co74@cphbusiness.dk http://charlotteoeberg.dk/semester3.html Simone Hansen - cph-sh248@cphbusiness.dk http://bysileha.com/x/cph.portfolio/3-semester-1-database/ Michelle Andersen - cph-ma236@cphbusiness.dk http://michelle-denise.dk/portfolio-skole/ Gruppe nr. MULB5, Multimediedesign hold B. Tue Becher Ivan Rosenvinge Frederiksen 1

Indholdsfortegnelse GRUPPEKONTRAKT Side 3 INDLEDNING Side 3 UDVIKLINGSMETODE Side 4 PBS Side 4 WBS Side 5 ER Side 6 ATTRIBUT TABEL Side 8 NAVIGATIONSSYSTEM Side 9 HTML Side 9 FUNKTIONELLE KRAV Side 9 User story Side 9 Nødvendige kompetencer Side 11 Use case Side 12 Beskrivelse af UC04: Side 13 Beskrivelse af UC07: Side 14 Beskrivelse af UC08: Side 15 NON-FUNKTIONELLE KRAV Side 16 CRUD-MATRIX Side 16 KONKLUSION Side 17 LITTERATURLISTE Side 18 2

Gruppekontrakt Vi har valgt at lave en gruppekontrakt over vores forventninger til deltagelse i projektet. Hvis de valgte punkter ikke overholdes, gives der tre chancer, hvor der derefter tages stilling til, om den/de person(er) fortsat kan deltage i samarbejdet. 1. Alle mødetider og aftaler skal overholdes, da disse bliver lavet i samarbejde med resten af gruppens medlemmer. 2. Ved sygdom eller andre pludselige gøremål, skal gruppen kontaktes så hurtigt som muligt. 3. Alle deadlines skal overholdes og hjemmearbejde skal laves til aftalte tidspunkt, så vores projektplan overholdes bedst muligt. 4. De fleste opgaver laves samlet i gruppen, så alle får det maksimale ud af projektet og lærer mest muligt. Derudover skal alle være inde over hver opgave så meget det er muligt. Der tages dog forbehold for tidspres, hvor arbejdsopgaverne så vidt muligt vil blive uddelegeret, for at overholde valgte deadline. Indledning I dette projekt skulle vi vælge en hjemmeside og lave en e-shop løsning til den. Vi har valgt hjemmesiden Den Lille Have, som er en lille hjemmeside med tilhørende e-shop. Da ejeren ønsker en ny e-shop, vil vi lave et udkast til hvordan den kan fungere. Vi vil udarbejde en række analyser og modeller (bl.a. ER-model og CRUD matrix), for at sikre at interaktionen mellem kunden og databasen kommer til at fungerer optimalt og de nødvendige funktioner er på plads. Dette er nødvendigt for at finde ud af, hvordan databasen skal bygges op, men også for at vi kan uddele rettighederne mellem kunden og administratoren. Udover disse ting, vil vi lave en html side, for at vise hvordan vi mener hjemmesiden skal se ud således at vi har nogle retningslinjer for hvad det egentlig er vi skal kode til. Derudover vil vi tage stilling til nogle non-funktionelle krav, som vi mener, er vigtige når man blandt andet har med personfølsomme oplysninger at gøre. 3

Udviklingsmetode Vi har valgt at arbejde med metoden prototyping, hvor vi i projektets to uger, har lavet éet sprint. Dette sprint har vi lavet i et Gantt kort over. Grunden til at vi har lavet et Gantt kort er, at selve sprintet har en afslutningsdato og derfor er der mulighed for at bruge Gantt til dette, selvom metoden prototyping fortsætter og kører i en spiral. Product Breakdown Structure (PBS) Vi har lavet en PBS til at analysere og dokumentere den e-shop som vi skal lave. Vores tre hovedpunkter er selve databasen, funktionaliteten og websitet. Over databasen laver vi en ER-model i 3.NF for at analysere relationerne mellem attributterne. På baggrund af den kan vi lave en attribut tabel til specificere værdierne for attributterne. Dernæst har vi lavet en CRUD matrix. For at analysere funktionaliteten af e-shoppen har vi lavet en user story og use cases, som gør at vi kan se hvilke krav vores e-shop skal have i forhold til brugere som er administrator og kunderne. 4

Work Breakdown Structure (WBS) Vi har valgt at lave vores WBS i et Gantt-kort, hvor arbejdstimer pr person er udregnet ud fra en 3 punkts estimering, hvor vi tog ét optimistisk, ét sandsynlige og én pessimistisk og beregnede ud fra dem. Det er godt til at sikre et realistisk bud på arbejdstimer. Måden vi har beregnet det på er, at vi tog tre bud fra tre gruppemedlemmer. Derefter tog vi A + B *3 + C og dividere det med 5. Vi havde disse tre bud på, hvor lang tid det tog én person at have en PBS. 1. person sagde: 2 timer 2. person sagde: 4 timer 3. person sagde: 3 timer. Derefter regnede vi det ud således: 2 + 3*3 + 4 = 15 15 / 5 = 3 og det blev vores resultat. Vi har også taget udgangspunkt i, at folk ikke arbejder 100 procent hele tiden og de også holder pauser og har personlig tid. 5

ER-diagram Customers: Customers har én primary key og én foreign key. De to keys består kun af tal (INT=integers). De øvrige attributter består henholdsvis både af tal (INT) og bogstaver (varchar=variable character). Foreign key peger på tabellen Zipcode. Zipcode: En kunde kan kun have en Zipcode. Zipcode-tabellen indeholder et unikt id/primary key med datatypen INT, som peger på foreign key i customers-tabellen. Derudover har denne tabel et bynavn med en varchar datatype, hvor man max. kan indtaste 30 tegn. Et postnummer kan have mange eller ingen kunder. Orders: Orders har en primary key og en foreign key som begge er INT. RecievedDate og ShippingDate er begge datofelter og StatusOrder er en varchar til max. 45 characters. En ordre kan kun have én kunde, men kan have mange produkter og en ordre skal have minimum ét produkt. Products_has_Orders Products_has_Orders består af to primary keys som begge har datatypen INT. Desuden består den af en attribut, vi kalder Quantity, som er INT og som fortæller hvor mange varer der er valgt. Entiteten Products_has_Orders skal fortælle os hvilket produkt kunden har valgt ved hjælp af Product_ProductNo. Orders_ordersID linker over til orders. Products: Products består af en primary key og en foreign key som peger på producttype og en række attributter med oplysninger om produktet. Produktet kan være i en eller flere ordrer. ProductType: ProductType består af en primary key som er en INT og Category som er en varchar der beskriver i hvilken kategori produktet hører ind under. 6

7

Attribut tabel Vi har lavet en attribut tabel over entiteterne og deres attributter. Hvilket giver et overblik over hvordan det skal hænge sammen i vores database. Vi har seks entiteter som danner rammen om vores database. Alle attributter har en datatype og en værdi, for at vise hvad de enkelte attributter består af. For eksempel kan CustomerID kun bestå af tal og den skal have seks værdier. Attribut tabellen uddyber vores ER, hvor vi i denne nedskriver datatypen og værdier, som vi ikke har angivet i vores ER. I fremtiden vil vi dog sortere i placeringen af attributterne, så det bliver nemmere at kode. Så vi eksempelvis har roller før Zipcode_zipID, da Zipcode_zipID er en foreign-key fylder den mere i koden. 8

Navigationsdiagram Vi har lavet et navigationsdiagram over vores side, for at få struktur og give et bedre overblik over sidens størrelse og hvad den skulle indeholde. HTML Vi har lavet en lille hjemmeside, som vi dog ikke har brugt til noget efterfølgende men vi har valgt at vedhæfte den, da vi har brugt ressourcer på den. Da design og layout ikke var en del af opgaven, har vi ikke lagt stor vægt på dette på vores website. Vi kan dog bruge den i dette projekt til at sætte nogle retningslinjer for hvad det er vi gerne vil have skal kodes i e-shoppen. http://bysileha.com/3.semester/database-eshop/index.html Funktionelle krav User story Vi har lavet en user story over indtastning af information fra kunden, ved køb af et produkt på e-shoppen. Selvom man ikke kan lave både en user story og en use case, som vi har gjort, har vi valgt alligevel at gøre det for at øve os i at lave begge dele. Her ses hvordan e-shoppen ser ud, når en kunde skal indsætte informationer, for at få varen tilsendt. Kontaktformularen skal valideres, så kunden ikke kan få lov til at gennemføre et køb, før nogle af felterne er udfyldt korrekt. Derudover er der på bagsiden en oversigt over, hvilke fejlmeddelelser man kan få, hvis der er sket en fejl. 9

10

Nødvendige kompetencer for brug af e-shop: For at give et bedre overblik valgte vi at lave en oversigt over de forskellige muligheder kunder og administrator skulle have, på den måde var det langt nemmere for os at begynde på vores use cases og user story. Kunder har rettigheder til at: - Finde et produkt eller søge efter produkter og købe ved hjælp af e-shoppen. - Vælge produkter og se deres total pris + antal, når man har tilføjet dem til e-shoppen. - Bestille en ordre for de ønskede produkter, ved hjælp af en shopping kurv. - Betal for ordren (ved hjælp af en betalingsordning) - Ret i ordren inden den bestilles Administrator har rettigheder til at: - Adgang til de produkter der tilbydes - Adgang til en elektronisk shopping kurv - Behandle en ordre - Oprette en varer - Oprette en ordre - Tildele rettigheder 11

Use Case: Vi har lavet en use case med det formål at kunne vise, hvilke roller henholdsvis administratoren og kunderne har på vores e-shop. Vi har valgt at administratoren har adgang til alt. Nedenfor er 3 af use casene beskrevet i detaljer: 12

Beskrivelse af UC04: Navn: UC04 Identifikation: Denne use case viser hvem, der kan se varer som er oprettet på siden. Beskrivelse: Når der er oprettet varer i systemet skal det være muligt at se dem på siden. Dette er også en forudsætning for at kunden kan vælge en vare. Mål: Målet med denne use case er, at kunne se de varer der er i e-shoppen. Forudsætninger: 1. Administrator skal først oprette sig i systemet. 2. Der skal oprettes varer i systemet før man kan se dem i e-shoppen. Hyppighed: Denne use case er muligvis den der bruges mest. Er man landet på hjemmesiden for at shoppe er det en forudsætning at man kigger på varerne. Derfor vil hyppigheden være på mindst 100 gange om dagen. Grundforløb: 1. Use casen begynder når administrator/kunder går ind på siden. 2. Derefter kan kan administrator/kunder enten søge efter en varer eller blot få vist alle e-shoppens varer i en liste. Efter grundforløb: Efter kunden har set produktet skal det være muligt at vælge og købe det. Aktører: I denne use case er der to aktører nemlig kunder og administrator. Det er en forudsætning for kunden at kunne se varerne hvis han/hun skal købe dem. Men også administrator skal kunne se sine varer på hjemmesiden. 13

Beskrivelse af UC07: Navn: UC07 Identifikation: Denne use case viser hvem der kan oprette varer i databasen. Beskrivelse: For at en kunde skal kunne vælge og købe varer, skal der være nogle varer at vælge imellem i databasen. Administrator skal derfor sørge for at oprette varer, som kunden kan købe. Mål: Målet med denne use case er, at tilføje varer til databasen, således at administrator kan sælge dem. Forudsætninger: 1. Administrator skal oprette sig først i systemet. Derefter kan han oprette varer i alle systemets tilstande. Hyppighed: Denne use case bruges hver gang administrator skal oprette en ny varer til systemet. Da det er en lille shop, vil administrator ikke oprette varer så tit. Måske 2 gange om måneden. Grundforløb: Use casen begynder når administrator har logget sig ind i systemet. Varens type skal først oprettes. Dette kan administrator gøre ved selv at indtaste en varetype hvis varens type allerede er oprettet springes dette trin over. Administrator opretter en vare ved at indtaste de nødvendige informationer samt vælge en varetype Use casen afsluttes når varen er oprettet i databasen Efter grundforløb: Varen er nu oprettet i databasen og kunder kan gå ind på hjemmesiden og se/vælge produktet. Aktører: Der er kun en aktør i denne use case;; administratoren. 14

Beskrivelse af UC08: Navn: UC08 Identifikation: Denne use case viser hvem der kan vælge produkter til indkøbskurven på hjemmesiden. Beskrivelse: For at en kunde skal kunne købe varer på hjemmesiden, skal det først være muligt at vælge varerne, hvilket er hvad denne use case bruges til. Mål: Målet med denne use case er, at tilføje varer til indkøbskurven således at det derefter er muligt at kunne betale for dem. Forudsætninger: 1. Kunden skal se/finde de varer han/hun gerne vil købe. 2. Derefter skal det være muligt at han/hun kan vælge de varer som de gerne vil købe ved at trykke på læg i indkøbskurv Hyppighed: Denne use case bruges hver gang kunden har fundet en varer, som han/hun vil lægge i indkøbskurven. Dette sker omkring 10 gange om dagen. Grundforløb: 1. Use casen begynder, når kunden har set på et produkt og gerne vil lægge det i indkøbskurven 2. Kunden trykker på en knap, der skal gøre at varen bliver lagt i indkøbskurven 3. Use casen slutter dermed når varen er valgt og ligger i indkøbskurven Efter grundforløb: Den/de valgte vare(r) ligger nu i indkøbskurven og kunden kan gå videre til betalingen. Navn: I denne use case er der to aktører;; kunde og administrator. 15

Non-funktionelle krav Sikkerhed: Når kunden angiver personlige oplysninger, skal disse ikke kunne ses af andre end administratoren. Hvis kunden har været inaktiv i mere end 30 minutter og ikke har valgt at gå videre med købet, skal de indtastede oplysninger slettes automatisk. Dette vil sikre at kundens oplysninger ikke vil blive misbrugt. Performance: Websitet skal have en hurtigt response, billeder skal loade hurtigt og siden skal kunne refreshes hurtigt. Shopping kurven skal opdateres og priserne rettes alt efter varerne i kurven med det samme. Kapacitet: Da websitet primært skal fungere som e-shop, skal det have så stor kapacitet at 300 kunder kan bruge e-shoppen på samme tid. Siden skal samtidig kunne gemme en del data, da e-shoppen i fremtiden skal kunne udvide med flere produkter. Tilgængelighed: Websitet skal være tilgængeligt 24/7. Vedligeholdelse skal ske på tidspunkter, hvor der er færrest kunder, helst om natten, og siden skal altid være tilgængelig mens der er vedligeholdelse, hvis dette ikke er muligt skal det gøres, så det er til mindst mulig chikane for kunderne. Pålidelighed: E-shoppen må ikke være nede mere end 3 gange på et år. Der skal tages daglig backup af database og filer. Usability: Layout skal være simpelt og webshoppen skal være med få varer. Der skal være tjekket for stavefejl og sproget skal være på dansk i første omgang, hvis e-shoppen bliver en kæmpe succes, kan der overvejes at være en engelsk version. CRUD-matrix Vi har lavet en CRUD-matrix, som gør det nemt at identificere tabellerne i vores database. Vores CRUD har også en rød tråd til vores use case, da kundens og administratorens forhold også illustreres her. Her kan man se, hvem der har lov til at gøre hvad og hvad deres roller er. CRUD står for create, read, update og delete, som tildeles de roller man har valgt. Hvordan dette er gjort kan ses nedenfor. Vi har valgt at administratoren skal have adgang til alt stort set alt og har mulighed for at udøve alle funktionerne, hvorimod at kunden kun har mulighed for de nødvendige funktioner. 16

Konklusion På baggrund af vores store forarbejde med de forskellige analyser og modeller har vi fået et godt og gennemarbejdet produkt ud af det. I fremtiden vil vi gøre navnene på vores attributter i ER-diagrammet og attributtabellen mere overskuelige ved at bruge enten kun små bogstaver eller store bogstaver i forbogstavet således at det er nemt at kode det. Vi har brugt ressourcer på at lave en HTML-side som ikke skulle bruges alligevel men den har hjulpet os med at se projektet i sin helhed. Vi har fået godt styr på interaktionen mellem kunden og databasen og rettighederne for brugerne. Alt i projektet er veldokumenteret ud fra vores analyser men også med kommentarer i vores SQL filer, så udefrakommende hurtigt og nemt kan få indblik i projektet og eventuelt arbejde videre med det. 17

Litteraturliste Bøger: Sams Teach Yourself In Ten Minutes - Ben Forta, 2012 Hjemmesider: www.w3schools.com http://www.databaseanswers.org 18