New Module Technical Evaluations
Overview
The Technical Council has officially adopted a process for evaluation of new modules for inclusion into FOLIO "flower" releases. This process will fit into a larger cross-council process which has not been fully defined yet.
See also - Process Overview and Recent Changes (July 2023):
(The slides for this presentation)
Motivation
The purpose of these evaluations is to ensure that modules included in official FOLIO releases meet the technical standards defined by the Technical Council. The goal is to ensure new modules aren't introducing incompatibilities; placing unexpected burden on DevOps, hosting, or other development teams; etc. See the values and criteria for a more comprehensive list of technical standards.
Scope
In scope:
ui-plugins
Shared libraries
edge modules
front end and back end modules
Evaluation of whether the module meets the technical criteria defined by the Technical Council
Out of scope:
Evaluation of whether the module meets the desired functional business requirements
Evaluation of whether the module is a good architectural fit
Ideally development teams engage the Technical Council (e.g. via the chairs) early in the development process when seeking feedback on architectural fit.
Process Description
A document describing the New Module Technical Evaluation Processes and supporting documents can be found in the tech-council GitHub repository.
Submissions and Tracking
The TCR JIRA project is used for submission of new modules by the Product Council, to be evaluated and for tracking the status of evaluations in various states.
Description of the workflow: https://github.com/folio-org/tech-council/blob/master/NEW_MOD_TECH_EVAL_JIRA.md
The TCR Board used by the Technical Council for tracking purposes: TCR board
Evaluation Results
Results of technical evaluations are captured in markdown form/template and stored in a dedicated directory in the tech-council GitHub repository.
Process changes
Suggestions for changes to this process may be made in the module review form for a given TCR, in slack, or via pull requests. When changes to this process are made, they will be communicated on the following slack channels:
product-owners
development
tech-council
stripes-updates
release-management-stakeholders
product-council
The Technical Council will take release schedules into consideration when making any substantive changes to the process.
Keywords: Acceptance Criteria; External Module Contribution; Submission; Rejection; Technical Review; Review Team; App Evaluation; Contributors; TCR; TCR Process