Krav
https://important-slouch-6b0.notion.site/Kalender-komponent-6912763109044cf984222cb499b3b84d
Løsningsforslag
Selvbygget kalenderkomponent i Angular
Fordele
Vi sikrer os, at alle krav kan opfyldes, herunder WCAG 2.1
Vi kan løbende ændre i kalenderen for at tilpasse til nye krav
Vi har kontrol over koden og skal ikke gennem en godkendelsesproces
Vi kan let konvertere komponenten til React under moderniseringsprojektet
Ulemper
Opgaven gøres mere kompleks
Potentielt større forbrug af udviklingstimer
Der er tidsforbrug associeret med at konvertere til React
Hele siden der anvender det skal opgraderes til Angular
FullCalendar - Angular
https://fullcalendar.io/docs/angular
Fordele
Samme komponent som vi har haft tidligere på Jobnet i en opdateret version
Kan let konverteres til React-komponent da FullCalendar udstiller et tilsvarende React-komponent
Tidsbesparelse i ikke at bygge fra bunden
Ulemper
Svært at ændre i grundlæggende funktionalitet
Det er svært at komme væk fra kalenderkomponenten hvis den “forlades” af udviklerholdet og ikke bliver f.eks. sikkerhedsopdateret
Der er tidsforbrug associeret med at konvertere til React
Hele siden der anvender det skal opgraderes til Angular
FullCalendar - React
https://fullcalendar.io/docs/react
Fordele
Kan let flyttes over ved modernisering
Kan bygges som et Web Component:https://reactjs.org/docs/web-components.html https://github.com/bitovi/react-to-webcomponent
Teamet får berøring med React
Kræver ikke, at siderne det skal implementeres på opgraderes til Angular
Ulemper
Komplekst at implementere i applikationen
Usete tekniske udfordringer som følge af den øgede kompleksitet
Teamet har ikke erfaring med React
Det er svært at komme væk fra kalenderkomponenten hvis den “forlades” af udviklerholdet og ikke bliver f.eks. sikkerhedsopdateret
Oprydning af kalender
Oprydning af kalenderen skal ske i Booking og på Kalendersiden. Begge sider anvender jQuery.
Hvis man bygger sin egen komponent i Angular, bør siderne også opgraderes til Angular. (30-35SP (Alt bygges igen fra bunden))
Hvis man bruger Fullcalendar som Angular-komponent, bør siden også opgraderes til Angular (25-30 SP)
Hvis man blot opdaterer standardkomponenten behøver vi ikke gøre yderligere ved siden ud over tilpasning af hvordan vi kalder komponenten. (8SP)
Hvis vi bruger React-kalenderen som et Web Component kan vi igen beholde siden som den er, dog skal der laves nogle ekstra tilpasninger, og der er også noget overhead i at få lavet en Web Component-wrapper til kalenderkomponenten. (13 SP)