GC Enterprise Architecture/Framework/ApplicationGuide
< GC Enterprise Architecture | Framework
Revision as of 11:05, 24 February 2021 by Gita.nurlaila (talk | contribs) (Created page with "<multilang> @en| == Application architecture == Application architecture practices must evolve significantly for the successful implementation of the GC Enterprise Ecosystem...")
Application architecture
Application architecture practices must evolve significantly for the successful implementation of the GC Enterprise Ecosystem Target Architecture. Transitioning from legacy systems based on monolithic architectures to architectures that oriented around business services and based on re‑useable components implementing business capabilities, is a major shift. Interoperability becomes a key element, and the number of stakeholders that must be considered increases.
Use open source solutions hosted in public cloud
- select existing solutions that can be reused over custom built
- contribute all improvements back to the communities
- register open source software to the Open Resource Exchange
Use software as a service (SaaS) hosted in public cloud
- choose SaaS that best fit for purpose based on alignment with SaaS capabilities
- choose a SaaS solution that is extendable
- configure SaaS and if customization is necessary extend as open source modules
Design for Interoperability
- design systems as highly modular and loosely coupled services
- expose services, including existing ones, through APIs
- make the APIs discoverable to the appropriate stakeholders
Design for Interoperability, Proposed amendment Jan 8, 2021
- design systems as highly modular and loosely coupled services
- make all services available through a well-defined interface, such as an application programming interface (API)
- all APIs with potential for cross-departmental, inter-jurisdictional, or public consumption must be published to the GC API Store
- use the Canadian Digital Exchange Platform (CDXP) for data exchange where suitable (e.g., GC Event Broker for asynchronous messaging)