Følgende giver en gennemgang af den tekniske løsning der er udviklet for at understøtte forretningsfunktionaliteten.
Version: 2016-4
Overblik
Figuren herunder giver et overblik over de forretningsservices, som Jobnet for Arbejdsgivere realiserer, samt de snitflader, som Jobnet for Arbejdsgivere anvender. Desuden skitseres samspil med arbejdssøgende.
Applikationsdesign
Jobnet for Arbejdsgivere løsningen er udarbejdet som en lagdelt applikation som adskilles i 3 lag. JobAG er til dels baseret på kode som er udskilt fra JobKon, derudover anvender JobAG services direkte fra DFDG og JobNet.
Presentation layer
Dette lag indeholder de enkelte websider i løsningen konstrueret ved hjælp af Microsoft ASPWEB.API version 5 og AngularJS (Desuden benyttes Microsoft ASP.MVC til bundling). I præsentationslaget ligger også stylesheet for løsningen. Websiderne konstrueres ud fra Virk.dk design manual der definerer standard brug af komponenter.
View og Controller i Angular modellen målrettes præsentationen, og konstrueres ud fra de generelle entiteter i Entitets laget som går på tværs af de øvrige lag i løsningen.
Præsentationslaget er opbygget som en SPA applikation (Single page application).
Businesslayer og servicecontroller
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.
Servicelag og forretningslag er altså ikke adskilt, men lagt sammen.
Datalayer
Dette lag består dels af serviceagenter som forbinder til DFDG Services, og returnerer data til ServiceControllers i Business laget. Service entiteter mappes til entiteter fra det fælles Entitets lag.
Tilgangen til løsningens egen database også her. Denne anvendes til underbygning af forretningsfunktionaliteten på de enkelte sider i løsningen.
Tilgangen til databasen foregå med Entity Framework med Code first og Migrations.
Common
Common laget består af flere forskellige projekter, hvoraf nogle anvendes på tværs af øvrige lag i denne løsning, og nogle anvendes på tværs af løsninger.
Database
JobAG's database indeholder ikke forretningsdata (CV'er, jobannoncer, virksomhedsdata), idet forretningsdata hentes fra services. JobAG's database indeholder brugernes login-data, brugerdata(CV-arkiver, CV-noter, gemte CV-søgninger, set-markeringer), samt logninger.
Eksterne services
JobAG anvender bl.a. følgende services:
- CompanyService (Jobnet: snitflade til virksomheder og deres kontaktpersoner)
- CvSearchService og CvService (DFDG.Jobsearch: Snitflade til at søge og indlæse CV'er)
- JobAdService (Jobnet: Snitflade til at registrere og indlæse virksomhedernes jobannoncer)
- CodeListService (DFDG: Diverse kodelister)
- JobnetCitizenMessageService (DFDG: beskeder fra borger til virksomhed (overgangsløsning)
- CompanyRecruitmentService (DFDG: jobordrer)
- SsoService (DFDG: SSO)
- CVR (CVR: opslag i CVR)
- NemLogin
Miljøer
Produktionsmiljø
Jobnet for Jobkonsulenters forretningsmoduler eksekveres i dag på en række Windows Web Servere opdelt i en række noder. Applikationen kører på samme miljø som JobKon. På nedenstående er de forskellige noder for det samlede kompleks som trækker på Jobnets Database. De brugervendte miljøer deler sig i tre dele:
- Jobnet hovedsitet
- Stor webfarm i to fysiske lag
- Administration ,Jobnet for Jobkonsulenter og Jobnet for arbejdsgivere JobAG (Trukket ud som et selvstændigt system)
- Lille webfarm i et fysisk lag
- Jobnet Mobil
- Lille webfarm i to fysiske lag (Trukket ud som et selvstændigt system)
Driftsarkitektur, Jobnet for Arbejdsgivere i rød markering (produktion).
Som det ses er Jobnet for Arbejdsgivere skaleret ud på 2 webservere med adgang til en enkelt database. Årsagen er at JobAG følger samme struktur som JobKon, da JobAG er baseret på kode og frameworks fra Jobkon..
Serverne er Microsoft Windows Baserede, og anvender følgende serversoftware:
- Windows Server 2012R2
- SQL Server 2008R2
Driftsleverandøren er KMD på driftsaftale indgået gennem Statens IT.
Testmiljø
JobAG anvender de fælles testmiljøer beskrevet i Bilag 2 situationsbeskrivelsen.
Løsningen er Microsoft baseret og vedligeholdes for det væsentligste med Microsoft standardværktøjer.
Løsningen er udviklet i:
- Microsoft.NET i C# V4.5
- MVC 5 / WEB.API version 5, Angular JS 1.4
- Entity Framework med Database first. WCF
Følgende Microsoft værktøjer anvendes ved udviklingen:
- Visual Studio 2015 Enterprise
Derudover anvendes følgende serversoftware:
- SQL Server 2008R2
- Windows Server 2012R2
Og følgende væsentlige web biblioteker:
- jquery 2.4
- modernizr 2.6
- bootstrap
- AngularJS 1.4
- Unity 4.0
Login og tilstande
Man kan logge ind i JobAG på 3 forskellige måder:
- Virksomheds kontaktperson logger ind med username / password fra forsiden. Efter login er kontaktpersonen kendt og autoriseret af systemet og kan anvende systemet.
- Virksomheds kontaktperson logger ind med NemID fra forsiden. Der er følgende mulige tilstande efter login med NemID:
- Virksomheden er ukendt i JobAG. Brugeren kan tilslutte virksomheden til JobAG og er derefter hovedkontaktperson, som kan anvende systemet.
- Virksomheden er kendt i JobAG, men medarbejdercertifikatet (RID) er ukendt. Brugeren kan tilslutte medarbejdercertifikatet til eksisterende kontaktperson og er derefter kendt og autoriseret af systemet og kan anvende systemet.
- Medarbejdercertifikatet (RID) er kendt af JobAG og tilknyttet en kontaktperson. Kontaktpersonen er kendt og autoriseret af systemet og kan anvende systemet. Dette scenarie svarer til at logge ind med username / password.
- STAR's supportmedarbejder kan logge ind på JobAG med certifikat fra AMP. STAR supportmedarbejderen er autoriseret af systemet og kan kun udføre STAR supportfunktioner. Herunder:
- STAR supportmedarbejder impersonater til en virksomheds kontaktperson, hvorefter STAR supportmedarbejder kan udføre samme funktioner, som kontaktpersonen (handlinger i denne tilstand logges og er synlige for virksomhedens hovedkontaktperson)
JobAG applikationen kan befinde sig i følgende tilstande:
Data- og trafikmængder
Datamængder
Jobnet behandler og gemmer CV’er og jobannoncer. Antallet varierer lidt fra måned til måned, her tallene fra august 2015:
- CV’er 163.000
- Jobannoncer 17.000