Overordnet løsningsdesign i REVI

Indhold

Applikationsdesign

Overordnet arkitektur

Herunder ses et overordnet systemlandskab. Bemærk at der ikke er nogle eksterne systembrugere. Alle aktører er fysiske brugere. De eneste tekniske snitflader er

  • AMPortalen, der benyttes som sikkerhedskomponent

  • DFDGs kodeliste service (dvs. en meget lille afhængighed).

Brugergrænseflade

Løsningen er udviklet som en veladskilt brugergrænseflade skrevet i JQuery/Html5. Alle data til og fra frontend leveres i JSON via det underliggende WebApi (uden Swagger).

Forretnings- og servicelag

Dette lag samler de data, der skal bruges for at understøtte præsentationslaget. Dette gøres ved at kalde de nødvendige services for at opsamle data. Desuden implementeres relevant forretningslogik her.

Der er implementeret skarp opdeling imellem funktionalitet som læser og funktionalitet som skriver (CQS), hvilket gennemtvinges af designmønstre. Dette sikrer en ekstrem høj grad af ensartethed igennem forretningslaget.

Services udstilles via ASP.NET Core WebApi.

Datalag

Datalaget tilgår data primært fra databasen. Entify Framework Core benyttes som ORM.

Der benyttes migrations for at styre database ændringer.

Snitflader

Der er ingen indgående snitflader. Revi integrerer imod DFDGs CodeListService, samt gennemfører sikkerhed via AMPortalen. Se tegning i afsnit 4.1.1.

Batchjobs

Der er ingen batchjobs tilknyttet løsningen.

Miljøer

Produktionsmiljø

Revi hostes separat fra DFDG og Jobnet.

Testmiljø

Revi hostes separat fra DFDG og Jobnet.

Teknologier og værktøjer

Løsningen benytter følgende primære teknologier og værktøjer

·   .NET Core 3.1 (C# 8.0)

·   WebAPI (REST/Json)

·   Entity Framework Core 3.1

·   Star.Foundation (beskrevet i underbilag V, Fælleskomponenter)

·   FluentMigrator

·   JQuery

·   Bootstrap

·   Handlebars

·   SqlServer 2016

·   Windows Server 2019

Data- og trafikmængder

Datamængder

n/a

Trafikmængder

Løsningen idriftsættes efter dette dokument er udarbejdet, hvorfor der ikke findes aktuelle tal for trafikmængder.