软考架构师知识点

1. 架构部分

1.1 架构设计

1.1.1 基于体系结构的软件设计 ABSD(Archiecture-Based Software Design)

架构驱动的方法,自顶向下,软件系统的架构通过该方法得到细化,直到能产生软件构件或模块

1.1.2 4+1视图

  1. 逻辑视图:设计视图(类,对象,状态,协作图)
  2. 过程视图:线程或进程活动类建模,并发与同步结构(状态图)
  3. 开发视图:模块和组件代码静态组织结构(包、组件)
  4. 部署视图:软件到硬件映射和分步结构(网络部署图)
  5. 用例视图:需求分析模型(用例图)

1.1.3 架构风格

五大架构风格子风格定义架构场景
数据流体风格 Data flow style批处理、管道-过滤器数据过程处理和分析数据输入、解析过程固定
调用和返回风格 call and return style主程序/子程序、面向对象体系结构 Object-Oriented architecture、层次体系结构 Layered architecture简化与抽象系统复杂且大型软件
独立构件风格 Independent component style进程通信、事件驱动系统(隐式调用)总线-模块物联网泛播、消息队列等
虚拟机风格 virtual machine style解释器、规则系统Rule-based system 虚拟机,可变的解释引擎,适应自定义流程极易变动的流程和规则
仓库风格 Repository Style数据库系统、黑板系统、超文本系统数据仓库、算法模型库等数据持久化、数据快速查询等
  • 层次性架构
    描述软件层级关系,又称分层架构,(物联网,七层网络模型)
    • C/S
      一层:(用户接口、业务逻辑、数据管理)
      二层:(用户接口、业务逻辑)、分离数据
      三层 C/S 架构将应用系统分成表示层(用户和系统接口部分)、功能层(业务逻辑)、数据层(数据管理和控制)
  • 规则系统 Rule-based system
    基于规则的系统中的规则引擎负责对规则进行解释实现,能讲业务规则跟应用程序分离,减少运维工作

1.1.4 特定应用领域架构 DSSA(Domain Specifie Sottware Architecture)

特定应用领域中为一组应用提供组织结构参考的标准软件架构。从功能范围角度,垂直域定义了一个特定的系统族,包含整个系统族内的多个系统,可作为该领域系统的可行解决方案的一个通用软件架构;水平域顶一个在多个系统和多个系统族中功能区域的共有部分,再子系统级上涵盖多个系统族的特定部分功能。

1.2 架构评估

在进行架构评估时,一般未收先要精确得出具体的质量目标,并用其自以为判定该体系结构优劣的标准。把得出这些质量目标而采用的机制叫做场景,场景是从风险承担者的角度对与系统进行的交互的简短描述。再体系结构评估中一般采用刺激、环境、响应三个方面来对场景进行描述。刺激是指场景中解释或描述风险承担着怎样引发与系统的交互。如:用户会激发某个功能(新增需求),维护中可能会做某个更改,测试人员可能会执行某种测试这些都是对于场景的刺激。环境描述是刺激发生时的情况,如:当前系统处于何种状态?有如何的约束条件?是否存在系统负载很大?网络是否存在阻塞等。响应是指系统是如何通过体系结构对刺激做出的反应,如:用户所要求的功能是否得到满足?维护人员的修改是否成功?测试人员的测试是否成功等

在架构评估中,敏感点是一个或(和)多个构件之间的特性(关系)。改变加密级别的设计决策属于权衡点,因为他可能会安全性和性能产生非常重要的影响。

1.2.1 架构质量

  • 开发期质量属性
    • 开发人员:易理解性、可扩展性、可重用性、可维护性、可移植性
      • 易理解性: 设计被开发人员理解的难易程度,Max: 简单框架、避免前置条件的嵌套
      • 可扩展性(灵活性):软件因适应新需求活需求变化而增加新功能的能力。Max:通过框架可快速搭建模块等
      • 可重用性:重用软件系统或某一部分的难易程度。Max:模块复用
      • 可维护性:当需要修改缺陷、增加功能、提高质量属性时,定位修改点并实施修改的难易程度:Max:Bug定位
      • 可移植性:讲软件系统从一个运行环境转移到另一个不同的运行环境的难易程度。Max:跨平台跨语言集成管理工具
    • 测试人员:可测试性
      • 可测试性:对软件测试以证明器满足需求规范的难易程度。
  • 运行期质量属性
    • 客户与管理员:易用性、性能、安全、互操作性
      • 易用性:软件系统易于使用的程度。Max:极简化、扁平化、无串行流程理解等
      • 性能:软件系统及时提供相应服务能力。Max:用户行为的快速相应
      • 安全:软件系统同时兼向合法用户提供服务,阻止非授权行为使用的能力。Max:非授权用户行为杜绝,如反爬虫等
      • 互操作性:软件系统与其他系统交换数据和相互调用服务的难易程度。Max:通常表征为数据兼容性,即数据导入和导出
    • 运维人员:可伸缩性、可靠性、鲁棒性(健壮性、容错性)
      • 可伸缩性(可修改性):当用户数量增加时,软件系统自动(手动)维持高服务质量的能力。Max:负载均衡、弹性节点
      • 可靠性:软件系统在一定时间内无故障运行的能力。Max:时间检测
      • 鲁棒性: 软件系统在一些非正常情况下仍然能够正常运行。
        • 健壮性:即规定流程执行前后系统是否一致。
        • 容错性:即具体行为中意外出现时,系统是否正常运行。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软考系统架构设计师(高级)学习笔记汇总 系统架构设计师考试大纲 系统架构设计师考试大纲和复习指南 系统架构设计师课程大纲 系统架构设计师:浅谈架构 系统架构设计师:软件架构师之路 系统架构设计师复习笔记 系统架构师论文范文50篇(含完整目录) 系统架构设计师各知识点思维导图(很全很详细) 2010年下半年系统架构设计师上午试题分析与解答 2009年下半年系统架构设计师上午试题分析与解答 2009年下半年系统架构设计师上午题 2009年下半年系统架构设计师下午试题I分析与解答 2009年下半年系统架构设计师下午试题II分析与解答 2009年下半年系统架构设计师下午题I 2009年下半年系统架构设计师下午题II 2010年下半年系统架构设计师上午题 2010年下半年系统架构设计师下午试题II分析与解答 2010年下半年系统架构设计师下午题I 2010年下半年系统架构设计师下午题II 2011年下半年系统架构设计师上午试题 2011年下半年系统架构设计师上午试题分析与解答 2011年下半年系统架构设计师下午试题I 2011年下半年系统架构设计师下午试题I分析与解答 2011年下半年系统架构设计师下午试题II 2011年下半年系统架构设计师下午试题II分析与解答 系统架构设计师真题_2009-2015论文合集 系统架构设计师真题_2009下半年_案例分析 系统架构设计师真题_2009下半年_综合知识 系统架构设计师真题_2010下半年_案例分析 系统架构设计师真题_2011下半年_案例分析 系统架构设计师真题_2012下半年_案例分析 系统架构设计师真题_2013下半年_案例分析 系统架构设计师真题_2014下半年_案例分析 系统架构设计师真题_2014下半年_综合知识 系统架构设计师真题_2015下半年_案例分析 系统架构设计师真题_2015下半年_综合知识 系统架构设计师真题_2016下半年_上午试卷 系统架构设计师真题_2016下半年_下午试卷I
软考系统架构师知识点主要包括以下几个方面。 首先是系统架构设计原理和方法。这方面的知识点包括系统架构设计的基本原则和方法论,如模块化设计、分层设计、面向服务设计等。此外,还需要了解一些常用的系统架构设计模式,如MVC、MVVM等,以及它们的适用场景和优缺点。 其次是分布式系统架构。分布式系统是现代大型系统的常见形式,因此需要掌握相关的知识,包括分布式系统的设计原则、常见的分布式存储和计算技术、分布式事务等。 第三是数据架构设计。数据是系统的核心组成部分,需要进行合理的数据架构设计。此方面的知识点包括数据建模技术、数据库设计原则、数据一致性和完整性保证等。 第四是网络和安全。系统架构师需要对网络原理和协议、网络设备有一定的了解,以便进行合理的网络架构设计。同时,还需要了解常见的网络安全威胁和防护措施,以确保系统的安全性。 第五是性能和可用性设计。系统架构师需要对系统的性能和可用性进行评估和设计。知识点包括性能评测方法、性能调优技术、负载均衡和容灾设计等。 最后,软考系统架构师还需要了解其他相关的知识,如软件工程、项目管理、商业模式等。这些知识对于系统架构师的综合能力和业务理解都非常重要。 综上所述,软考系统架构师考试涵盖了系统架构设计的各个方面,包括原理、方法、技术和工具。考生需要全面掌握这些知识点,才能在考试中取得好的成绩。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值