「企业应用架构」应用架构概述

简介: 「企业应用架构」应用架构概述

超级架构师推荐搜索

解决方案企业架构软件架构数据架构业务架构

在信息系统中,应用架构或应用架构是构成企业架构(EA)支柱的几个架构域之一

应用架构描述了业务中使用的应用程序的行为重点是它们如何相互之间以及如何与用户交互。它关注的是应用程序消费和生成的数据,而不是它们的内部结构。在应用程序组合管理中,应用程序被映射到业务功能和流程以及成本、功能质量和技术质量,以评估所提供的价值

应用架构是根据业务和功能需求指定的。这涉及到根据功能覆盖率定义应用程序包、数据库和中间件系统之间的交互。这有助于识别功能覆盖范围中的任何集成问题或差距。然后,可以为处于软件生命周期末尾或具有固有技术风险的系统制定迁移计划。

应用架构试图确保组织创建复合架构所使用的应用程序套件是可伸缩的、可靠的、可用的和可管理的。

应用架构定义了多个应用程序如何准备一起工作。它不同于软件架构,后者处理如何构建系统的技术设计

人们不仅需要理解和管理复合架构正在实现的功能的动态性,而且还需要帮助制定部署策略,并留意可能危及组织增长和/或运营的技术风险

策略

应用架构策略包括确保应用程序和集成与组织的增长策略一致。如果一个组织是一个通过收购有快速增长计划的制造组织,那么应用程序应该足够灵活,能够包含继承的遗留系统以及其他大型竞争系统。

模式

  • 主要文章:架构模式
  • 进一步信息:软件设计模式

根据应用程序遵循的应用架构模式,可以将应用程序分类为各种类型。

一个“模式”被定义为:“一个在一个实际环境中有用并且可能在其他环境中有用的想法”。

要创建模式,需要构建块构建块是软件的组件,主要是可重用的,可以用来创建某些功能。模式是一种将构建块放到上下文中并描述如何使用构建块来解决一个或多个架构问题的方法。

应用程序是各种功能的选编,通常都遵循相同的模式。此模式定义应用程序的模式。

应用程序通常遵循以下行业标准应用架构模式之一:

  • 客户机代理服务器:充当许多低速链接访问服务器的集中器。
  • 客户支持:支持跨多个组织的复杂客户联系。
  • Reactor:将事件与其处理分离。
  • 复制服务器:复制服务器以减轻中央服务器的负担。
  • 分层架构(Layered architecture):服务的分解,使得大多数交互只发生在相邻层之间。
  • 管道和过滤器架构:在一系列增量步骤或过程中转换信息。
  • 子系统接口:管理功能(子系统)的内聚组之间的依赖关系。
  • 自助服务:用户在24/7的基础上访问事务(即用户对业务)。
  • 协作:用户相互协作以共享数据和信息(即用户对用户)
  • 信息聚合:来自多个来源的数据在多个渠道上聚合和呈现(也就是用户到数据)
  • 以事件为中心:数据事件(最初可能起源于设备、应用程序、用户、数据存储或时钟)和事件检测逻辑,它们可以有条件地丢弃事件、启动与事件相关的进程、向用户或设备管理器发出警报或更新数据存储。
  • 以企业流程为中心:业务流程管理多个企业内部应用程序、服务、子流程和用户之间的交互。
  • 批量处理:业务流程管理一个或多个批量数据源和目标之间的交互。
  • 扩展企业:业务流程管理多个企业间应用程序、服务、子流程和用户之间的交互。
  • 扼杀器模式:通过逐渐用新的应用程序和服务替换特定的功能部件,以增量方式迁移遗留系统。当旧系统的功能被替换时,新系统最终会替换旧系统的所有功能,扼杀旧系统,并允许您将其退役

正确的应用程序模式取决于组织的行业和组件应用程序的使用。如果一个组织既能有机地成长,又能通过收购而成长,那么它可能有多种模式。


应用架构师

应用架构师是计算机编程团队中的一名领导或技术经理,专门负责构建应用程序和使用的技术。

知识领域

应用程序建模

将建模作为开发新的或增强的应用程序的框架,使用建模来发现问题、降低风险、提高可预测性、降低成本和上市时间,测试各种产品场景,结合客户的需求/需求,在必要时向开发过程添加测试设计决策,评估产品设计问题。

竞争情报、商业建模、战略分析

了解全球市场、消费者、行业和竞争,以及全球商业模式、战略、财务、运营和结构之间的相互关系。了解竞争环境,包括市场、行业、竞争和监管环境的当前趋势,以及了解商业模式的组成部分(即战略、财务、运营)如何相互关联,以使组织在市场上具有竞争力。了解组织的业务流程、系统、工具、法规和结构,以及它们如何相互关联以提供为客户、消费者和关键利益相关者创造价值的产品和服务。了解为客户、消费者和关键利益相关者创造的价值如何与组织的愿景、业务、文化、价值主张、品牌承诺和战略要求相一致。了解组织过去和现在的成就和缺点,以评估与竞争环境相关的优势、劣势、机会和风险。

技术

了解IT战略、开发生命周期和应用程序/基础架构维护;了解IT服务和支持流程,以提升竞争优势、创造效率和增加业务价值。

技术标准

充分了解构成有效支持现有和未来业务需求所必需的基础设施的关键技术,确保所有硬件和软件在集成到业务环境之前符合基线要求和标准,了解并能够制定技术标准和程序,以促进新技术的使用,为使用和应用新技术制定有用的指导方针。

任务

应用架构师是组织中应用程序特定的一切的大师。应用架构师从以下角度理解所有应用程序,从而为应用程序维护团队提供战略指导:

  1. 互操作能力
  2. 性能和可扩展性
  3. 可靠性和可用性
  4. 应用程序生命周期阶段
  5. 技术风险
  6. 实例数

上述分析将指出需要进行一系列更改的应用程序—从零碎应用程序的部署策略更改到在其技术或功能生命周期结束时完全替换应用程序。

功能足迹

了解主要业务流程的系统流程。它清晰地显示了功能图和地图上各种应用程序的应用程序足迹。

许多组织没有文档规程,因此缺少详细的业务流程流和系统流程流。一个人可能不得不开始一项倡议,把这些放在首位。

创建解决方案架构指导原则

每个组织都有一组核心应用程序,这些应用程序可以作为单个实例或每个部门的不同实例跨多个部门使用。为所有核心应用程序创建一个解决方案架构模板,以便所有项目都有设计实现的共同起点。

架构世界的标准在TOGAF中定义,开放组架构框架将EA的四个组件描述为BDAT(业务架构、数据架构、应用架构和技术架构,

根据组织的复杂程度,还需要考虑其他标准:

  • EA的Zachman框架
  • 联邦企业架构(FEA)
  • gartner

其他方面

  • ISO/IEC 42010 Systems and software engineering — Architecture description is an international standard for architecture descriptions of systems and software.
  • IEEE 1471 a superseded IEEE Standard for describing the architecture of a "software-intensive system", also known as software architecture.
  • IBM Systems Application Architecture
  • Enterprise architecture planning
相关文章
|
14天前
|
设计模式 Java API
Java 可扩展 API 设计:打造灵活的应用架构
【4月更文挑战第27天】设计可扩展的 API 是构建灵活、易于维护的应用程序架构的关键。Java 提供了丰富的工具和技术来实现这一目标,使开发者能够构建具有高度可扩展性的应用程序。
37 4
|
1天前
|
弹性计算 负载均衡 容灾
应用阿里云弹性计算:打造高可用性云服务器ECS架构
阿里云弹性计算助力构建高可用云服务器ECS架构,通过实例分布、负载均衡、弹性IP、数据备份及多可用区部署,确保业务连续稳定。自动容错和迁移功能进一步增强容灾能力,提供全方位高可用保障。
7 0
|
2天前
|
运维 Cloud Native 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【5月更文挑战第9天】 随着数字化转型的浪潮席卷全球,企业正迅速采纳云原生技术以实现敏捷性、可扩展性和弹性。本文深入探讨了云原生架构的关键组件,包括容器化、微服务、持续集成/持续部署(CI/CD)和DevOps文化,并分析了这些技术如何帮助企业加速产品上市时间,提高运营效率,并最终实现业务目标。同时,文章也识别了企业在采纳云原生实践中可能面临的挑战,如安全性考量、团队技能提升和复杂的网络管理,并提出了相应的解决方案和最佳实践。
|
3天前
|
消息中间件 安全 搜索推荐
概述软件架构的定义与分类
【5月更文挑战第8天】软件架构是指导大型软件系统设计的抽象模式集合,旨在简化复杂工程,通过模块化实现系统各方面的分工。
|
5天前
|
监控 负载均衡 API
微服务架构在现代企业中的应用与挑战
微服务架构已成为现代企业构建灵活且可扩展软件系统的首选。然而,随着其应用的普及,企业也面临着一系列新的挑战。本篇文章将探讨微服务架构的优势、实施时遇到的问题以及解决这些问题的策略。
|
5天前
|
Kubernetes Cloud Native 持续交付
构建高效云原生应用:Kubernetes与微服务架构的融合
【5月更文挑战第6天】 在数字化转型的浪潮中,企业正迅速采纳云原生技术以实现敏捷性、可扩展性和弹性。本文深入探讨了如何利用Kubernetes这一领先的容器编排平台,结合微服务架构,构建和维护高效、可伸缩的云原生应用。通过分析现代软件设计原则和最佳实践,我们提出了一个综合指南,旨在帮助开发者和系统架构师优化云资源配置,提高部署流程的自动化水平,并确保系统的高可用性。
28 1
|
10天前
|
Cloud Native 安全 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【5月更文挑战第1天】 随着数字化转型的深入,云原生技术以其灵活性、可扩展性和敏捷性成为现代企业IT架构的核心。本文将探讨云原生架构的关键组件,包括容器化、微服务、持续集成/持续部署(CI/CD)以及DevOps实践,并分析它们如何共同塑造企业的运营模式。同时,文章还将讨论在采纳云原生过程中企业可能遇到的挑战,如安全性问题、技术复杂性以及组织文化的转变,并提出应对策略。
28 8
|
11天前
|
前端开发 JavaScript 安全
【TypeScript技术专栏】TypeScript在微前端架构中的应用
【4月更文挑战第30天】微前端架构通过拆分应用提升开发效率和降低维护成本,TypeScript作为静态类型语言,以其类型安全、代码智能提示和重构支持强化这一架构。在实践中,TypeScript定义公共接口确保跨微前端通信一致性,用于编写微前端以保证代码质量,且能无缝集成到构建流程中。在微前端架构中,TypeScript是保障正确性和可维护性的有力工具。
|
12天前
|
Cloud Native Devops 持续交付
构建未来应用:云原生架构在现代企业中的实践与挑战
【4月更文挑战第29天】 随着数字化转型的加速,企业正迅速转向云计算以支撑其业务敏捷性和创新。云原生技术,作为推动这一转型的关键因素,正在重新定义软件开发和运维模式。本文将深入探讨云原生架构的核心组件,包括容器化、微服务、持续集成/持续部署(CI/CD)以及DevOps文化,并分析这些技术如何帮助企业实现弹性、可扩展和高效的应用部署。同时,我们将讨论在采纳云原生实践中所面临的挑战,包括安全性、治理和人才缺口等问题。
|
12天前
|
消息中间件 PHP 数据库
【PHP开发专栏】PHP在微服务架构中的应用
【4月更文挑战第29天】微服务架构将大型应用拆分成独立小服务,PHP在其中可作为API网关、微服务提供者,参与服务发现、消息队列处理和事件驱动。最佳实践包括选择合适PHP框架、使用容器化技术、定义服务契约、采用分布式缓存、实现服务发现、监控和日志收集、优化数据库设计以及注重安全性。遵循这些实践,PHP开发者能构建高效、可扩展的微服务应用。