Slutrapport - M0hammed-1brahim/frugalCompany GitHub Wiki
Slutrapport – Frugal Company
Abstrakt
Det här projektet syftade till att utveckla en e-handels webbsida med kundvagnsfunktion för försäljning av datorkomponenter. Genom kravstyrd utveckling, automatiserade tester och UI-komponenter har projektet utvecklats till en funktionell webbapplikation. Projektet implementerar WCAG-testning, PHP-backend med databaskoppling. Rapporten reflekterar över vad som fungerade bra, vilka svårigheter som uppstod samt vilka lärdomar som tagits inför framtida projekt eller framtida releases i projektet.
Inledning och Bakgrund
Syfte:
Att skapa en interaktiv webbshop med funktionell kundvagn, kopplad till en SQL-databas och testbar enligt moderna webbutvecklingskrav.
Genomförande:
Projektet utvecklades iterativt över 7 sprintar. Kodbasen består av PHP (backend), JS/HTML/CSS (frontend), med stöd från bibliotek som Jest
, PHPUnit
, Lighthouse
och ESLint
. Applikationen körs via Render.
- Teknik:
- PHP + MySQL
- JavaScript + DOM
- CSS för layout/responsivitet
- Lighthouse för WCAG-testning
- Gitlab & GitHub Projects med CI/CD pipeline
- Docker, Render (för deployment)
✅ Positiva Erfarenheter
Erfarenhet | Analys | Hur upprepa? |
---|---|---|
Automatisk testning med PHPUnit & Jest | Gav snabbt feedback och ökade tryggheten i kodändringar. | Använd samma struktur i framtida projekt. Ha testfall redo tidigt. |
Databasintegration med PHP fungerade stabilt | Tidigt byggt med förberett SQL-schema. | Återanvänd mallar och modularisera DB-anslutning. |
CI/CD via GitHub | Automatisk validering och testning sparade tid. | Ska vara standard i framtida projekt. |
Tillgänglighetsanalys via Lighthouse | Identifierade riktiga UI-brister (t.ex. knappar utan namn). | Inför lighthouse-tester i varje release. |
❌ Negativa Erfarenheter
Erfarenhet | Analys | Hur undvika? |
---|---|---|
Frontend hårdkodad i början | Försenade övergången till backend. | Börja tidigare med API i början efter en snabb initiering på frontend. |
WCAG-fel pga saknade aria-labels |
Ignorerades i början, upptäcktes sent via Lighthouse. | Använd WCAG-checklista redan från designstadiet. |
Tidsuppskattning för krav var felaktig | Underskattade komplexitet i cart-logik vilket gjorde andra krav inte blev implementerade. | Lägg in mer beskrivning och planera i små steg. |
Lärdomar
- PHP & MYSQL
- Driftsättning & CI/CD Pipeline
- Documentering professionellt: (Ex. Kravspecifikationer, Testspecifikationer & README)
- Automatiserade tester
- WCAG & GDPR
Sammanfattning:
Projektet Frugal Company uppfyller majoriteten av sina funktionella och tekniska krav. Applikationen är fullt användbar, testbar och integrerad med databas. Dock finns fortsatt förbättringspotential i:
- Tillgänglighet (WCAG nivå AA)
- Produktalternativ/förslag (merförsäljning)
- Användarkonton och orderhistorik
README och kodkommentarer har skrivits för att underlätta överlämning, vid vidareutveckling eller för nya utvecklare som tar över projektet.
Överlämning & Framtidsplan
-
PHP Linting med
PHP Code Sniffer
-
Implementering av inloggningsfunktionalitet med sessions- och databashantering (enligt LG-krav)
-
Popup-produktdetaljer med teknisk info (enligt KV1.8-krav)
-
Fler automatiserade tester (
PHPUnit
,Jest
) -
Utveckling av
README
och förbättrad koddokumentation -
WCAG-refaktorering (nuvarande 81/100) — målet är att uppnå minst 95/100 enligt lighthouse google poäng system.