有网友碰到这样的问题“软件构架架构的种类”。小编为您整理了以下解决方案,希望对您有帮助:
解决方案1:
在探讨软件架构时,我们可以从三个核心角度进行分类:
首先,逻辑架构关注的是软件系统中各个元件之间的关系,例如用户界面、数据库、外部系统接口和商业逻辑模块等。一个具体的例子是,如图所示的逻辑架构图,它将系统分为表象、商业和数据持久三个层次,每个层次都包含多个逻辑元件,如WEB服务器层次中的HTML服务、Session服务等。
其次,物理架构考虑的是软件元件在硬件上的分布和配置。例如,图3展示了一个分布在北京和上海的分布式系统的物理架构,包括网络设备、代理服务器、WEB服务器等实体硬件。
最后,系统架构关注的是非功能性特性,如系统的可扩展性、可靠性、性能等。这是架构设计中最具挑战性的部分,因为它要求架构师具备深入的软件和硬件知识。设计时,逻辑结构、物理结构以及它们对系统性能的影响是至关重要的决策,这些决定往往具有较高的稳定性和难以更改性。
在设计过程中,逻辑元件的划分和设计决策是架构的两个关键要素。逻辑元件的分布和它们对系统性能的贡献是关键信息。例如,一个基于数据库的系统,如包含大约100个数据表,其架构设计文档可能会达到一百页的规模,这反映了设计的复杂性和精细度。
扩展资料
软件架构(software architecture),是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件,各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口(计算机科学)来实现。