Line 7: |
Line 7: |
| | | |
| === Use open source solutions hosted in public cloud === | | === Use open source solutions hosted in public cloud === |
| + | |
| * select existing solutions that can be reused over custom built | | * select existing solutions that can be reused over custom built |
| + | <b>How to achieve:</b> |
| + | * Summarize how the architecture leverages and reuses existing solutions, components, and processes including: |
| + | * Existing processes being reused or leveraged; |
| + | * Existing solutions being reused or leverage, and; |
| + | * Existing components being reused or leveraged. |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| + | * EA Assessment |
| + | |
| + | |
| + | |
| * contribute all improvements back to the communities | | * contribute all improvements back to the communities |
| + | <b>How to achieve:</b> |
| + | * Summarize how the team will align to the TBS Guidance on Open Source Publishing to support the production of better solutions |
| + | * Summarize how the team will leverage/has leverage the Open Source community |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| + | |
| * register open source software to the Open Resource Exchange | | * register open source software to the Open Resource Exchange |
| + | <b>How to achieve:</b> |
| + | * Summarize how the architecture will leverage the Open Resource Exchange. |
| + | * Summarize how the architecture will utilize APIs to support Open Data feeds |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| | | |
| === Use software as a service (SaaS) hosted in public cloud === | | === Use software as a service (SaaS) hosted in public cloud === |
| * choose SaaS that best fit for purpose based on alignment with SaaS capabilities | | * choose SaaS that best fit for purpose based on alignment with SaaS capabilities |
| + | <b>How to achieve:</b> |
| + | * Summarize how the recommended SaaS is the best fit for purpose based on alignment with SaaS capabilities of SaaS provider and Dept/SSC |
| + | |
| + | <b>Tools:</b> |
| + | * Option analysis |
| + | |
| * choose a SaaS solution that is extendable | | * choose a SaaS solution that is extendable |
| + | <b>How to achieve:</b> |
| + | * Summarize how the recommended SaaS is extendable |
| + | |
| + | <b>Tools:</b> |
| + | * Option analysis |
| + | * EA Assessment |
| + | |
| * configure SaaS and if customization is necessary extend as open source modules | | * configure SaaS and if customization is necessary extend as open source modules |
| + | <b>How to achieve:</b> |
| + | * Summarize how the recommended SaaS can be customized through Open Source modules. |
| + | |
| + | <b>Tools:</b> |
| + | * Option analysis |
| + | * EA Assessment |
| | | |
| === Design for Interoperability === | | === Design for Interoperability === |
| * design systems as highly modular and loosely coupled services | | * design systems as highly modular and loosely coupled services |
| + | <b>How to achieve:</b> |
| + | * Summarize how the architecture supports the implementation through: |
| + | * Simple independent functions |
| + | * Highly modular |
| + | * Loosely coupled |
| + | * Deployed into a container that has just a single application with the ability to build the smallest image |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| + | |
| * expose services, including existing ones, through APIs | | * expose services, including existing ones, through APIs |
| + | <b>How to achieve:</b> |
| + | * Summarize how the architecture exposes functionality as services and these services are accessible through common methodologies |
| + | * Summarize how the architectures aligns to the Government of Canada Standards on APIs |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| + | |
| * make the APIs discoverable to the appropriate stakeholders | | * make the APIs discoverable to the appropriate stakeholders |
| + | <b>How to achieve:</b> |
| + | * Summarize which APIs will be published to the ESDC API store |
| + | * Summarize which APIs will be published to the GC API store |
| + | * Summarize the rational for not publishing APIs to an API store |
| + | |
| + | <b>Tools:</b> |
| + | * Target State Architecture |
| + | * Interim State Architecture |
| + | |
| === ''Design for Interoperability, Proposed amendment Jan 8, 2021'' === | | === ''Design for Interoperability, Proposed amendment Jan 8, 2021'' === |
| * ''design systems as highly modular and loosely coupled services'' | | * ''design systems as highly modular and loosely coupled services'' |
| + | <b>How to achieve:</b> |
| + | * |
| + | |
| * ''make all services available through a well-defined interface, such as an application programming interface (API)'' | | * ''make all services available through a well-defined interface, such as an application programming interface (API)'' |
| + | <b>How to achieve:</b> |
| + | * |
| + | |
| * ''all APIs with potential for cross-departmental, inter-jurisdictional, or public consumption must be published to the GC API Store'' | | * ''all APIs with potential for cross-departmental, inter-jurisdictional, or public consumption must be published to the GC API Store'' |
| + | <b>How to achieve:</b> |
| + | * |
| + | |
| * ''use the Canadian Digital Exchange Platform (CDXP) for data exchange where suitable (e.g., GC Event Broker for asynchronous messaging)'' | | * ''use the Canadian Digital Exchange Platform (CDXP) for data exchange where suitable (e.g., GC Event Broker for asynchronous messaging)'' |
| | | |