Skip to content

Commit 3de2006

Browse files
authored
Update Rapport beskrivelser
1 parent de0c54a commit 3de2006

File tree

1 file changed

+21
-5
lines changed

1 file changed

+21
-5
lines changed

Rapport beskrivelser

+21-5
Original file line numberDiff line numberDiff line change
@@ -107,16 +107,32 @@ Oversikt over frontend-backend-database strukturen.
107107
Bruk av Javalin for API, PostgreSQL for datalagring og Kotlin for backend.
108108

109109
3.2.3 Tekniske utfordringer
110-
Under utviklingen av URL-forkorteren oppstod utfordringer knyttet til databasehåndtering, autentisering, API-kommunikasjon og responsiv UI-design. For å sikre unike korte URL-er vurderte vi flere genereringsmetoder og implementerte en sjekk i databasen for å hindre duplisering. Autentiseringsløsningen måtte tilpasses tidsbegrensninger, og vi gikk fra OAuth 2.0 til en enklere token-basert løsning før vi senere optimaliserte sikkerheten. Frontend-design møtte utfordringer med responsivitet, som ble løst gjennom iterasjoner med grid-layout og Tailwind CSS. API-feilhåndtering ble forbedret med logging og tydelige statuskoder, mens klikkstatistikk ble implementert ved hjelp av en egen tabell med asynkron oppdatering for å redusere belastningen på databasen.
110+
Under utviklingen av URL-forkorteren oppstod utfordringer knyttet til databasehåndtering, autentisering,
111+
API-kommunikasjon og responsiv UI-design. For å sikre unike korte URL-er vurderte vi flere genereringsmetoder og
112+
implementerte en sjekk i databasen for å hindre duplisering. Autentiseringsløsningen måtte tilpasses tidsbegrensninger,
113+
og vi gikk fra OAuth 2.0 til en enklere token-basert løsning før vi senere optimaliserte sikkerheten.
114+
Frontend-design møtte utfordringer med responsivitet, som ble løst gjennom iterasjoner med grid-layout og Tailwind CSS. API-feilhåndtering ble forbedret med logging og tydelige statuskoder,
115+
mens klikkstatistikk ble implementert ved hjelp av en egen tabell med asynkron oppdatering for å redusere belastningen på databasen.
111116

112117
3.3 Utviklingsprosessen
113-
Backend-utviklingen ble prioritert i tidlig fase for å sikre stabilitet i databasekommunikasjon og API-håndtering før frontend-integrasjon. Vi etablerte en klar systemarkitektur, med PostgreSQL som database og H2 for lokal testing. API-strukturen ble designet for enkelhet og sikkerhet, mens GitHub ble brukt til versjonskontroll med separate grener for utvikling og testing. Frontend-teamet startet utviklingen etter at backend-funksjonaliteten var stabil, noe som muliggjorde raskere testing og iterasjoner. Vi brukte Javalin for API-håndtering og bygde en sømløs frontend-backend-integrasjon.
118+
Backend-utviklingen ble prioritert i tidlig fase for å sikre stabilitet i databasekommunikasjon og API-håndtering før frontend-integrasjon.
119+
Vi etablerte en klar systemarkitektur, med PostgreSQL som database og H2 for lokal testing. API-strukturen ble designet for enkelhet og sikkerhet,
120+
mens GitHub ble brukt til versjonskontroll med separate grener for utvikling og testing. Frontend-teamet startet utviklingen etter at backend-funksjonaliteten var stabil,
121+
noe som muliggjorde raskere testing og iterasjoner. Vi brukte Javalin for API-håndtering og bygde en sømløs frontend-backend-integrasjon.
114122

115123
3.3.1 UI/UX Design og skisser
116-
For å skape en intuitiv brukeropplevelse utviklet vi tidlige skisser i Figma. Designet fokuserte på enkelhet og tydelig informasjonsstruktur. Tidlige iterasjoner viste behov for forbedret skalering, noe som førte til justeringer i layout, farger og typografi. Designet ble tilpasset NAVs retningslinjer for å sikre god brukervennlighet og tilgjengelighet. Endelige skisser viste forbedringer i struktur, navigasjon og responsivitet sammenlignet med første versjon.
124+
For å skape en intuitiv brukeropplevelse utviklet vi tidlige skisser i Figma.
125+
Designet fokuserte på enkelhet og tydelig informasjonsstruktur. Tidlige iterasjoner viste behov for forbedret skalering,
126+
noe som førte til justeringer i layout, farger og typografi. Designet ble tilpasset NAVs retningslinjer for å sikre god brukervennlighet og tilgjengelighet.
127+
Endelige skisser viste forbedringer i struktur, navigasjon og responsivitet sammenlignet med første versjon.
117128

118129
3.3.1.2 Utvikling av flyten
119-
Et Use Case-diagram ble utviklet for å tydeliggjøre interaksjonen mellom brukere og systemet. Diagrammet viste hvordan brukere kan generere korte URL-er, mens NAV-ansatte har administrative rettigheter. Et aktivitetsdiagram illustrerte den tekniske arbeidsflyten fra innsending av en lang URL til lagring og henting av korte URL-er i databasen. Dette ga en strukturert oversikt over hvordan systemet håndterer brukernes forespørsler.
130+
Et Use Case-diagram ble utviklet for å tydeliggjøre interaksjonen mellom brukere og systemet.
131+
Diagrammet viste hvordan brukere kan generere korte URL-er, mens NAV-ansatte har administrative rettigheter.
132+
Et aktivitetsdiagram illustrerte den tekniske arbeidsflyten fra innsending av en lang URL til lagring og henting av korte URL-er i databasen.
133+
Dette ga en strukturert oversikt over hvordan systemet håndterer brukernes forespørsler.
120134

121135
3.3.1.3 Databaseutforming
122-
Databasen ble designet med fokus på effektiv lagring av forkortede URL-er og tilhørende metadata. PostgreSQL ble valgt som primær database, mens H2 ble brukt for testing. Vi implementerte indeksering for raskere oppslag, samt en dedikert tabell for logging av klikk på URL-er. Databaseoppsettet inkluderer tabeller for brukere, forkortede URL-er, klikkstatistikk og systemlogging for å sikre sporing og vedlikehold av data.
136+
Databasen ble designet med fokus på effektiv lagring av forkortede URL-er og tilhørende metadata. PostgreSQL ble valgt som primær database,
137+
mens H2 ble brukt for testing. Vi implementerte indeksering for raskere oppslag, samt en dedikert tabell for logging av klikk på URL-er.
138+
Databaseoppsettet inkluderer tabeller for brukere, forkortede URL-er, klikkstatistikk og systemlogging for å sikre sporing og vedlikehold av data.

0 commit comments

Comments
 (0)