Teknikken bag årsopgørelsen

Her i marts åbnede Skatteforvaltningen for adgangen til vores årsopgørelser for 2018, og der har været gang i Skatteforvaltningens maskinrum her i Udviklings- og Forenklingsstyrelsen, hvor vi står for teknikken bag årsopgørelsen. Læs med her og bliv klogere på, hvad der foregår bag frontenden af årsopgørelsen.

Vi sikrer drift, teknik og systemudvikling

Forberedelsen af årsopgørelsen foregår i tæt samarbejde mellem Skattestyrelsen og Udviklings- og Forenklingsstyrelsen, hvor Udviklings- og Forenklingsstyrelsen har ansvaret for den tekniske del af årsopgørelsen, hvor op mod 40 it-systemer ’taler’ sammen og sikrer, at alle ændringer i vores årsopgørelse løbende implementeres, samt at driften kører stabilt disse dage, hvor alle tjekker deres årsopgørelser. Der er i år implementeret 27 skattelovsændringer og 15 funktionelle ændringer.

- Årsopgørelsen er et fokusområde gennem hele året, men i denne periode er vi selvfølgeligt særligt optagede af, at alle systemerne spiller sammen som de skal. Det gør mig stolt at se, hvordan vi hele tiden øger kvaliteten. Vi har et rigtig godt samarbejde både mellem styrelserne og med vores leverandør, som har stået på gennem mange år. Fokus er naturligvis på at sikre en høj kvalitet, men det handler i høj grad også om godt teamwork undervejs i arbejde, siger kontorchef i Person- og Ejendomssystemer hos Udviklings- og Forenklingsstyrelsen, Jørgen Bo Madsen, om årsopgørelsen.

Årsopgørelsen er et gigantisk it-system

Systemerne bag årsopgørelsen består af en række systemer, som tilsammen udgør ét stort it-system. Hver gang der ændres i lovgivningen, skal systemerne tilpasses, hvilket er en kæmpe opgave pga. kompleksiteten i systemerne og samspillet mellem systemerne.

Grundlæggende består det samlede system af fem komponenter:

  • Et sikkerhedssystem, der analyserer, beskytter og overvåger trafikken døgnet rundt
  • Et websystem, der består af en brugergrænseflade til borgerne, hvor de selv kan foretage rettelser
  • En stor regnemaskine.
  • Et stort antal datahåndteringssystemer.
  • Et antal store databasesystemer

 

Mød en tekniker

Jørgen Bo Madsen opsummerer her teknikken bag årsopgørelsen:

  • Hvilke programmeringssprog anvender I? Samlet indeholder systemet mange millioner programmeringslinjer, og de primære programmeringssprog er Cobol på Mainframe systemerne og Java på webserversystemerne, sekundært shell-script, JCL, Python med flere. 
  • Hvorfor anvender I mainframesystemer? Hovedparten af koden ligger på mainframesystemer, der er klippestabile, og det er primært her de nye lovkrav og funktionalitet implementeres. Mainframe er en velafprøvet og robust teknologi, og systemerne er meget driftssikre og velegnede til især store datamængder. 

  • Hvordan sikrer I driften? Det samlede system er fejltolerant og baseret på to-centerdrift, hvilket sikrer den højeste driftstabilitet.

 


Teknologien bag

Teknologien spænder lige fra mainframesystemer til open source-platforme.
Mainframesystemerne er IBM zEnterprise, og websystemerne er virtuelle Linux servere med Docker container deployment. Det styres blandt andet med Ansible, Jenkins, Nexus og Maven. Løsningerne sikres med automatiseret tests med værktøjer som Cucumber, ZAPROXY, JMeter, Quality Center og Sonar Qube.
Data udveksles via WebService, API’er, fil-udveksling og datadeling. Nogle af integrationerne er en del af den fælles offentlige integrationsplatform (OIO), mens andre er interne mellem områderne i systemerne.