This page contains a list of possible Folio Architectural changes for the Folio platform which are under consideration by the Technical Council. Some of these are actively under discussion, while others are intended for a later discussion. Once architectural changes have been agreed upon they will be reflected in the actual Folio Architectural Blueprint.
Status | Category | Item | Summary | Plan | Why | "Aspirational" Timing | Related Jira | Champion | Participants | |
---|---|---|---|---|---|---|---|---|---|---|
ABI-001 | Under Discussion | Platform | AES: pre- and post-filters | Reinstate mod-aes to allow transaction data streaming directly from Okapi. The current implementation depends on Okapi filter functionality. |
|
| ||||
ABI-002 | Under Discussion | Multi-Tenancy | Cross-Tenancy Support | Allows selective and controlled data sharing between separate tenants in Folio. This addresses the needs of Institutions or Consortia who need to selectively share data between their member organizations. At present Folio supports only modeling as separate tenants (share nothing) or single tenant (share everything). Draft Document (limited access) |
| TBD | ||||
ABI-003 | Pending Discussion | Users | System and Tenant level users | Introduce the notion of tenant-level and system-level users. |
| This allows operations to be performed in the context of the entire tenant (tenant-level) or the platform (system-level). Accordingly these classes of users would be protected from casual user management and provided with suitable permissions. | 2020-Q3 design and development ??; 2020-Q3 released?? | Craig McNally | ||
ABI-004 | Under Discussion | Multi-Tenancy | Database Connectivity: tenant; interface; method | Allow database connectivity to be specified on a per tenant basis. Currently Folio only supports database connectivity to be specified at the module level |
| This would be helpful for load balancing database connectivity between tenants (allowing a large/busy tenant to have a separate database than other tenants for the same module). | 2020-Q3 design and development??; 2020-Q4: released ?? | |||
ABI-005 | Under Discussion | Platform | AuthN/Z Refactoring | Refactoring of authentication and authorization address:
| Plan:
| Primarily improved performance | 2020-Q2 Design 2020-Q2 Development | |||
ABI-019 | Under Discussion | Platform | Distributed Transactions | Discussion regarding strategies for dealing with cross-module (microservice) communication that required data consistency. Including:
|
| 2020-Q1/Q2 Requirements analysis 2020-Q2 Research and design | ||||
ABI-006 | Suggested for evaluation | Refactor Okapi | Tenant Context (runtime) | Split out Okapi tenant management into "mod-tenant". Intersects with cross-tenancy functionality. | ||||||
ABI-007 | Suggested for evaluation | Refactor Okapi | Dependency Management | Dedicated global registry for Folio dependencies | ||||||
ABI-008 | Suggested for evaluation | Refactor Okapi | Registry (runtime) | Split out Okapi management of registered modules and interfaces. | ||||||
ABI-009 | Suggested for evaluation | Refactor Okapi | Tenant APIs (admin) | See below | ||||||
ABI-010 | Suggested for evaluation | Multi-Tenancy | Tenant Management | A administrative component for tenant provisioning and upgrading (including data upgrading). Refactoring the TenantAPI functionality from Okapi forms the basis | ||||||
ABI-011 | Under Discussion | Search | Search Engine | Introduce a dedicated search engine (e.g. ElasticSearch) for performance reasons. Also provides cross-tenant searching. See related proposal: Search | VBar | |||||
ABI-012 | Suggested for evaluation | Automation | Camunda | Add an automation engine for Folio | ||||||
ABI-013 | Suggested for evaluation | Users | Roles is this the same as Team/Group concept (data ownership)? | Create support for formalized Roles within Folio | ||||||
ABI-014 | Suggested for evaluation | Platform | GraphQL | Adopt GraphQL as a API calling convention in Folio | ||||||
ABI-015 | Suggested for evaluation | Release Management | Application packaging | Support the distribution of "Applications" separate from monolithic Folio releases. | ||||||
ABI-016 | Suggested for evaluation | Users | SSO | Extend SSO functionality to delegate the details of user management and authentication to external systems. Avoid the need to duplicate user records in Folio | Tod Olson | |||||
ABI-017 | Suggested for evaluation | Codex | Codex | Next generation of Codex functionality
| ||||||
ABI-018 | Suggested for evaluation | Instrumentation | Okapi/modules | Define instrumentation capabilities, including:
|