Skip to content

Latest commit

 

History

History
79 lines (69 loc) · 6.67 KB

MODULE_EVALUATION_TEMPLATE.MD

File metadata and controls

79 lines (69 loc) · 6.67 KB

Module acceptance criteria template

Module Name

mod-XXX or ui-XXX etc.

How to use this form

When performing a technical evaluation of a module, create a copy of this document and use the conventions below to indicate the status of each criterion. The evaluation results should be placed in the module_evaluations directory and should conform to the following naming convention: {JIRA Key}_YYYY-MM-DD-{module name}.MD, e.g. TCR-1_2021-11-17-mod-foo.MD. The date here is used to differentiate between initial and potential re-evaluation(s). It should be the date when the evaluation results file was created.

  • ACCEPTABLE
  • INAPPLICABLE
  • UNACCEPTABLE
    • comments on what was evaluated/not evaluated, why a criterion failed

Administrative

Shared/Common

  • Uses Apache 2.0 license
  • Module build MUST produce a valid module descriptor
  • Module descriptor MUST include interface requirements for all consumed APIs
  • Third party dependencies use an Apache 2.0 compatible license
  • Installation documentation is included
  • Personal data form is completed, accurate, and provided as PERSONAL_DATA_DISCLOSURE.md file
  • Sensitive and environment-specific information is not checked into git repository
  • Module is written in a language and framework from the officially supported technologies page1
  • Module only uses FOLIO interfaces already provided by previously accepted modules e.g. a UI module cannot be accepted that relies on an interface only provided by a back end module that hasn't been accepted yet
  • Module gracefully handles the absence of third party systems or related configuration
  • Sonarqube hasn't identified any security issues, major code smells or excessive (>3%) duplication (6); and any disabled or intentionally ignored rules/recommendations are reasonably justified.
  • Uses officially supported build tools1
  • Unit tests have 80% coverage or greater, and are based on officially supported technologies1

Frontend

  • If provided, End-to-end tests must be written in an officially supported technology1
  • Have i18n support via react-intl and an en.json file with English texts
  • Have WCAG 2.1 AA compliance as measured by a current major version of axe DevTools Chrome Extension
  • Use the Stripes version of referred on the Officially Supported Technologies page1
  • Follow relevant existing UI layouts, patterns and norms
  • Must work in the latest version of Chrome (the supported runtime environment) at the time of evaluation

Backend

TCR Process Improvements

[Please include here any suggestions that you feel might improve the TCR Processes.]

Footnotes

  1. Refer to the Officially Supported Technologies page for the most recent ACTIVE release. 2 3 4 5 6 7