「应用架构」应用架构行为准则

简介: 「应用架构」应用架构行为准则

应用架构行为准则

应用程序架构是企业解决方案架构(ESA)的一个子集(图1)。应用程序架构既是一个过程(架构和设计)又是一个东西(可交付成果——架构的内容)。应用程序架构帮助组织规划其在应用程序解决方案和其他系统中的投资。正在评估、设计和交付的应用程序解决方案必须能够与已建立的解决方案共存。其中包括新开发的应用程序、遗留应用程序扩展、应用程序现代化、购买的应用程序包及其升级。




图1

应用程序架构存在于多个详细级别:


  • 在概念层次上,企业架构(EA)策略和计划确保应用程序组合与其他形式的解决方案架构(业务、技术和信息)协同有效地发展。
  • 在逻辑层次上,应用程序架构超出了企业解决方案架构(ESA)工作的概念层次,它包括设计和重用软件服务和接口,从而提高了开发人员的生产力和应用程序的灵活性、质量和一致性。

应用程序架构的原则适用于所有类型的应用程序方法和解决方案。面向服务的架构(SOA)支持共享软件服务的需求正在推动组织实现应用程序架构师的角色和相关角色,包括SOA卓越中心(CoEs)或能力中心(CCs),以便跨SOA实现计划进行协调。

企业级范围和角色

在概念层次上,企业架构(EA)策略和计划确保应用程序组合与其他形式的解决方案架构(业务、技术和信息)协同有效地发展。

  • 在这个概念级别上,最能实现这些策略和计划以及应用程序架构规程的角色是企业解决方案架构师。
  • 项目级的解决方案和应用程序架构师也可能被要求担任这个角色(或者至少就AA规划问题咨询)。但是,将解决方案架构策略和规划职责与项目设计和实现职责分离是一种最佳实践,否则,两者都无法正确执行。

企业解决方案架构有两个主要级别(图2)-

  • 一个EA级别,包括代表不同架构和观点的各种类型的企业架构师-业务、技术、信息和解决方案(包括AA的概念级别)
  • 一种解决方案/项目级别,在解决方案设计和交付的详细逻辑和实现级别中包含多个架构师和分析师角色。

在EA概念级的细节中,企业解决方案架构师(在其他团队成员和项目级主题专家的帮助下)正在确定可重复的标准和指南,以及可重用的资产和投资,包括与应用程序架构相关的资产和投资,它可以传递给负责项目和个人解决方案的人。



图2

企业解决方案架构师的角色

企业解决方案架构师的角色可以是广泛而富有挑战性的。在大多数组织中,我们看到这个EA角色的两个主要职责领域:

1] 采用ESA的标准化和再利用

企业解决方案架构师将可重复的标准和指南交付给适当的企业解决方案组合,然后将这些以及现在定义/部署的共享服务和资产用于单个项目解决方案工作。



图3

2] 利用企业解决方案架构(ESA)协调当前和未来的状态

  • 根据ESA的现状,决定需要记录哪些内容(并在发生变化时进行更新)。解决方案架构师应确保正确描述每个解决方案。
  • 与其他架构师合作,创建并记录欧空局未来状态的愿景,包括解决与在正确的时间为每个架构的正确更改提供资金相关的业务问题。然后,解决方案架构师应确保每个解决方案都针对其未来状态进行了适当的规划(包括一个解决方案对EA标准和指南的利用,以及解决方案模式中描述的解决方案组合中的那些标准和指南)。
  • 确保合适的人员、流程和技术到位,以实现有效的协作

项目级范围和角色

未能区分解决方案架构师工作和应用程序架构师工作的企业错过了确保单个项目成功和多个项目重用的机会。

  • 应用程序架构师有责任以最大化重用为目标进行设计,并尽可能消除项目、应用程序系统和业务单元之间的冗余和不一致。
  • 虽然解决方案架构师将通过创建可重用的软件和信息服务来促进重用,但相对于为项目团队正在构建、集成和/或部署的特定解决方案定义一个合理、有效和完整的设计,它的优先级较低。
  • 企业解决方案架构(ESA)团队(包括SAs和a as)负责细节和内容的概念级别,包括将哪些标准、指南、可重用资产和投资传递给项目作为起点

解决方案架构师

SAs专注于给定项目的所有架构方面(尽管它们可能一次处理多个项目)。正如企业SA确保ESA团队成员在概念/规划详细级别上的架构协作一样,SAs也确保了项目级别上的架构协作。此外,他们必须完成一个完整的设计,定义解决方案的所有方面,包括但不限于应用程序架构方面。

应用程序架构师

AAs的重点是应用接口和软件服务的设计。与设计应用程序接口和软件服务相关联的强调程度取决于项目方法,以及有多少预先存在的接口和服务可以重用和构建。因此,AAs侧重于应用程序软件(box)之间接口(line)的设计,以及box的设计,以使它们尽可能像应用程序服务那样可重用。AAs有责任设计接口和服务,以提高应用程序的灵活性,最大限度地重用,并尽可能消除项目、应用程序系统和业务部门之间的冗余和不一致。

以下是SA职责与AA职责的比较。



图4

大多数组织最初都将AA的重点放在应用程序接口的设计上,而且有充分的理由——应用程序集成是实现应用程序包以及支持将新的SOA Web浏览器与遗留应用程序和数据集成的一个主要问题。虽然良好的应用程序接口设计解决了稳定性、安全性和性能问题,但也希望尽可能提高业务敏捷性和开发人员的生产力。

  • 具有SOA服务接口设计技能的AA侧重于应用程序接口(行)。
  • AA与SOA软件服务提供商的设计技能侧重于应用程序服务(box)。
  • 具有实现编码技能的开发人员根据AA生成的设计对服务的消费者和提供者实现以及新的应用程序服务(行和框解决方案)进行编码。

以下是AA和应用程序开发团队的职责区别-



图5

相关文章
|
6天前
|
Kubernetes Cloud Native 持续交付
探索云原生架构:打造弹性可扩展的应用
【9月更文挑战第29天】在云计算的浪潮中,云原生架构成为企业追求高效、灵活和可靠服务的关键。本文将深入解析云原生的概念,探讨如何利用容器化、微服务和持续集成/持续部署(CI/CD)等技术构建现代化应用。我们将通过一个简易的代码示例,展示如何在Kubernetes集群上部署一个基于Node.js的应用,从而揭示云原生技术的强大能力和潜在价值。
19 6
|
7天前
|
监控 Cloud Native 持续交付
云原生架构:构建弹性与高效的现代应用##
随着云计算技术的不断成熟,云原生架构逐渐成为企业技术转型的重要方向。本文将深入探讨云原生的核心概念、主要技术和典型应用场景,以及如何通过云原生架构实现高可用性、弹性扩展和快速迭代,助力企业在数字化转型中保持竞争优势。 ##
25 6
|
8天前
|
运维 Cloud Native 持续交付
云原生架构:构建未来应用的基石
本文将深入探讨云原生架构的核心概念、主要优势以及实际应用案例,揭示其在现代IT领域的重要性。通过详细解析云原生技术的各个方面,帮助读者更好地理解和应用这一前沿技术。
|
9天前
|
Cloud Native 持续交付 云计算
探索云原生架构:构建现代应用的新范式
在当今数字化浪潮中,云原生架构以其敏捷性、弹性和可扩展性成为企业技术转型的核心驱动力。本文将引领读者深入理解云原生的概念,剖析其关键技术组件——微服务、容器化、DevOps实践及持续交付/持续部署流程,并揭示这些技术如何相互协作,共同构建高效、可靠且易于管理的现代软件系统。通过对云原生架构的全面解读,我们旨在为开发者、架构师乃至企业决策者提供有价值的见解与指导,助力其在快速变化的市场环境中保持竞争力。
|
15天前
|
Kubernetes Cloud Native Serverless
探索云原生技术:从基础架构到应用实践
本文深入探讨了云原生技术的各个方面,包括其定义、核心原则、关键技术组件以及在现代企业中的应用。通过分析云原生如何推动数字化转型和提高业务敏捷性,文章旨在为读者提供对这一领域的全面了解和实际应用的指导。
42 7
|
17天前
|
Kubernetes Cloud Native 持续交付
深入理解云原生技术及其在现代IT架构中的应用
【9月更文挑战第18天】云原生技术,作为推动企业数字化转型的引擎,正以它独特的魅力重塑着信息技术的未来。本文将带你一探究竟,从云原生的基础概念出发,逐步深入到其核心组件、设计理念以及如何在实际应用中发挥巨大作用。你将了解到容器化、微服务架构、持续集成与持续部署(CI/CD)等关键实践,并见证它们如何帮助企业构建更加灵活、高效和可靠的应用。
|
8天前
|
前端开发 测试技术 API
探索微前端架构:构建现代化的前端应用
在软件开发中,传统单体架构已难以满足快速迭代需求,微前端架构应运而生。它将前端应用拆分成多个小型、独立的服务,每个服务均可独立开发、测试和部署。本文介绍微前端架构的概念与优势,并指导如何实施。微前端架构具备自治性、技术多样性和共享核心的特点,能够加速开发、提高可维护性,并支持灵活部署策略。实施步骤包括定义服务边界、选择架构模式、建立共享核心、配置跨服务通信及实现独立部署。尽管面临服务耦合、状态同步等挑战,合理规划仍可有效应对。
|
8天前
|
Cloud Native Devops 持续交付
探秘云原生架构:构建高效、灵活的现代应用
在当今数字化时代,企业面临着日益复杂的技术挑战和快速变化的业务需求。为了适应这种环境,云原生架构应运而生。本文将带您深入了解云原生的核心概念、关键技术和应用案例,揭示其在提升业务效率、降低运维成本方面的独特优势。通过阅读本文,您将获得关于如何利用云原生技术构建现代化应用的宝贵见解。
25 0
|
11天前
|
传感器 监控 物联网
无线传感器网络的基本架构及其广泛应用
无线传感器网络的基本架构及其广泛应用
42 0
|
16天前
|
Kubernetes Cloud Native Devops
云原生架构的崛起与应用##
云原生架构是现代企业数字化转型的关键,通过容器化、微服务、DevOps等技术,实现高效、灵活的应用部署和管理。本文探讨云原生的核心概念、主要技术及其实际应用价值,揭示其在提升企业运营效率和创新能力中的重要性。 ##
21 0
下一篇
无影云桌面