软考之软件架构设计

这篇具有很好参考价值的文章主要介绍了软考之软件架构设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

软件架构的概念(★★★)

软件架构风格(★★★★★)

架构描述语言ADL(★★★)

特定领域软件架构(★★★)

基于架构的软件开发(★★★★)

软件质量属性(★★★★★)

软件架构评估(★★★★★)

软件产品线(★★★)

构件与中间件技术(★★★★)

Web架构设计(★★★★★)

架构的本质

1、软件架构为软件系统提供了一个结构、行为和属性的高级抽象。

2、软件架构风格是特定应用领域的惯用模式,架构定义一个词汇表和组约束。

架构的作用

1、软件架构是项目干系人进行交流的手段。
2、软件架构是可传递和可复用的模型,通过研究软件架构可能预测软件的质量。
3、软件架构使推理和控制的更改更加简单,有助于循序渐进的原型设计,可以作为培训的基础。

软件架构的概念

软考之软件架构设计

以下叙述,(D)不是软件架构的主要作用。

A在设计变更相对容易的阶段,考虑系统结构的可选方案

B便于技术人员与非技术人员就软件设计进行交互

C展现软件的结构、属性与内部交互关系

D表达系统是否满足用户的功能性需求

架构的发展历程

软考之软件架构设计

架构的"4+1"视图

软考之软件架构设计

UML的“4+1”视图

软考之软件架构设计

软件架构风格

  • 架构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个构件有效地组织成一个完整的系统。
  • 架构风格定义了用于描述系统的术语表和一组指导构建系统的规则。

软考之软件架构设计

软件架构风格——数据流风格【数据驱动】

软考之软件架构设计

软考之软件架构设计

批处理和管道-过滤器

软考之软件架构设计

调用/返回风格

软考之软件架构设计

软考之软件架构设计

调用/返回风格之分层架构风格

软考之软件架构设计

独立构件风格

其中最常见的子风格是:事件驱动系统【隐式调用】

构件之间,不直接交互【松耦合】

软考之软件架构设计

优点、缺点、特点

软考之软件架构设计

虚拟机风格

JAVA虚拟机【windos版本、linux版本】

软考之软件架构设计

软考之软件架构设计

仓库风格

使用了仓库风格的例子:注册表、剪切版

软考之软件架构设计

软考之软件架构设计

黑板系统

黑板风格适用于解决疑难杂症

软考之软件架构设计

优缺点

软考之软件架构设计

闭环控制架构(过程控制)

开环控制系统:控制器控制电视机换台

闭环控制系统:空调温度自动反馈调节【空调温控、定速巡航】

软考之软件架构设计

C2风格

软考之软件架构设计

C2架构的基本规则:

  • 构件和连接件都有一个顶部和一个底部。
  • 构件的顶部要连接到连接件的底部,构件的底部要连接到连接件的顶部,构件之间不允许直连。
  • 一个连接件可以和任意数目的其他构件和连接件连接。
  • 当两个连接件进行直接连接时,必须由其中一个的底部到另一个的顶部。

练习题

填空题
  • Java程序可以做到“一次编写,到处运行”,从架构风格上看符合(虚拟机)风格的特点。

  • 在网络通信中,进行包的解析,一般先进行包头的分离,然后进行报文解析及后续处理,根据这一特点,选用(数据流)风格最合适。

  • 某公司欲开发一个基于图形用户界面的集成调试器。该调试器的编辑器和变量监视器可以设置调试断点。当调试器在断点处暂停运行时,编辑程序可以自动卷屏到断点,变量监视器刷新变量数值。针对这样的功能描述,采用(隐式调用/事件驱动)的架构风格最为合适。

  • 某游戏公司欲开发一个大型多人即时战略游戏,游戏设计的目标之一是能够支持玩家自行创建战役地图,定义游戏对象的行为和之间的关系。针对该目标,公司应该采用(解释器)架构风格最为合适。(四选一:管道-过滤器、隐式调用、主程序-子程序、解释器)

  • 某公司承接了一个开发家用空调自动调温器的任务,调温器测量外部空气温度,根据设定的期望温度控制空调的开关。根据该需求,公司应采用(过程控制)架构风格最为百色。(四选—︰解释器、过程控制、分层、管道-过滤器)

  • 某公司欲开发一个语音识别系统,语音识别的主要过程包括分割原始语音信号、识别音素、产生候选词、判定语法片断、提供语义解释等。每个过程都需要进行基于先验知识的条件判断并进行相应的识别动作。针对该系统的特点,采用(黑板)架构风格最为合适。(四选一︰解释器、面向对象、黑板、隐式调用)

  • 某公司欲开发一个漫步者机器人,用来完成火星探测任务。机器人的控制者首先定义探测任务和任务之间的时序依赖性,机器人接受任务后,需要根据自身状态和外界环境进行动态调整,最终自动完成任务。针对这些需求,该机器人应该采用(解释器)架构风格最为合适。(四选一:解释器、主程序-子程序、隐式调用、管道-过滤器)

    机器人的控制者首先定义探测任务和任务之间的时序依赖性 解释器

    需要根据自身状态和外界环境进行动态调整 过程控制、隐式调用

  • Windows操作系统在图形用户界面处理方面采用的核心架构风格是(隐式调用/事件驱动)风格。

选择题

“编译器”是一种非常重要的基础软件,其核心功能是对源代码形态的单个或一组源程序依次进行预处理、词法分析、语法分析、语义分析、代码生成、代码优化等处理,最终生成目标机器的可执行代码。考虑以下与编译器相关的软件架构设计场景:传统的编译器设计中,上述处理过程都以独立功能模块的形式存在,程序源代码作为一个整体,依次在不同模块中进行传递,最终完成编译过程。针对这种设计思路,传统的编译器采用(B)架构风格比较合适。
随着编译、链接、调试、执行等开发过程的一体化趋势发展,集成开发环境(IDE)随之出现。IDE集成了编译器、连接器、调试器等多种工具,支持代码的增量修改与处理,能够实现不同工具之间的信息交互,覆盖整个软件开发生命周期。针对这种需求,IDE采用(C)架构风格比较合适。IDE强调交互式编程,用户在修改程序代码后,会同时触发语法高亮显示、语法错误提示、程序结构更新等多种功能的调用与结果呈现,针对这种需求,通常采用(A)架构风格比较合适。
某公司已经开发了一款针对某种嵌入式操作系统专用编程语言的IDE,随着一种新的嵌入式操作系统上市并迅速占领市场,公司决定对IDE进行适应性改造,支持采用现有编程语言进行编程,生成符合新操作系统要求的运行代码,并能够在现有操作系统上模拟出新操作系统的运行环境,以支持代码调试工作。针对上述要求,为了使IDE能够生成符合新操作系统要求的运行代码,采用基于(B)的架构设计策略比较合适;为了模拟新操作系统的运行环境,通常采用(D)架构风格比较合适。

(1)A.管道-过滤器 B.顺序批处理 C.过程控制 D.独立进程

(2)A.规则引擎 B.解释器 C.数据共享 D.独立构件

(3)A.隐式调用 B.显式调用 C.主程序-子程序 D.层次结构

(4)A.代理 B.适配 C.包装 D.模拟

(5)A.隐式调用 B.仓库结构 C.基于规则 D.虚拟机文章来源地址https://www.toymoban.com/news/detail-406625.html

到了这里,关于软考之软件架构设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 系统架构设计高级技能 · 软件架构概念、架构风格、ABSD、架构复用、DSSA(一)【系统架构设计师】

    点击进入系列文章目录 现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 软件架构概念 软件架构( Software Architecture ) = 软件体系结构 指系统的一个或者多个结构,结构包括: (1)结构

    2024年02月13日
    浏览(68)
  • 软考之软件工程

      严格区分阶段,每个阶段因果关系紧密相连,只适合需求明确的项目 缺点:软件需求完整性、正确性难确定;严格串行化,很长时间才能看到结果;瀑布模型要求每个阶段一次性完全解决该阶段工作,不现实。 适合需求不明确的项目 原型模型两个阶段:1、原型开发阶段

    2024年01月24日
    浏览(44)
  • 【软考】系统架构设计风格分类的个人理解

    个人适当学习了软考系统架构设计师中关于系统架构设计相关的内容,梳理了一下相关信息。 常见架构类型和常见分类 常见的软考中出现的系统架构列举如下: 分层架构 管道-过滤器架构 客户端-服务器架构 模型-视图-控制器架构,即MVC架构 事件驱动架构 微服务架构 黑板架

    2024年02月16日
    浏览(39)
  • 软件架构设计(二) 软件架构风格其他风格简介

    架构师备战(四)-软件架构设计(二) 软件架构风格其他风格简介 架构风格其实是很重要的知识,我们先了解了基本的五种架构风格, 我们之前也提到除了这五种风格之外, 还有一些没有收录在这几种风格之内的, 这次会去做一个探索。 概念 当软件被用来操作一个物理系统时,软件

    2024年02月10日
    浏览(46)
  • 软件架构设计(五) 软件架构风格-微服务

    微服务的概念 微服务顾名思义,就是很小的服务,所以它属于面向服务架构的一种。 微服务架构是一种架构模式,它提倡将单一应用程序划分为一组 很小的服务 (其实就是功能独立,职责单一),服务之间互相协调,相互配合,为用户提供最终价值。 微服务架构风格中每

    2024年02月10日
    浏览(45)
  • 【软考——系统架构师】软件架构设计

    🔎这里是【软考——系统架构师】,关注我考试轻松过线 👍如果对你有帮助,给博主一个免费的点赞以示鼓励 欢迎各位🔎点赞👍评论收藏⭐️ 软件体系结构是指系统的一个或者多个结构,这些结构包括软件的构件(可能是程序模块、类或者是中间件)、构件的外部可见属

    2023年04月25日
    浏览(36)
  • 软件架构设计(六) 软件架构风格-MDA(模型驱动架构)

    概念 模型驱动架构MDA, 全称叫做Model Driven Architecture。 Model:表示客观事物的抽象表示 Architecture:表示构成系统的部件,连接件及其约束的规约 Model Driven: 使用模型完成软件的分析,设计,构建,部署和维护等 开发活动 MDA起源于分离系统规约和平台实现的思想。之前我们在净

    2024年02月09日
    浏览(36)
  • 软件架构设计(三) B/S架构风格-层次架构(一)

    层次架构风格从之前的两层C/S到三层C/S,然后演化为三层B/S架构,三层B/S架构之后仍然在往后面演化,我们来看一下层次架构演化过程中都有了哪些演化的架构风格呢? 而我们先简单了解一下之前的层次架构风格中分层的各个层次的作用。 表现层:由于用户进行交互,比如

    2024年02月09日
    浏览(37)
  • 软考 系统架构设计师系列知识点之软件构件(3)

    接前一篇文章:软考 系统架构设计师系列知识点之软件构件(2) 所属章节: 第2章. 计算机系统基础知识         第3节. 计算机软件                 2.3.7 软件构件 (2)J2EE(补充知识) J2EE核心组成 : 容器 Applet Container、Application Container、Web Container、EJB Container。 组件

    2024年02月08日
    浏览(55)
  • 软考 系统架构设计师系列知识点之基于架构的软件开发方法ABSD(6)

    接前一篇文章:软考 系统架构设计师系列知识点之基于架构的软件开发方法ABSD(5) 所属章节: 第7章. 系统架构设计基础知识         第5节. 特定领域软件体系结构 相关试题 1. 基于架构的软件设计(ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。ABSD方法

    2024年02月07日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包