|  |  | 
| Line 20: | Line 20: | 
|  |  |  |  | 
|  | |} |  | |} | 
| − | 
 |  | 
|  | <!-- NAV end --> |  | <!-- NAV end --> | 
| − | <i>{{Translation to follow}}</i> | + | <h3><I>Please note that we are currently updating our Architecture Standards. To view the updates, please click [https://wiki.gccollab.ca/index.php?title=Government_of_Canada_Enterprise_Architectural_Standards_Update | here] | 
| − |   | + | <br> | 
|  | + | <br> | 
|  | + | </h3> | 
|  |  |  |  | 
|  | The GC Enterprise Architecture standard is part of the [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=15249 Directive on Management of Information Technology]. It is listed as [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=15249 Appendix C - Mandatory Procedures for Enterprise Architecture Assessment] in the Directive. |  | The GC Enterprise Architecture standard is part of the [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=15249 Directive on Management of Information Technology]. It is listed as [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=15249 Appendix C - Mandatory Procedures for Enterprise Architecture Assessment] in the Directive. | 
		Revision as of 15:47, 9 August 2019
Please note that we are currently updating our Architecture Standards. To view the updates, please click | here
The GC Enterprise Architecture standard is part of the Directive on Management of Information Technology. It is listed as Appendix C - Mandatory Procedures for Enterprise Architecture Assessment in the Directive.
|  1. Business Architecture 
 Align to the GC Business Capability model
 Define program services as business capabilities to establish a common vocabulary between business, development, and operationIdentify capabilities that are common to the GC enterprise and can be shared and reusedModel business processes using Business Process Management Notation (BPMN) to identify common enterprise processes
 Design for Users First and Deliver with Multidisciplinary Teams
 Focus on the needs of users, using agile, iterative, and user-centred methodsConform to both accessibility and official languages requirementsInclude all skillsets required for delivery, including for requirements, design, development, and operationsWork across the entire application lifecycle, from development and testing to deployment and operationsEnsure quality is considered throughout the Software Development LifecycleEnsure accountability for privacy is clearEncourage and adopt Test Driven Development (TDD) to improve the trust between Business and IT
 Design Systems to be Measurable and Accountable
 Publish performance expectations for each IT serviceMake an audit trail available for all transactions to ensure accountability and non-repudiationEstablish business and IT metrics to enable business outcomesApply oversight and lifecycle management to digital investments through governance
 | 
|  2. Information Architecture 
 
 Data Collection
 Ensure data is collected in a manner that maximizes use and availability of dataEnsure data collected aligns to existing enterprise and international standardsWhere enterprise or international standards don't exist, develop Standards in the open with key subject matter expertsEnsure collection of data yields high quality data as per data quality guidelinesEnsure data is collected through ethical practices supporting appropriate citizen and business-centric useData should only be purchased once and should align with international standardsWhere necessary, ensure collaboration with department/agency data stewards/custodians, other levels of government and indigenous people
 Data Management
 Demonstrate alignment with enterprise and departmental data governance and strategiesEnsure accountability for data roles and responsibilitiesDesign to maximize data use and availabilityDesign data resiliency in accordance with GC policies and standardsUse Master Data Management to provide a single point of reference for appropriate stakeholders
 Data Storage
 Ensure data is stored in a secure manner in accordance with the National Cyber Security Strategy and the Privacy ActFollow existing retention and disposition schedulesEnsure data is stored in a way to facilitate easy data discoverability, accessibility and interoperability
 Data Sharing
 Data should be shared openly by default as per the Directive on Open GovernmentEnsure government-held data can be combined with data from other sources enabling interoperability and interpretability through for internal and external useReduce the collection of redundant dataReduce existing data where possibleEncourage data sharing and collaboration
 | 
|  3. Application 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 interoperabilityIf 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 SecretariatAll open source code must be released under an appropriate open source software licenseExpose public data to implement Open Data and Open Information initiatives
 Maximize Reuse
 Leverage and reuse existing solutions, components, and processesSelect enterprise and cluster solutions over department-specific solutionsAchieve simplification by minimizing duplication of components and adhering to relevant standardsInform the GC EARB about departmental investments and innovationsShare code publicly when appropriate, and when not, share within the Government of Canada
 Enable Interoperability
 Expose all functionality as servicesUse microservices built around business capabilities. Scope each service to a single purposeRun 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 containersLeverage the GC Digital Exchange Platform for components such as the API Store, Messaging, and the GC Service Bus
 | 
|  | 
|  4. Technology Architecture 
 
 Use Cloud first
 Enforce this order of preference: Software as a Service (SaaS) first, then Platform as a Service (PaaS), and lastly Infrastructure as a Service (IaaS)Enforce this order of preference: Public cloud first, then Hybrid cloud, then Private cloud, and lastly non-cloud (on-premises) solutionsDesign for cloud mobility and develop an exit strategy to avoid vendor lock-in
 Design for Performance, Availability, and Scalability
 Design for resiliencyEnsure response times meet user needs, and critical services are highly availableSupport zero-downtime deployments for planned and unplanned maintenanceUse distributed architectures, assume failure will happen, handle errors gracefully, and monitor actively
 | 
|  | 
|  5. Security Architecture and Privacy 
 
 Design for Security and Privacy
 Implement security across all architectural layersCategorize data properly to determine appropriate safeguardsPerform a privacy impact assessment (PIA) when personal information is involvedBalance user and business needs with proportionate security measures
 |