Difference between revisions of "GC Enterprise Architecture/Framework"

From wiki
Jump to navigation Jump to search
(Remove diff formatting and use heading structure)
(Replace table layout with divs)
Line 5: Line 5:
 
The EA Framework was presented at GC EARB on [https://gcconnex.gc.ca/file/view/67145496/gc-earb-2020-07-16-02-tbs-service-digital-target-enterprise-architecture-and-updates-to-the-ea-framework-pdf?language=en July 16th, 2020]. Additional feedback has been sought from the departments by August 31st, 2020, before it will return for an endorsement.
 
The EA Framework was presented at GC EARB on [https://gcconnex.gc.ca/file/view/67145496/gc-earb-2020-07-16-02-tbs-service-digital-target-enterprise-architecture-and-updates-to-the-ea-framework-pdf?language=en July 16th, 2020]. Additional feedback has been sought from the departments by August 31st, 2020, before it will return for an endorsement.
  
{| width="100%" cellspacing="15" cellpadding="10"
+
<div style="padding-left: 15px; border-left: 10px solid #c5d5af; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
|- valign="top"
 
| style="border-left: 10px solid #c5d5af; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#1._Business_Architecture | 1. Business Architecture]] ==
 
== [[GC_EA_Playbook#1._Business_Architecture | 1. Business Architecture]] ==
  
Line 25: Line 22:
 
* Reuse common business capabilities, processes and enterprise solutions from across government and private sector
 
* Reuse common business capabilities, processes and enterprise solutions from across government and private sector
 
* Publish in the open all reusable common business capabilities, processes and enterprise solutions for others to develop and leverage cohesive horizontal enterprise services
 
* Publish in the open all reusable common business capabilities, processes and enterprise solutions for others to develop and leverage cohesive horizontal enterprise services
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #f4d177; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #f4d177; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#2._Information_Architecture | 2. Information Architecture]] ==
 
== [[GC_EA_Playbook#2._Information_Architecture | 2. Information Architecture]] ==
  
Line 51: Line 44:
 
* Ensure data formatting aligns to existing enterprise and international standards on interoperability. Where none exist, develop data standards in the open with key subject matter experts, in consultation with the Enterprise Data Community of Practice
 
* Ensure data formatting aligns to existing enterprise and international standards on interoperability. Where none exist, develop data standards in the open with key subject matter experts, in consultation with the Enterprise Data Community of Practice
 
* Ensure that combined data does not risk identification or re-identification of sensitive or personal information
 
* Ensure that combined data does not risk identification or re-identification of sensitive or personal information
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #f5844e; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #f5844e; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#3._Application_Architecture | 3. Application Architecture]] ==
 
== [[GC_EA_Playbook#3._Application_Architecture | 3. Application Architecture]] ==
  
Line 74: Line 63:
 
* Expose services, including existing ones, through APIs
 
* Expose services, including existing ones, through APIs
 
* Make the APIs discoverable to the appropriate stakeholders
 
* Make the APIs discoverable to the appropriate stakeholders
|}
+
</div>
  
{| width="100%" cellspacing="15" cellpadding="10"
+
<div style="padding-left: 15px; border-left: 10px solid #cb6d49; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
  
|- valign="top"
 
| style="border-left: 10px solid #cb6d49; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#4._Technology_Architecture | 4. Technology Architecture]] ==
 
== [[GC_EA_Playbook#4._Technology_Architecture | 4. Technology Architecture]] ==
  
Line 101: Line 88:
 
* Ensure automated testing occurs for security and functionality
 
* Ensure automated testing occurs for security and functionality
 
* Include your users and other stakeholders as part of DevSecOps process
 
* Include your users and other stakeholders as part of DevSecOps process
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #996782; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #996782; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#5._Security_Architecture_and_Privacy | 5. Security Architecture and Privacy]] ==
 
== [[GC_EA_Playbook#5._Security_Architecture_and_Privacy | 5. Security Architecture and Privacy]] ==
  
Line 132: Line 115:
 
* Implement security measures to assure the protection of personal information and data
 
* Implement security measures to assure the protection of personal information and data
 
* Take into consideration the [https://www.ipc.on.ca/wp-content/uploads/Resources/7foundationalprinciples.pdf 7 Foundational Privacy Design Principles] (English only) when designing services
 
* Take into consideration the [https://www.ipc.on.ca/wp-content/uploads/Resources/7foundationalprinciples.pdf 7 Foundational Privacy Design Principles] (English only) when designing services
 +
</div>
  
|}
 
 
<!-- FRENCH -->
 
<!-- FRENCH -->
 
@fr|__NOTOC__
 
@fr|__NOTOC__
Line 139: Line 122:
 
<h3> TO BE TRANSLATED >>>> This is a <b> DRAFT STREAMLINED COPY </b> of the proposed updates to the GC Enterprise Architecture Framework(formerly GC EA Standards) for assessment</h3>
 
<h3> TO BE TRANSLATED >>>> This is a <b> DRAFT STREAMLINED COPY </b> of the proposed updates to the GC Enterprise Architecture Framework(formerly GC EA Standards) for assessment</h3>
  
{| width="100%" cellspacing="15" cellpadding="10"
+
<div style="padding-left: 15px; border-left: 10px solid #c5d5af; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
|- valign="top"
 
| style="border-left: 10px solid #c5d5af; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#1._Business_Architecture | 1. Architecture opérationnelle]] ==
 
== [[GC_EA_Playbook#1._Business_Architecture | 1. Architecture opérationnelle]] ==
  
Line 159: Line 139:
 
* Réutiliser les capacités et les processus opérationnels et les solutions d’entreprise communes de l’ensemble du gouvernement et du secteur privé
 
* Réutiliser les capacités et les processus opérationnels et les solutions d’entreprise communes de l’ensemble du gouvernement et du secteur privé
 
* Publier ouvertement toutes les capacités et les processus opérationnels communs et réutilisables et toutes les solutions d’entreprises pour permettre à d’autres de mettre sur pied des services intégrés horizontaux cohérents
 
* Publier ouvertement toutes les capacités et les processus opérationnels communs et réutilisables et toutes les solutions d’entreprises pour permettre à d’autres de mettre sur pied des services intégrés horizontaux cohérents
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #f4d177; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
+
== [[GC_EA_Playbook#2._Information_Architecture> 2. Architecture de l’information]] ==
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #f4d177; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
== [[GC_EA_Playbook#2._Information_Architecture | 2. Architecture de l’information]] ==
 
  
 
=== Recueillir des données pour répondre aux besoins des utilisateurs et des autres intervenants ===
 
=== Recueillir des données pour répondre aux besoins des utilisateurs et des autres intervenants ===
Line 185: Line 161:
 
* Veiller à ce que le formatage des données soit harmonisé avec les normes d’interopérabilité existantes opérationnelles et sur les normes internationales. Lorsqu’il n’en existe pas, élaborer des normes de données ouvertes avec des experts en la matière, en consultation avec la Communauté de pratique des données organisationnelles
 
* Veiller à ce que le formatage des données soit harmonisé avec les normes d’interopérabilité existantes opérationnelles et sur les normes internationales. Lorsqu’il n’en existe pas, élaborer des normes de données ouvertes avec des experts en la matière, en consultation avec la Communauté de pratique des données organisationnelles
 
* Éviter le risque d’identification ou de réidentification des données combinées de renseignements délicats ou personnels
 
* Éviter le risque d’identification ou de réidentification des données combinées de renseignements délicats ou personnels
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #f5844e; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #f5844e; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#3._Application_Architecture | 3. Architecture des applications]] ==
 
== [[GC_EA_Playbook#3._Application_Architecture | 3. Architecture des applications]] ==
  
Line 208: Line 180:
 
* Exposer les services, y compris les services existants, au moyen d’API
 
* Exposer les services, y compris les services existants, au moyen d’API
 
* Rendre les API accessibles aux intervenants appropriés
 
* Rendre les API accessibles aux intervenants appropriés
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #cb6d49; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #cb6d49; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#4._Technology_Architecture | 4. Architecture de la technologie]] ==
 
== [[GC_EA_Playbook#4._Technology_Architecture | 4. Architecture de la technologie]] ==
  
Line 236: Line 204:
 
* S’assurer que des essais automatisés sont effectués pour assurer la sécurité et les fonctionnalités
 
* S’assurer que des essais automatisés sont effectués pour assurer la sécurité et les fonctionnalités
 
* Inclure vos utilisateurs et autres intervenants dans le processus DevSecOps
 
* Inclure vos utilisateurs et autres intervenants dans le processus DevSecOps
 +
</div>
  
|}
+
<div style="padding-left: 15px; border-left: 10px solid #996782; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;">
 
 
{| width="100%" cellspacing="15" cellpadding="10"
 
 
 
|- valign="top"
 
| style="border-left: 10px solid #996782; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); color: black; background-color: white; font-size:1.2em;" |
 
 
== [[GC_EA_Playbook#5._Security_Architecture_and_Privacy | 5. Architecture de la sécurité et protection de la vie privée]] ==
 
== [[GC_EA_Playbook#5._Security_Architecture_and_Privacy | 5. Architecture de la sécurité et protection de la vie privée]] ==
  
Line 267: Line 231:
 
* Mettre en œuvre des mesures de sécurité pour assurer la protection des renseignements personnels et des données.
 
* Mettre en œuvre des mesures de sécurité pour assurer la protection des renseignements personnels et des données.
 
* Tenir compte des [https://www.ipc.on.ca/wp-content/uploads/Resources/7foundationalprinciples.pdf sept principes fondamentaux de conception de la protection de la vie privée] (anglais seulement) au moment de la conception de services.
 
* Tenir compte des [https://www.ipc.on.ca/wp-content/uploads/Resources/7foundationalprinciples.pdf sept principes fondamentaux de conception de la protection de la vie privée] (anglais seulement) au moment de la conception de services.
 +
<div>
  
|}
 
 
</multilang>
 
</multilang>
 
{{OCIO_GCEA_Footer}}
 
{{OCIO_GCEA_Footer}}

Revision as of 14:10, 28 July 2020


The EA Framework was presented at GC EARB on July 16th, 2020. Additional feedback has been sought from the departments by August 31st, 2020, before it will return for an endorsement.

1. Business Architecture[edit | edit source]

Fulfill the Government of Canada users and other stakeholder's needs[edit | edit source]

  • Clearly identify internal and external users and other stakeholders and their needs for each policy, program and business service
  • Include policy requirement applying to specific users and other stakeholder groups, such as accessibilities, gender based+ analysis, and official languages in the creation of the service
  • Model end-to-end business service delivery to provide quality, maximize effectiveness and optimize efficiencies across all channels (e.g lean process)

Architect to be Outcome Driven and Strategically Aligned to the Department and to the Government of Canada[edit | edit source]

  • Identify which departmental/GC business services, outcomes and strategies will be addressed
  • Establish metrics for identified business outcomes throughout the lifecycle of an investment
  • Translate business outcomes and strategy into business capability implications in the GC Business Capability Model to establish a common vocabulary between business, development, and operation

Promote Horizontal Enablement of the Enterprise[edit | edit source]

  • Identify opportunities to enable business services horizontally across the GC enterprise and to provide cohesive experience to users and other stakeholders
  • Reuse common business capabilities, processes and enterprise solutions from across government and private sector
  • Publish in the open all reusable common business capabilities, processes and enterprise solutions for others to develop and leverage cohesive horizontal enterprise services

2. Information Architecture[edit | edit source]

Collect data to address the needs of the users and other stakeholders[edit | edit source]

  • Assess data requirements based on users and other stakeholder needs
  • Collect only the minimum set of data needed to support a policy, program, or service
  • Reuse existing data assets and only acquire new data if required
  • Ensure data collected, including from third party sources, are of high quality

Manage data strategically and responsibly[edit | edit source]

  • Define and establish clear roles, responsibilities, and accountabilities for data management
  • Identify and document the lineage of data assets
  • Define retention and disposition schedules in accordance with business value as well as applicable privacy and security policy and legislation
  • Ensure data are managed to enable interoperability, reuse and sharing to the greatest extent possible within and across departments in government to avoid duplication and maximize utility, while respecting security and privacy requirements
  • Contribute to and align with enterprise and international data taxonomy and classification structures to manage, store, search and retrieve data

Use and share data openly in an ethical and secure manner[edit | edit source]

  • Share data openly by default as per the Directive on Open Government and Digital Standards, while adhering to existing enterprise and international standards, including on data quality and ethics
  • Ensure data formatting aligns to existing enterprise and international standards on interoperability. Where none exist, develop data standards in the open with key subject matter experts, in consultation with the Enterprise Data Community of Practice
  • Ensure that combined data does not risk identification or re-identification of sensitive or personal information

3. Application Architecture[edit | edit source]

Use Open Source Solutions hosted in Public Cloud[edit | edit source]

  • 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[edit | edit source]

  • 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[edit | edit source]

  • Design systems as highly modular and loosely coupled services
  • Expose services, including existing ones, through APIs
  • Make the APIs discoverable to the appropriate stakeholders

4. Technology Architecture[edit | edit source]

Use Cloud first[edit | edit source]

  • Adopt the Use of the GC Accelerators to ensure proper Security and Access Controls
  • Enforce this order of preference: Software as a Service (SaaS) first, then Platform as a Service (PaaS), and lastly Infrastructure as a Service (IaaS)
  • Fulfill Cloud Services through SSC Cloud Brokering Services
  • Enforce this order of preference: Public cloud first, then Hybrid cloud, then Private cloud, and lastly non-cloud (on-premises) solutions
  • Design for cloud mobility and develop an exit strategy to avoid vendor lock-in

Design for Performance, Availability, and Scalability[edit | edit source]

  • Ensure response times meet user needs, and critical services are highly available
  • Support zero-downtime deployments for planned and unplanned maintenance
  • Use distributed architectures, assume failure will happen, handle errors gracefully, and monitor performance and behaviour actively
  • Establish architectures that supports new technology insertion with minimal disruption to existing programs and services
  • Control Technical Diversity - design systems based on modern technologies and platforms already in use.

Follow DevSecOps Principles[edit | edit source]

  • Use continuous integration and continuous deployments (CI/CD)
  • Ensure automated testing occurs for security and functionality
  • Include your users and other stakeholders as part of DevSecOps process

5. Security Architecture and Privacy[edit | edit source]

Build Security into the System Life Cycle, Across All Architectural Layers[edit | edit source]

  • Identify and categorize information based on the degree of injury that could be expected to result from a compromise of its confidentiality, integrity and availability.
  • Implement a continuous security approach, in alignment with CCCS’s IT Security Risk Management Framework. Perform threat modelling to minimize the attack surface by limiting services exposed and information exchanged to the minimum necessary.
  • Apply proportionate security measures that address business and user needs while adequately protecting data at rest and data in transit.
  • Design systems to be resilient and available in order to support service continuity.

Ensure Secure Access to Systems and Services[edit | edit source]

  • Identify and authenticate individuals, processes and/or devices to an appropriate level of assurance, based on clearly defined roles, before granting access to information and services. Leverage enterprise services such as Government of Canada trusted digital identity solutions that are supported by the Pan-Canadian Trust Framework.
  • Constrain service interfaces to authorized entities (users and devices), with clearly defined roles. Segment and separate information based on sensitivity of information, in alignment with ITSG-22 and ITSG-38. Management interfaces may require increased levels of protection.
  • Implement HTTPS for secure web connections and DMARC for enhanced email security.
  • Establish secure interconnections between systems through secure APIs or leveraging centrally managed Hybrid IT connectivity services.

Maintain Secure Operations[edit | edit source]

  • Establish processes to maintain visibility of assets and ensure the prompt application of security-related patches and updates in order to reduce exposure to vulnerabilities, in accordance with GC Patch Management Guidance.
  • Enable event logging, in accordance with GC Event Logging Guidance, and perform monitoring of systems and services in order to detect, prevent, and respond to attacks.
  • Establish an incident management plan in alignment with the GC Cyber Security Event Management Plan (GC CSEMP) and report incidents to the Canadian Centre for Cyber Security (CCCS).

Privacy by Design[edit | edit source]