STOCK IMAGE SYSTEM

2019 · Fullstack · Exam Project

Beskrivelse

Dette var eksamensprojekt på første semester af professions bachelor i web udvikling, min rolle var fullstack udvikler i et team på 2. Projektet indeholdt både faget ”Interface Design” og faget ”Databaser”. Dette projekt omhandler fotografer der skal have muligheden for at sælge deres billeder, og folk der behøver specifikke billeder kan bruge systemet til at finde og købe enkelte billeder fra den enkelte fotograf og få direkte adgang til download efter køb af billede. Et Stockimage applikation, der skulle indeholde både frontend og backend løsning.

MySQL

Konceptet

Idéen bag projektet er en fotograf skal kunne oprette en profil, lave gallerier og kunne tilføje de billeder, som han ønsker at sælge under de enkelte gallerier samt modtage betaling og se en oversigt over hans salg via et dashboard.

Som almindelig bruger skal du kunne logge ind og finde forskellige billeder samt gallerier, kunne udvælge billede du ønsker at købe se nærmere på det enkelte billede i stort format, tilføje dit kreditkort til din bruger og kunne købe billeder direkte til download på siden.

Dashboard

Vi udarbejdet et dashboard som joiner tables og giver fotograferne relevant information omkring deres salg af billeder ved brug SQL-queries. Derudover valgte vi at arbejder med et graph plugin til javascript, som gjorde det muligt at vise noget af dataen mere visuelt.

Galleri - fotograf view

Galleriet set fra fotografernes perfektiv er et vigtigt element. Det skulle være nemt og overskueligt for fotografen at vide, hvordan de ændre prisen samt slettede billeder. Hvilket vi har brugt ikoner til at indikere - da det er intuitivt og symboliserende.

Notifikationer

Vi valgte at implementere notifikationer til siden, som gav et hurtigt indblik i, hvad der skete - så bruger kunne følge med i processen, når de udførte en handling på siden.

Skitser

Vi udarbejdet skitser, som vi rettede til undervejs som vi brugertestede og fandt ud af, hvordan systemet bedst skulle sættes sammen og udarbejdes. Mange brugere ønskede det skulle være minimalistisk, simpelt, brugervenligt og at billederne der blev solgt, skulle være det bægerne element på siden. Hvilket er det vores design afspejler.

Database

Her ses et ERD af databasen for projektet, som er blevet implementeret og køres med MySQL. Databasen består af 7 tables, fordelt mellem sælgere og købere. Sælger og købere bliver connected til hinanden via payments, som sker ved en stored procedure der laver en transaktion og dermed sikre, at hvis der sker en fejl – vil der blive lavet et rollback og brugeren vil derfor ikke bliver trukket for noget, hvor der opstod en fejl.

Derudover har databasen en cascade funktion som aktiveres ved fjernelsen af billeder, som stadigvæk gør det muligt for køber at havde adgang til deres købte materiale.

Mine tanker

Projektet blev tweeket lidt undervejs, fra det originale koncept vi indgav til lærerne omkring et proofing system, og blev ændret til at være et stockimage system for at til gode se de krav eksamen stillede til sådan et projekt. Systemet indeholder ikke en original payments med kort, men fiktive kort man kan betale med derinde. En idé til videre udvikling er at implementere et rigtigt betalingssystem til projektet frem for fiktive kort som var et krav til eksamen. Et spændende projekt, som alt i alt gav rigtig god mulighed for at dykke godt ned i relational databases under MySQL.

- Louise Jessen