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

文章目录

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

1. 概述

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

2. 发展

本段没有要掌握的内容。

3. 定义

  • 定义1:

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

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

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

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

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

  • 定义2:

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

4. 其他概念

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

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

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

相关推荐
h1771134720542 分钟前
基于区块链的相亲交易系统源码解析
大数据·人工智能·安全·系统架构·交友
辣香牛肉面2 小时前
十三 系统架构设计(考点篇)
系统架构
weixin_464838151 天前
grep命令如何实现正则表达式搜索?
linux·运维·服务器·网络安全·系统架构
傻傻虎虎2 天前
【系统架构设计】基于中间件的开发
中间件·系统架构
AmHardy2 天前
系统架构设计师 需求分析篇二
系统架构·需求分析·面向对象分析·分析模型·uml和sysml
我叫啥都行2 天前
计算机基础知识复习9.13
linux·笔记·后端·系统架构
程序员古德2 天前
《系统安全架构设计及其应用》写作框架,软考高级系统架构设计师
安全·系统架构·系统安全
程序员古德3 天前
《论负载均衡技术在Web系统中的应用》写作框架,软考高级系统架构设计师
前端·系统架构·负载均衡
傻傻虎虎3 天前
【系统架构设计】安全性和保密性设计(一)
系统架构
unclejet3 天前
如何做系统架构?从动态系统思考的角度
系统架构