Difference between revisions of "GC Enterprise Architecture/Standards/Application Architecture"

From wiki
Jump to navigation Jump to search
(Created page with "<!-- NAV --> {| class="FCK__ShowTableBorders" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px; background-color: #3C6D9E" width="100%" align="c...")
 
(No difference)

Revision as of 14:02, 6 March 2019

Home EA standards EARB Endorsements EA Artifacts Working Groups GC EARB Other References



This is a definition for GC Application Enterprise Architecture

Use Open Standards and Solutions by Default

  • Where possible, use open source standards, and open source software first
  • If an open source option is not available or does not meet user needs, favour platform-agnostic COTS over proprietary COTS, avoiding technology dependency, allowing for substitutability and interoperability
  • If a custom-built application is the appropriate option, by default any source code written by the government must be released in an open format via Government of Canada website and services designated by the Treasury Board of Canada Secretariat
  • All open source code must be released under an appropriate open source software license
  • Expose public data to implement Open Data and Open Information initiatives

Maximize Reuse

  • Leverage and reuse existing solutions, components, and processes
  • Select enterprise and cluster solutions over department-specific solutions
  • Achieve simplification by minimizing duplication of components and adhering to relevant standards
  • Inform the GC EARB about departmental investments and innovations
  • Share code publicly when appropriate, and when not, share within the Government of Canada

Enable Interoperability

  • Expose all functionality as services
  • Use microservices built around business capabilities. Scope each service to a single purpose
  • Run each IT service in its own process and have it communicate with other services through a well-defined interface, such as a HTTPS-based application programming interface (API)
  • Run applications in containers
  • Leverage the GC Digital Exchange Platform for components such as the API Store, Messaging, and the GC Service Bus