Definition of Done

Checklist

Testing

  • Tested in different files

Functionality

  • Indicators
    • Use of indicators (UX Guidelines)
    • Reconciliation option
    • Impact on existing data
  • Arithmetic
    • Defaults taken into account
    • Impact on existing data
  • Defaults and placeholders
    • Defaults and placeholders included in line with UX Guidelines
  • Automatic reconciliation fields
    • Import data from Excel
  • Rollforward functionality
    • Rollforward
    • Take into account default values

Code

  • Liquid tests are written and documented
  • All existing liquid tests pass
    • Results are populated as expected
    • Reconciliation status of the template remains unchanged
  • Rollforwards are populated

Significant

  • Impact on custom variables
  • Impact on client data
  • Impact on calculations
  • Checked section ‘Template update’ in Liquid Guidelines



Internal/external links

  • Circular reference
  • Direct impact on other templates
  • Indirect impact on other templates
  • XBRL (when included in workflow)
  • Handle
  • Does other template exist (see Liquid Guidelines)

Export/preview/review mode

  • All necessary fields included
  • Lay-out
  • Warningtext, infotext, unreconciled indicators not included (see UX Guidelines)
  • Defaults included
  • Difference between export and preview
  • Virtual account number
  • Review mode: input and no printed values

On all languages

  • Translations included
  • Default translation included (if necessary)
  • Defaults/placeholders are translated
  • Export in all languages

Exists

In all languages

  • Check duplicate templates in other languages

Code is documented

  • Result names
  • Handle names
  • Configuration variables

Version description

  • Changelog description
  • Post in #pro-changelog

Error handling

  • Exclude all errors

Guidelines respected

  • Liquid Guidelines
    • Code is readable/understandable
    • Code is maintainable
    • Code is unform
    • Code is systematic
  • UX Guidelines
    • Lay-out is consistent
    • Lay-out is user-friendly

In needed working screens and/or workflows?

  • Template included in correct workflow and working screen


Guidance for Definition of Done

Testing

Important that the prepared update has been thoroughly tested in different files and situations on following points:

Functionality

Does the update impact the core functionality of the template? Was this impact intended? Does the update affect the outcome or result of a reconciliation/account template historically and prospectively (i.e. significant update - see Liquid Guidelines for more information)?

When doing the functionality review, specifically focus on:

  • Indicators

Be sure that any new template or update contains enough indicators and be sure that these work fine in all situations. Also be sure that the indicators are used in line with UX Guidelines. Finally, make sure that the template has selected the right reconciliation option.

Always make sure the template does not change from reconciled to unreconciled especially for the past as these periods may already have been closed and will impact the completion ratio of the workflow in case the period is not locked. In case the calculation of the template has always been wrong and thus the change will have an impact on the indicators, make sure the change only impacts the present and future.

  • Arithmetic

Same logic as for the indicators applies. When doing a change that will impact or update the calculations, make sure the change does not impact the past but only the present and future.

Also make sure that defaults, as well as inputted values, are always taken into account in the calculation.

  • Defaults and placeholders

Don’t forget to include default and/or placeholder text or options when adding input fields (see UX and Liquid Guidelines). Make sure these show the correct text and (for defaults) that they are taken into account in the calculation (if necessary).

  • Automatic reconciliation fields

When working with a table and for/fori-loops, make sure you have tested the import data functionality. The Liquid Guidelines further elaborate on how this should work.

  • Rollforward functionality

Be sure that the correct rollforward functionality is in place. When creating new input fields, always consider whether they could/should be rollforwarded or whether the value should be reset to zero.

Code

See Liquid testing guidelines

On Exports/Preview

Important to thoroughly test exports in different situations. Be sure that all fields that should be included in export are included, lay-out is okay, warning, infotext and unreconciled indicators are not included (see UX Guidelines), inputfields as well as defaults are included, etc. Bear in mind that the template should have a logical virtual account number in order to be included in all necessary export styles (see Liquid Guidelines).

Don’t just focus on the preview, there could be significant differences between preview mode and an actual export!

On all languages

Be sure all languages that should be supported are supported. When working with keys in translations, be sure a default translation is foreseen (see Liquid Guidelines).

Also test export in all languages (can impact lay-out for instance).

Take into account that also placeholder and/or default text should be translated.

External or internal Links

Specifically focus on result tags and variables taken over from other templates. Be sure not to make circular reference mistakes.

Take into account which other templates can be directly or indirectly impacted by the update. Think about possible information that can be shared with other templates.

In case data can be downloaded (e.g. XBRL), make sure this is also tested as other fixes or changes can always impact these export files!

Exists

In all languages

In case the template itself does not contain any translations, check if there are separate templates containing the same content but in a different language.

Code is documented

When new hashtags or configurable fields are added, make sure these are properly documented (on Silverfin help page) and communicated to clients.

In case data can flow in the template from other templates, make sure that the results and handles used to call this data is documented.

Version description

Make sure the change is properly described (see: https://silverfin.quip.com/iv2SAQtdnFHC).

Error handling

All other errors should be excluded, also errors that can happen without the code being wrong.

When taking over results from other templates, make sure that the other template exists in current file, or will always exist, or this might lead to liquid errors (see Liquid Guidelines).

Guidelines respected

When coding in Liquid, always take into account the Liquid and UX Guidelines.

In general, question the code and make sure that the code is code readable, maintainable, uniform and systematic (see Liquid Guidelines).

Next to that, be consistent in the style, structure, calculations, etc. across all templates (see UX Guidelines).

In needed working screens and or workflows?

Always check if template is included in the correct workflow and working screen.

Is significant

Always bear in mind what the impact of you change might be on client data. See section ‘Template update’ in Liquid Guidelines.