《系统架构设计师教程(第2版)》第12章-信息系统架构设计理论与实践-01-信息系统架构(ISA)基本概念及发展

文章目录

  • [1. 概述](#1. 概述)
  • [2. 发展](#2. 发展)
  • [3. 定义](#3. 定义)
  • [4. 其他概念](#4. 其他概念)

1. 概述

  • 概念
    • Information System Architecture
    • 指对某一特定内容里的信息进行统筹、规划、设计、安排等一系列有机处理的活动
    • 是关于软件系统的结构、行为和属性的高级抽象
      • 描述阶段:
        • 其对象是直接构成系统的抽象组件以及各个组件之间的连接规则
        • 特别是应当细致地描述组件之间的通信
      • 实现阶段:抽象组件被细化为实际的组件(如具体类或者对象)
  • 两个层次
    • 概念层次:包含了艺术、科学、方法和建设风格
    • 物理层次:架构工作之后产生的物理结构及相关结果

2. 发展

本段没有要掌握的内容。

3. 定义

  • 定义1:

    • 信息系统架构是该系统的一个(或多个)结构

    • 由软件元素、元素的外部可见属性及它们之间的关系组成

      • 软件元素:指比"构件"更一般的抽象
      • 元素的外部可见属性:如,它所提供的服务、性能特征等

      吐槽:此处教材原文:"元素的外部可见属性是指其他元素对该元素所做的假设"。这实在不像正常人的认知,感觉是翻译软件干的事情,大老爷们应该也不校对。

      如下解释应该比较合理:元素的外部可见属性是指可以被其他软件元素或系统外部观察到或使用的属性

  • 定义2:

    • 信息系统架构为软件系统提供了一个结构、行为和属性的高级抽象
    • 由构成系统元素的描述、这些元素的相互作用、指导元素集成的模式及这些模式的约束组成

4. 其他概念

  • 仅与内部具体实现有关的细节是不属于架构
    • 原因:定义中强调了元素的外部可见属性
  • 整体中的个别结构不能代表信息系统架构
    • 原因:定义中强调,它是由该系统的一个或多个结构组成
  • 任何软件都存在架构,架构可以独立于架构的描述而存在
    • 原因:不管你写不写文档,架构都在那里
  • 抽象的两个方面
    • 静态方面,关注系统的宏观总体结构。如,分层
    • 动态方面:关注系统内关键行为的共同特征
  • 架构具有"基础"性
    • 通常涉复用性,及影响深远的重要决策

以下,在讲架构的时候都说过,教材这里再次提到,随便看一下即可

  • 影响架构的因素
    • 软件系统的项目干系人对软件系统有不同的要求
    • 开发组织有不同的人员知识结构
    • 架构设计师的素质与经验
    • 当前的技术环境等
  • 这些因素如何影响架构:
    • 通过功能性需求、非功能性需求、约束条件等影响架构设计师的决策,从而影响架构。
  • 架构对上述诸因素具有反作用
    • 如,架构影响开发组织的结构:按架构进行分工,将项目组分为几个工作组
    • 如,影响开发组织的目标:好的架构为开发组织提供了新的商机

相关推荐
派叔19 小时前
老字号数字化转型的困境与路径:一个系统架构视角下的观察
大数据·人工智能·系统架构·产品运营·流量运营
Hardworking66619 小时前
第4章 信息系统架构
系统架构·系统集成项目管理工程师·信息系统架构·信息技术服务
AI 小老六19 小时前
Agent 评测系统架构:从指标分层到 GT/Judge 闭环的工程化落地
人工智能·ai·架构·系统架构·可用性测试
小帽子_12320 小时前
大型储能液冷温控系统原理:散热架构、流道设计与温控精准控制逻辑
架构·系统架构
LONGZETECH21 小时前
新能源汽车动力电池检测仿真教学系统:C/S 分层架构与数字化实训落地全解析
大数据·c语言·开发语言·人工智能·架构·系统架构·汽车
小帽子_1231 天前
工商业储能并网与谐波治理技术:滤波原理与电能质量优化方案
系统架构
Token炼金师1 天前
服务的骨架:网关、负载均衡、容灾、弹性与多机房 —— 推理系统架构五柱
人工智能·系统架构·llm·负载均衡·容灾·kv cache·prefix cache
言乐62 天前
Python快速生成工作报告
python·系统架构·html·交互·软件构建
qzhqbb2 天前
Agent 系统架构与核心技术要点
人工智能·系统架构
张琦-Q3 天前
【RTOS】上下文切换原理
系统架构