Case

Full Stack Film Applikation

Software & Arkitektur

I dette projekt arbejdede jeg i et 4 personers team, hvor vi udviklede en full stack film applikation til at søge og bookmarke film fra IMDb. Applikationen er designet fra bunden med en PostgreSQL database, backend og en single page application til frontend.

I dette projekt arbejdede jeg i et 4 personers team, hvor vi udviklede en full stack film applikation til at søge og bookmarke film fra IMDb. Applikationen er designet fra bunden med en PostgreSQL database, backend og en single page application til frontend.

Projektoversigt

Udfordring

Designe og levere en full-stack søgeapplikation med robust backend- og datalag i et team.

Rammebetingelser

  • Fire-personers team med delte ansvarsområder.
  • Behov for både feature-leverance og stærkt database/query-design.
  • Tidsbegrænset projekt med krav om tests.

Tiltag

  • Designede normaliseret PostgreSQL-schema og ER-model til søge-use-cases.
  • Implementerede lagdelt backend-arkitektur med ASP.NET Core og Entity Framework.
  • Byggede SPA-flows og integrerede sikre, paginerede REST API-kald.

Resultater

  • Leverede en end-to-end applikation til filmsøgning og bookmarking.
  • Implementerede avanceret søgning med ranking og søgehistorik.
  • Anvendte unit- og integrationstests på centrale serviceflows.

I dette projekt arbejdede jeg i et 4 personers team, hvor vi udviklede en full stack film applikation til at søge og bookmarke film fra IMDb. Applikationen er designet fra bunden med en PostgreSQL database, backend og en single page application til frontend.

Link til kode:
https://github.com/ThomasBonderup/RAWDATA-project-group-1

https://github.com/ThomasBonderup/RAWDATA1-portfolio-subproject-2

Database design

Jeg var med til at udarbejde et relationelt database design med database normalisering og E-R-modeller til film applikationen.

Database funktionalitet

Der blev udviklet database forespørgsel funktionalitet til at søge efter filmtitler, trigger functions til at gemme bruger forespørgsler i en søgehistorik tabel, udvidet søgefunktionalitet til at søge efter filmtitler baseret på titel, plot, karakterer og skuespiller, exact-match-forespørgsel med inverted indeks for at matche intersecting søgeord, VARIADIC arrays, søge rangering funktionalitet.

Applikationsdesign

Backend-systemet blev udviklet i ASP.NET Core med C#. Arkitekturen bestod af en lagdelt softwarearkitektur med et Web Service Layer udviklet i ASP.NET Core MVC til at levere et REST API, der kommunikerer med et Data Access Layer med Entity Framework gennem Data Transfer Objects for at få data gemt i en PostgreSQL-database, der kører på en server.

Der blev tilføjet pagination til REST API’et og grundlæggende it-sikkerhed for API’et med brugergodkendelse. Unit test og integrationstest blev brugt flittigt i projektet.

Single Page Application

Film applikationen blev designet som en Single Page Application (SPA) med funktionalitet udviklet i JavaScript og Knockout web-framework. Bootstrap blev brugt til UX.

Har du brug for lignende resultater?

Jeg kan hjaelpe med at vurdere din nuvaerende arkitektur og afgraense en pragmatisk implementeringsplan.

Drøft et lignende projekt

Del dit nuvaerende setup og det oenskede resultat.

Foretrækker du direkte kontakt? Ring på +45 22 39 34 91 eller skriv til tb@tbcoding.dk.

Bedst til teams med arkitektur-, stabilitets-, security- eller leverance-risiko i kritiske systemer.

Typisk svartid: 1-2 dage