-
Notifications
You must be signed in to change notification settings - Fork 43
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into feature/likert-divider
- Loading branch information
Showing
19 changed files
with
490 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
--- | ||
title: Transition solution | ||
linktitle: Transition solution | ||
description: Transition solution for Altinn Correspondence | ||
tags: [] | ||
toc: true | ||
weight: 60 | ||
--- | ||
|
||
{{% notice warning %}} | ||
This section of the documentation is a work in progress. | ||
There are sections with missing or only partial documentation. | ||
Some functionality is still under analysis and development, and does not represent the final production version. | ||
{{% /notice %}} | ||
|
||
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. | ||
|
||
## Overall Process flow | ||
|
||
TODO: Short version of process flow with diagrams. | ||
|
||
{{<children />}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
--- | ||
title: Overgangsløsning | ||
linktitle: Overgangsløsning | ||
description: Overgangsløsning for Altinn Melding | ||
tags: [] | ||
toc: false | ||
weight: 60 | ||
--- | ||
|
||
{{% notice warning %}} | ||
Denne delen av dokumentasjonen er under utarbeidelse. | ||
Det er kapitler som bare er delvis ferdigstilt. | ||
Noe funksjonalitet er fremdeles under avklaring og utvikling og representerer ikke endelig versjon. | ||
{{% /notice %}} | ||
|
||
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 Melding har i stor grad lik datamodell som Altinn 2 for å muliggjøre mapping/migrering. | ||
- Alle Altinn 2 Meldinger og vedlegg migreres til Altinn 3 Melding. | ||
- Alle Altinn 2 Meldingstjenester med data blir opprettet som Altinn 3 Meldingstjenester. | ||
- 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 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 og Tjenesteeiersystemer må opprettholde integrasjon mot både Altinn 2 og Altinn 3 i en overgangsperiode. | ||
|
||
## Overordnet prosessflyt | ||
|
||
TODO: Kortversjon av prosessflyt med diagram?? | ||
|
||
{{<children />}} |
50 changes: 50 additions & 0 deletions
50
content/correspondence/transition/consequences/_index.en.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
--- | ||
title: Consequences | ||
linktitle: Consequences | ||
description: Consequences for the Parties using Altinn Correspondence | ||
tags: [] | ||
toc: true | ||
weight: 40 | ||
--- | ||
|
||
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. | ||
|
||
{{<children />}} |
49 changes: 49 additions & 0 deletions
49
content/correspondence/transition/consequences/_index.nb.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
--- | ||
title: Konsekvenser | ||
linktitle: Konsekvenser | ||
description: Konsekvenser for partene som bruker Altinn Melding | ||
tags: [] | ||
toc: false | ||
weight: 60 | ||
--- | ||
Her er en kort oppsummering av hvilke konsekvenser valgt overgangs- og migreringsløsning har for de forskjellige partene: | ||
|
||
## Tjenesteeier | ||
|
||
- 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. | ||
|
||
## Sluttbrukere | ||
|
||
### Via Altinn 2 portal | ||
|
||
- Får en full oversikt i Altinn portal av både Altinn 2 og 3 elementer. | ||
- Når de åpner et Altinn 3 element vises dette i Altinn 2 Portalen, tilnærmet likt som for et Altinn 2 element. | ||
|
||
### Via Sluttbrukersystem | ||
|
||
- Får først opp Altinn 3 elementer når Sluttbrukersystem har integrert seg mot A3. | ||
|
||
### 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. | ||
|
||
## 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. | ||
|
||
## 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 (styrt av **migreringsventetid**). | ||
|
||
{{<children />}} |
82 changes: 82 additions & 0 deletions
82
content/correspondence/transition/data-migration/_index.en.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
--- | ||
title: Migration of Correspondence Data | ||
linktitle: Data Migration | ||
description: Migration of Correspondence Data for Altinn Correspondence | ||
tags: [] | ||
toc: true | ||
weight: 20 | ||
--- | ||
|
||
The "Flytt av Data" project will take responsibility for migrating all historical Correspondences and attachments to the new solution. | ||
|
||
- An automated job migrates Correspondences and associated attachments from Altinn 2 to Altinn 3 using a dedicated API endpoint. | ||
- 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. | ||
- 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; | ||
- Altinn 3 Correspondence API. | ||
- Dialogporten. | ||
- Arbeidsflate. | ||
- Display in Altinn 2 Portal. | ||
- No data is deleted as a result of migration; 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. | ||
|
||
## Volume and Migration Rate | ||
|
||
It is estimated that over 500 million Correspondences with attachments will be migrated from Altinn 2 to Altinn 3. | ||
Therefore, it is planned to perform the migration gently, starting with smaller volumes over time to gather experience and avoid disrupting the environments. | ||
|
||
Over time, the rate will increase and eventually be almost up to date with live traffic in Altinn 2 as it slowly decreases and Altinn 2 is phased out. | ||
|
||
## 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 opening, read confirmation, and deletion 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. | ||
|
||
The migration component will work with a whitelist of services that can be migrated and will extract x number of elements per service per run where: | ||
|
||
- Age is older than the **migration wait time** set for the respective service. | ||
- Sorted by oldest Correspondence first, but can also take the newest. | ||
|
||
## Detailed Migration Process per Element | ||
|
||
The migration process per Correspondence 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 that has been migrated](../service-migration/). | ||
2. Creation of the migrated Correspondence in the Dialog Portal / Unified Workspace. | ||
3. Blocking access to the Altinn 2 version of the element. | ||
|
||
Initially, each of these steps will be triggered manually by the Flytt av Data team, but eventually, as full production for all components approaches, it will be handled automatically in a single process. | ||
|
||
## What Data is Migrated? | ||
|
||
- Only Correspondences that are neither archived nor marked as deleted. | ||
- Correspondence content, including text and all attachments and metadata. | ||
- A limited form of notification history: Time and recipient address, but not text content. | ||
- Change history; including opening and read confirmation. | ||
- Altinn 2 CorrespondenceId and NotificationId, making it possible to look up in Altinn 2 in cases where more detailed investigations are needed. | ||
|
||
## Synchronization of Status Changes between Altinn 2 and 3 | ||
|
||
There will **not** be any form of 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 and is no longer externally available. The data is not deleted from Altinn 2. | ||
|
||
This is to avoid significant technical complexity and dependencies across systems. | ||
|
||
## Technical Implementation | ||
|
||
- A dedicated endpoint is created in Altinn 3 Correspondence that only provides access to the Migration component; [MigrationController](https://github.com/Altinn/altinn-correspondence/blob/main/src/Altinn.Correspondence.API/Controllers/MigrationController.cs). | ||
- An Altinn 2 AltinnBatch-based migration component "MigrateCorrespondence" is created | ||
- Consumes the migration endpoint. | ||
- Uses configuration in the Altinn 2 database to control migration. | ||
- Can be triggered manually with parameters, but will over time run more or less continuously. | ||
|
||
{{<children />}} |
Oops, something went wrong.