Developing and Maintaining Key IT Architectural Principles
A good source for open systems Architectural Principles is from the Open Group
Developing Architectural Principles
Enterprise Architecture Principles are created by:
• Chief Architect (SI or Client)
• Architecture Review Board (Top IT management, Business Owners)
Architectural principles are guided by overarching Business and IT principles at the Enterprise Level. They will be different for various and specific sub-systems, which are not Enterprise based. The goal is to align IS/IT with Business objectives. This can be done using the following methods:
• Enterprise Mission and Plans: IT should be embedded in these plans.
• Enterprise Strategic Initiatives: The characteristics of the enterprise – its strengths, weaknesses, opportunities, and threats and responses (a SWOT)
• External Constraints: Market factors (time-to-market imperatives, customer expectations, regulators etc.);
• Current Estate and use of Technology including Human resource skills. rocedures
• IT Trends and technological opportunities. An example is Cloud.
Aspects of Architecture Design Principles
There are a few key aspects of IT Architecture design which illustrate a good set of principles. Much of it is KISS based or Keep it simple Sam.
• Applied: We can apply the principles across the Enterprise (sometimes emanating from a Centre of Excellence).
• Simple: Principle is clear and unambiguous and can be applied (without being compromised).
• Robust: Principle meets the needs of the organisation and is necessary, and not a wish list item (eg HA, or Security).
• Complete: Principle cannot be open-ended or mis-interpreted or subject to modification (eg. Single Sign On, Data encryption at rest).
• Consistent: Every word in a principle statement should be carefully chosen to allow consistent yet flexible interpretation. This is important given that sub-enterprise apps will have their own functional and non-functional complexities.
• Stable: Immutable unless amended by a review board, with exceptions being given for example, for specific applications and projects.
• Common Repository: All documents, key emails, meeting notes are in containers, within a common repo.
• Common Methodology: Agile-Scrum, or Scrum-Ban should be used for all projects and imposed as a corporate standard.
An example of Architectural Principles
Too many principles are as confusing as too few. There are categories which will parametrize the number of principles for your firm. Business, IT Functional, IT Non-Functional Requirements are the main categories with Security for example being a part of NFR (non-functional requirements).
Another example of architectural principles is contained in the U.S. government’s Federal Enterprise Architecture Framework.
1) Business Principles
1. Principle: Primacy of Principles
Statement: These principles of information management apply to all organizations within the enterprise.
Rationale: The only way we can provide a consistent and measurable level of quality information to decision makers is if all organizations abide by the principles.
• Without this principle, exclusions, favoritism, and inconsistency would rapidly undermine the management of information.
• Information management initiatives will not begin until they are examined for compliance with the principles.
• A conflict with a principle will be resolved by changing the framework of the initiative.
2. Principle: Maximize Benefit to the Enterprise
Statement: Information management decisions are made to provide maximum benefit to the Enterprise as a whole.
Rationale: This principle embodies “Service above self.” Decisions made from an Enterprise-wide perspective have greater long-term value than decisions made from any particular organizational perspective. Maximum return on investment requires information management decisions to adhere to Enterprise-wide drivers and priorities. No minority group will detract from the benefit of the whole. However, this principle will not preclude any minority group from getting its job done.
• Achieving maximum Enterprise-wide benefit will require changes in the way we plan and manage information. Technology alone will not bring about this change.
• Application development priorities must be established by the entire Enterprise for the entire Enterprise.
• Applications components should be shared across organizational boundaries.
• Information management initiatives should be conducted in accordance with the Enterprise plan. Individual organizations should pursue information management initiatives which conform to the blueprints and priorities established by the Enterprise. We will change the plan as we need to.
Using the format above firm’s can add Business Principles including:
1. -Ease of Access
2. -Single Sign on to Applications
3. -Business Continuity in spite of IT disruptions
4. -Common platforms usage (vs. snowflake developments)
5. -Legal and Regulatory Compliance
2) IT Principles
Using the same template format given above firms should identify IT Principles and Responsibilities including:
1. System Security at all levels of the ISO stack
2. Application Ease of Use
3. Applications and Loose Coupling
4. Data backup
5. Disaster Recovery
6. High Availability
7. Operational Maintenance
8. Target Platform Standards
9. Database Standards
10. Code Base Standards (eg. Object Oriented, documentation necessary etc)
11. Interoperability standards (API design, REST etc)
12. Data Models (CDM)
13. Data Dictionary and Common Language (To describe elements, data)
14. Data as an Asset
15. Data Security (eg Encryption)
16. Partner Standardization (select partners based on key principles)
17. Governance Principles
18. Change Request Principles
19. Return on IT Investment
An example of the above is the Principle of Interoperability:
Statement: Software and hardware should conform to defined standards that promote interoperability for data, applications and technology.
Rationale: Standards help ensure consistency, thus improving the ability to manage systems and improve user satisfaction, and protect existing IT investments, thus maximizing return on investment and reducing costs. Standards for interoperability additionally help ensure support from multiple vendors for their products, and facilitate supply chain integration.
• Interoperability standards and industry standards will be followed unless there is a compelling business reason to implement a non-standard solution.
• We will use API led development including REST, JSON payload format, and middleware decoupling producer from the consumer.
• Middleware platform should be standardized as XYZ platform which is a Cloud based iPaaS.
• A process for setting standards, reviewing and revising them periodically, and granting exceptions must be established.
• The existing IT platforms must be identified and documented.