Skip to content

Commit

Permalink
Added english description of Correspondence transition solution and c…
Browse files Browse the repository at this point in the history
…orrected use of terms related to "Arbeidsflate".
  • Loading branch information
Ragnar Inge Fatland committed Dec 10, 2024
1 parent b32caf7 commit aeef0bf
Show file tree
Hide file tree
Showing 7 changed files with 183 additions and 39 deletions.
2 changes: 1 addition & 1 deletion content/correspondence/news-and-plans/_index.nb.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ tjenestereiere og brukere være over på ny løsning. Altinn 2 plattformen skal

### De viktigste nyhetene i Altinn 3 Melding (foreløpig oversikt)

- Forbedret sluttbrukeropplevelse gjennom nytt brukergrensesnitt i Felles arbeidsflate.
- Forbedret sluttbrukeropplevelse gjennom nytt brukergrensesnitt i Arbeidsflate.
- Støtte for å sende lenker til meldingsinnhold og vedlegg,
som alternativ til å sende meldingsinnhold og vedlegg direkte i meldingene.
Filene kan lagres i Altinn 3 Melding Fillager eller i avsenders foretrukne løsning.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ The following figure gives a high level solution overview.

![Altinn 3 Correspondence High Level Solution Overview](altinn3-correspondence-solution-overview-en.png "Altinn 3 Correspondence High Level Solution Overview")

## Integration with Dialogporten and Felles arbeidsflate
## Integration with Dialogporten and Arbeidsflate

![Integration with Dialogporten and Felles arbeidsflate](altinn3-correspondence-and-dialogporten-en.png "Integration with Dialogporten and Felles arbeidsflate")
![Integration with Dialogporten and Arbeidsflate](altinn3-correspondence-and-dialogporten-en.png "Integration with Dialogporten and Arbeidsflate")
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ Følgende figur gir en oversikt over de vikigste byggeklossene i overordnet løs

![Byggeklosser i Altinn 3 Melding - overordnet løsningsarkitektur](altinn3-correspondence-solution-overview-nb.png "Byggeklosser i Altinn 3 Melding - overordnet løsningsarkitektur")

## Integrasjon med Dialogporten og Felles arbeidsflate
## Integrasjon med Dialogporten og Arbeidsflate

![Integrasjon med Dialogporten and Felles arbeidsflate](altinn3-correspondence-and-dialogporten-nb.png "Integrasjon med Dialogporten and Felles arbeidsflate")
![Integrasjon med Dialogporten and Arbeidsflate](altinn3-correspondence-and-dialogporten-nb.png "Integrasjon med Dialogporten and Arbeidsflate")
119 changes: 119 additions & 0 deletions content/correspondence/transition/_index.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,126 @@ toc: false
weight: 60
---

# Overall Strategy

To simplify the transition from Altinn 2 to the Altinn 3 version of the Correspondence product, an overall strategy has been followed aiming to balance complexity and user-friendliness for all parties.

- Altinn 3 Correspondence largely has the same data model as Altinn 2 to enable mapping/migration.
- All Altinn 2 Correspondences and attachments are migrated into Altinn 3 Correspondence.
- All Altinn 2 Correspondence services with data will be created as Altinn 3 Correspondence services.
- Data/metadata is migrated in a process that also makes the elements available in the Dialogporten and Arbeidsflate.
- Migration of historical data will take time (weeks/months), and the transition solution is built with this in mind.
- Eventually, the migration job will "catch up" with live/fresh data, so the elements can be made available in Altinn 3 shortly after they were created in Altinn 2.
- To become independent of the production date for the new Arbeidsflate, Altinn 3 Correspondences are made available in the Altinn 2 Portal for end users.
- No transition solution is made for API endpoints:
- End-user systems and Service Owner systems must maintain integration with both Altinn 2 and Altinn 3 during a transition period.

## Display of Altinn 3 Correspondence in Altinn 2 Portal

To quickly have a GUI solution for end users independent of the delivery of the Arbeidsflate, the current Altinn 2 portal is extended to fetch and display Altinn 3 Correspondences.

This enables a similar user experience for end users who do not receive Correspondences via end-user systems.

The display will be largely similar to the existing display of Altinn 2 Correspondences, but with some differences.

- No "Archive" button

## Migration of Service Configuration

Altinn's "Move Data" project will take responsibility for migrating all necessary configuration from Altinn 2 to Altinn 3 and will create this on behalf of Service Owners.

Due to a simplification of service configuration in Altinn 3 for Correspondences, this only consists of:

- Creating a resource in the Resource Registry based on the Altinn 2 service
- Authorization rules/policy for access control.

There are some new metadata fields such as service description in different languages that cannot be automatically filled out and should be filled out by the Service Owner afterward.

## Migration of Correspondence Data and Attachments

The "Move Data" project will take responsibility for migrating all historical Correspondences and attachments to the new solution.

- A batch-based job will migrate Correspondences and associated attachments from Altinn 2 to Altinn 3.
- The migrated version of an element will have a reference to its old Altinn 2 version, exposed in the field: "Altinn2CorrespondenceId" in the [CorrespondenceOverview endpoint](../reference/API-endpoints/)
- After migration, the elements will no longer be available in the Altinn 2 API.
- But they are now available on par with other Altinn 3 Correspondences; via Altinn 3 API, Dialogporten, Workspace, and Altinn 2 Portal.
- No data is deleted; the Correspondences are only flagged in the database, and it is possible to perform the migration again and/or manually retrieve data if needed.

The migration will take place over time, and there is flexibility to control which services are migrated and what criteria are used to prioritize the elements.

### Migration Criteria

To avoid the need to build complex logic for synchronization across systems, the process has been simplified by allowing the Service Owner to define a minimum time interval "**migration wait time**" per service.

Based on the analysis of Correspondence usage, most activity on a Correspondence occurs shortly after it is created and shortly after associated notifications and re-notifications have been sent out.
For most; within 14 days of creation.

By delaying migration until after this period, there is no need to handle complex logic for synchronizing changes to the Correspondence such as read confirmation, deletion, and archiving across systems.

As end users and end-user systems integrate with Altinn 3 and use it as their main channel, the **migration wait time** can be reduced so that elements can be migrated a few minutes after creation.

### Detailed Migration Process per Element

The migration process will be divided into several steps to reduce risk and can be controlled per Correspondence, with the ability to delete data and restart the process.
No data is deleted from Altinn 2.

1. Migration of Correspondence data and attachments from Altinn 2 to Altinn 3, using the service configuration created [above](#migration-of-service-configuration).
2. Creation of the migrated Correspondence in the Dialogporten.
3. Blocking access to the Altinn 2 version of the element.

During migration, status history including notification information up to the time of migration is included.

Initially, each of these steps will be triggered manually by the Move Data team, but eventually, as full production for all components approaches, it will be handled automatically in a single process.

### Synchronization of Status Changes between Altinn 2 and 3

There will be no synchronization of status changes on Correspondences or notifications between the two solutions after migration is completed.

Existing status/history will be migrated in step 1, and after step 3, the Altinn 2 element is blocked from further changes.

This is to avoid significant technical complexity and dependencies across systems.

## Consequences for the Parties

Here is a brief summary of the consequences of the chosen transition and migration solution for the different parties:

### Service Owner

- When creating the Correspondence in the API, the Correspondence is created in the environment being called ("home" of the element).
- If in A2, migration will occur to A3 after **migration wait time**, but notification will be completed in A2 regardless of migration.
- If in Altinn 3, the Correspondence will be available in the Altinn 2 Portal.
- Checking the status of a Correspondence created in A2 must be done against A2 and possibly then against A3 after migration.
- Since migration is performed after **migration wait time**, it is assumed that the Service Owner does not need to check for the same element in both A2 and A3, but that changes of interest have already occurred in A2.
- Integration with Altinn 3 API is required to create/follow up on new Correspondences there.
- They can use the migrated services or establish entirely new ones.

### End Users

Via Altinn 2 portal:

- Get a full overview in the Altinn portal of both Altinn 2 and 3 elements.
- When they open an Altinn 3 element, it is displayed in the Altinn 2 Portal, similar to an Altinn 2 element.

Via End-User System:

- First get Altinn 3 elements when the End-User System has integrated with A3.

Via Arbeidsflate:

- Get Correspondences created in Altinn 3, as well as those that have been migrated.
- Correspondences in Altinn 2 that have not been migrated will not be available.

### End-User System

- To get a full overview of elements, integration with both Altinn 2 and Altinn 3 API is required.
- When elements are migrated from A2 to A3, it is possible to identify this by the A3 element containing the Altinn 2 Correspondence ID.
- This makes it possible to exclude any duplicates.
- When the element is migrated, the End-User System must be integrated with the Altinn 3 API to continue working with it.
- But given that migration occurs after the expected active period, there should be no need.

### Dialogporten and Arbeidsflate

- Altinn 2 elements are not made available until they are migrated, but migration can occur relatively quickly after they are created in Altinn 2 (controlled by **migration wait time**).


{{<children />}}
85 changes: 55 additions & 30 deletions content/correspondence/transition/_index.nb.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,25 @@ weight: 60

For å forenkle overgangen fra Altinn 2 til Altinn 3 versjon av Melding-produktet, så har man fulgt en overordnet strategi som har hatt som mål å balansere kompleksitet og brukervennlighet for alle parter.

- Altinn 3 Correspondence har i stor grad lik datamodell som Altinn 2 for å muliggjøre mapping/migrering.
- Alle Altinn 2 Correspondence elementer migreres inn i Altinn 3 Correspondence.
- Altinn 3 Melding har i stor grad lik datamodell som Altinn 2 for å muliggjøre mapping/migrering.
- Alle Altinn 2 Meldinger og vedlegg migreres inn i Altinn 3 Melding.
- Alle Altinn 2 Meldingstjenester med data blir opprettet som Altinn 3 Meldingstjenester.
- Man migrerer data/metadata i en prosess som samtidig tilgjengeliggjør elementene i Dialogporten og Samlet Arbeidsflate.
- Man migrerer data/metadata i en prosess som også tilgjengeliggjør elementene i Dialogporten og Arbeidsflate.
- Migrering av historiske data vil ta tid (uker/måneder), og overgangsløsning bygges med dette i mente.
- Til slutt vil migreringsjobben «ta igjen» Live/Ferske data, slik at elementene kan tilgjengeliggjøres i Altinn 3 kort tid etter at de var opprettet i Altinn 2.
- For å gjøre seg uavhengig av produksjonsdato for nye Samlet Arbeidsflate, så tilgjengeliggjøres Altinn 3 Meldinger i Altinn 2 Portal for sluttbrukere.
- Til slutt vil migrerings-jobben «ta igjen» Live/Ferske data, slik at elementene kan tilgjengeliggjøres i Altinn 3 kort tid etter at de var opprettet i Altinn 2.
- For å gjøre seg uavhengig av produksjonsdato for nye Arbeidsflate, så tilgjengeliggjøres Altinn 3 Meldinger i Altinn 2 Portal for sluttbrukere.
- Det lages IKKE overgangsløsning for API-endepunkter:
- Sluttbrukersystemer må opprettholde integrasjon mot både Altinn 2 og Altinn 3 i en overgangsperiode.
- Sluttbrukersystemer og Tjenesteeiersystemer må opprettholde integrasjon mot både Altinn 2 og Altinn 3 i en overgangsperiode.

## Visning av Altinn 3 Melding i Altinn 2 Portal

For å raskt ha på plass en GUI-løsning for sluttbrukere uavhengig av leveransen av Arbeidsflate, utvides dagens Altinn 2 portal til å kunne hente ut og vise Altinn 3 Meldinger.

Dette muliggjør en tilsvarende brukeropplevelse for sluttbrukere som ikke mottar meldinger via sluttbrukersystem.

Visningen blir i stor grad lik som eksisterende visning av Altinn 2 meldinger, men med enkelte differanser.

- Ingen "Arkiver" knapp

## Migrering av tjenestekonfigurasjon

Expand All @@ -36,22 +46,14 @@ Det er enkelte nye metadata-felter som tjenestebeskrivelse på forskjellige spr

"Flytt av data"-prosjektet vil ta ansvar for å migrere alle historiske meldinger og vedlegg til ny løsning.

- En batch-basert jobb vil migrere meldingselementer og vedlegg fra Altinn 2 til Altinn 3.
- Den migrerte versjonen av et element vil ha en referanse til sin gamle Altinn 2 versjon, eksponert i feltet: "Altinn2CorrespondenceId" i [CorrespondenceOverview]()
- En batch-basert jobb vil migrere meldinger og tilhørende vedlegg fra Altinn 2 til Altinn 3.
- Den migrerte versjonen av et element vil ha en referanse til sin gamle Altinn 2 versjon, eksponert i feltet: "Altinn2CorrespondenceId" i [CorrespondenceOverview endpoint](../reference/API-endpoints/)
- Etter migrering vil elementene ikke lenger være tilgjengelig i Altinn 2 API.
- Men de er nå tilgjengelige på lik linje med andre Altinn 3 Meldinger; via Altinn 3 API, Dialogporten, Arbeidsflate, samt Altinn 2 Portal.
- Ingen data saneres; meldingene blir kun flagget i databasen, og det er mulig å utføre migrering på nytt og/eller hente ut data manuelt ved spesielle behov.

Migreringen vil foregå over tid, og man har fleksibilitet til å styre hvilke tjenester man migrerer for, og hvilke kriterier man har for å prioritere elementene.

Migreringsprosessen vil være delt opp i flere steg for å redusere risiko, og vil kunne styres per melding, med mulighet for å slette og starte prosessen på nytt.

1. Migrering av ikke-arkiverte meldingsdata og vedlegg fra Altinn 2 til Altinn 3, der vi benytter tjenestekonfigurasjon opprettet [over](#migrering-av-tjenestekonfigurasjon).
2. Opprettelse av migrert melding i Dialogporten.
3. Sperring av tilgang til Altinn 2-versjonen av elementet.

I starten vil hvert av disse stegene trigges manuelt av Flytt av data-teamet, men på sikt når man nærmer seg full produksjonssetting for alle parter, vil det kunne håndteres automatisk i 1 prosess.

### Kriterier for migrering

For å unngå behovet for å bygge kompleks logikk for synkronisering på tvers har man valgt å forenkle prosessen ved å la TjenesteEier definere et minimum tidsintervall "**migreringsventetid**" per tjeneste.
Expand All @@ -61,22 +63,44 @@ For de fleste; innenfor 14 dager etter opprettelse.

Ved å utsette migrering til etter dette tidsrommet slipper man å ivareta kompleks logikk for å synkronisere endringer på meldingen som: lesebekreftelse, sletting og arkivering på tvers.

Etter hvert som sluttbrukere og sluttbrukersystemer har integrert seg mot Altinn 3 og bruker det som sin hoved-kanal, kan man redusere migreringsventetiden slik at elementene kan migreres få minutter etter opprettelse.
Etter hvert som sluttbrukere og sluttbrukersystemer har integrert seg mot Altinn 3 og bruker det som sin hoved-kanal, kan man redusere **migreringsventetiden** slik at elementene kan migreres få minutter etter opprettelse.

### Migreringsprosess i detalj per element

Migreringsprosessen vil være delt opp i flere steg for å redusere risiko, og vil kunne styres per melding, med mulighet for å slette data og starte prosessen på nytt.
Ingen data saneres fra Altinn 2.

1. Migrering av meldingsdata og vedlegg fra Altinn 2 til Altinn 3, der vi benytter tjenestekonfigurasjon opprettet [over](#migrering-av-tjenestekonfigurasjon).
2. Opprettelse av migrert melding i Dialogporten / Arbeidsflate.
3. Sperring av tilgang til Altinn 2-versjonen av elementet.

Ved migrering inkluderes statushistorikk inkludert varslingsinformasjon frem til tidspunktet migrering skjer.

I starten vil hvert av disse stegene trigges manuelt av Flytt av data-teamet, men på sikt når man nærmer seg full produksjonssetting for alle komponenter, vil det kunne håndteres automatisk i en og samme prosess.

### Synkronisering av statusendringer mellom Altinn 2 og 3

Det vil ikke være noe synkronisering av statusendringer på melding eller varslinger mellom de 2 løsningene etter at migrering er utført.

Eksisterende status/historikk blir migrert over i steg 1, og etter steg 3 sperres Altinn 2 elementet for flere endringer.

Dette for å unngå stor teknisk kompleksitet og avhengighet på tvers.

# Konsekvenser for partene
## Konsekvenser for partene

Her er en kort oppsummering av hvilke konsekvenser valgt overgangs- og migreringsløsning har for de forskjellige partene:

## Konsekvens for Tjenesteeier
### Tjenesteeier

- Ved InsertCorrespondence opprettes meldingen i miljøet som kalles («hjemstedet» til elementet).
- Dersom A2 vil det etter hvert migreres til A3, men varsling vil fullføres i A2 uavhengig av migrering.
- Sjekk av status på Correspondence opprettet i A2 må gjøres mot A2 og eventuelt deretter A3 etter migrering.
- Siden migrering først utføres etter migreringsventetid, antas det at TE ikke trenger å sjekke for samme element i både A2 og A3.
- Må integrere seg mot Altinn 3 API for å opprette/følge opp nye meldinger der.
- Ved opprettelse av meldingen i API, blir meldingen opprettet i miljøet som kalles («hjemstedet» til elementet).
- Dersom i A2 vil migrering skje til A3 etter **migreringsventetid**, men varsling vil fullføres i A2 uavhengig av migrering.
- Dersom i Altinn 3, så vil meldingen være tilgjengelig i Altinn 2 Portalen.
- Sjekk av status på Melding opprettet i A2 må gjøres mot A2 og eventuelt deretter mot A3 etter migrering.
- Siden migrering først utføres etter **migreringsventetid**, antas det at TE ikke trenger å sjekke for samme element i både A2 og A3, men at endringer av interesse allerede har skjedd i A2.
- Man må integrere seg mot Altinn 3 API for å opprette/følge opp nye meldinger der.
- De kan bruke de migrerte tjenestene, eller etablere helt nye.

## Konsekvens for Sluttbrukere
### Sluttbrukere

Via Altinn 2 portal:

Expand All @@ -85,22 +109,23 @@ Via Altinn 2 portal:

Via Sluttbrukersystem:

- Får først opp Altinn 3 elementer når Sluttbrukersystem BS har integrert seg mot A3.
- Får først opp Altinn 3 elementer når Sluttbrukersystem har integrert seg mot A3.

Via Samlet Arbeidsflate:
Via Arbeidsflate:

- Får opp meldingene som er opprettet i Altinn 3, samt de som er blitt migrert.
- Meldinger i Altinn 2 som ikke er blitt migrert, vil ikke være tilgjengelig.

## Konsekvens for SluttbrukerSystem
### SluttbrukerSystem

- For å få full oversikt over elementer vil man måtte integrere seg mot både Altinn 2 og Altinn 3 API.
- Når elementer blir migrert fra A2 til A3 vil det mulig å identifisere dette ved at A3-elementet inneholder Altinn 2 Correspondence ID.
- Dette gjør det mulig å utelukke evt. duplikater.
- Når elementet er migrert, så må SBS være integrert mot Altinn 3 API for å jobbe videre med det.
- Men gitt at det migreres etter forventet aktiv tidsrom, burde det ikke være behov.

## Konsekvens for Dialogporten og Samlet Arbeidsflate
### Dialogporten og Arbeidsflate

- Altinn 2 elementer blir ikke tilgjengeliggjort før de er migrert, men migrering kan skje relativt raskt etter at de er opprettet i Altinn 2.
- Altinn 2 elementer blir ikke tilgjengeliggjort før de er migrert, men migrering kan skje relativt raskt etter at de er opprettet i Altinn 2 (styrt av **migreringsventetid**).

{{<children />}}
Loading

0 comments on commit aeef0bf

Please sign in to comment.