GC Enterprise Architecture/Framework
Appendix A: Enterprise Architecture Framework
As stated in the Policy on Service and Digital, the CIO of Canada responsible for:
- "Prescribing expectations with regard to enterprise architecture."
- "Establishing and chairing an enterprise architecture review board (EARB) that is mandated to define current and target architecture standards for the Government of Canada and review departmental proposals for alignment."
- "Approving an annual, forward-looking three-year enterprise-wide plan that establishes the strategic direction for the integrated management of service, information, data, IT, and cyber security and ensuring the plan includes a progress report on how it was implemented in the previous year."
The Enterprise Architecture Framework articulates the prescriptive vision for enterprise architecture in the GC.
It is the fundamental element for GC EARB to meet its mandate to review and endorse the architectures of all departmental digital initiatives and ensure their alignment with enterprise architectures. Digital initiatives presenting at GC EARB complete the GC EARB presenter template and indicate how the target architecture intends to achieve the criteria outlined in the EA Framework. A summary of this self assessment is produced to recommend an endorsement for the committee.
The Enterprise Architecture Framework is an aspirational representation of the strategic direction view that is encapsulated in Service and Digital Target Enterprise Architecture.
Beyond being applied to individual projects submitted to GC EARB, the EA Framework will also provide a superstructure for the Strategic Actions in the revised DOSP, spanning across all four of the pillars in that document, which will serve as the primary implementation plan for the Policy.
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
[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]
- Perform Privacy Impact Assessment (PIA) to support risk mitigation activities when personal information is involved
- Perform Algorithmic Impact Assessment (AIA) to support risk mitigation activities when deploying an automated decision system as per Directive on Automated Decision Making. For more info, please go to this link
- Implement security measures to assure the protection of personal information and data
- Take into consideration the 7 Foundational Privacy Design Principles (English only) when designing services