Definition of done

Check-list of acceptance critera when relasing software products to the island.is ecosystem.

About: When releasing new features we need to make sure that all acceptance criteria for software products in the island.is ecosystem are met before we release on production for the general public. This list should be used as a reference for all projects.

Responsibility: The development team and Product Manager from Stafrænt Ísland

Please make a copy of this page and take out items that are not applicable for your product.

Accessibility

  • [ ] Language support: All our user-facing products should be available in Icelandic and English.

    • [ ] No hard-coded strings in the front end

    • [ ] All strings are available in Contentful with the correct namespace

    • [ ] Icelandic texts have been reviewed by Stafrænt Ísland

    • [ ] English texts have been reviewed by Stafrænt Ísland

    • [ ] If the feature is for organization, the Icelandic text has been reviewed by the org

    • [ ] If the feature is for organization, the English text has been reviewed by the org

  • [ ] Accessibility: UX has support for all. ****More info: Aðgengismál

    • [ ] Run aXe tests

    • [ ] Manual test have been run

Development and Operational requirements

  • [ ] Feature flags: has been created

  • [ ] Architecture: has been reviewed by the Core and DevOps team

  • [ ] Audit log: all user interactions/changes should be audit logged. https://docs.devland.is/libs/nest/audit

  • [ ] Scopes defined: If a feature should have the ability to allow others to view, it needs to have scoped defined and documented

    Scopes

  • [ ] Access for companies, children on behalf: If working against a web service from an organization, we need to discuss if data can be fetched on behalf of a company, child, disabled, and delegation that another person has given you.

    What you need to ask yourself: As a company, should I be able to access the data? As a parent, should I be able to to access the data? As an individual, should I be able to give this scope to another person, e.g. my partner As a company, should I be able to give this scope to an individual, e.g. my employee

  • [ ] Logging implemented: logging and monitoring is ready for operation in production

    https://docs.devland.is/technical-overview/devops/logging

  • [ ] Analytics Usage logged: we need to be able to monitor the usage of our system. Has analytics been set up in Plausible.

Quality Assurance

  • [ ] Testing. More info: Prófanir

    • [ ] Test cases have been reviewed by Product Owner

    • [ ] External integration test has been created when we depend on third party API´s

    • [ ] Internal API test has been created

    • [ ] End to end test has been created

Documentation

  • [ ] Technical documentation: has technical documentation been added on gitbooks ****

  • [ ] Article on island.is has been created along with a process entry and the service owner designated in contentful. This is important steps so the user can discover the new product.

Stakeholder management

  • [ ] If the feature is done in collaboration with an organization, they have given a green light for the release

  • [ ] If working against a web service from organization, the X-road service must be connected to production and openId connect installed on the service

Applications

  • [ ] Application flow

    • [ ] Application state is correctly synced with application overview (UI, application system)

  • [ ] Compliance:

    • [ ] Data collection screen has been approved by org and Stafrænt Ísland. (Application system)

    • [ ] Usage of roles and access to external data (Application system)

    • [ ] Application lifetime has been approved by the org and is in sync with MÁP (Application system)

  • [ ] Payments: If using ARK-Quickpay, we need to sync with FJS on making the product ID available in QuickPay and synchronize and test the application flow with the callback service to confirm payment.

  • [ ] Article on island.is has been created along with a process entry and service owner designated in contentful.

    • [ ] Process entry type is “Application system”

After release

  • [ ] Feature flagging: When the feature has been deployed to general public, we need to a) clean up the feature flag in code, b) remove the feature flag from config cat. This is an important step!

    https://docs.devland.is/technical-overview/feature-flags'

  • [ ] Tagging articles that contain an application link: When an article that points to a new digital application has been published in Contentful, it should be tagged with the tag ‘umsokn’. This enables front ends, e.g. the Ísland.is app, to list it with other fully digital applications.

Last updated