当前位置:   article > 正文

系统架构设计师考试题库重点案例:系统架构分析与设计方法_系统分析与设计例题

系统分析与设计例题

题1

        某文化产业集团委托软件公司开发一套文化用品商城系统,业务涉及文化用品销售、定制、
竞拍和点评等板块,以提升商城的信息化建设水平。该软件公司组织项目组完成了需求调研,
现已进入到系统架构设计阶段。考虑到系统需求对架构设计决策的影响,项目组先列出了可能
影响系统架构设计的部分需求如下:
(a)用户界面支持用户的个性化定制;
(b)系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;
(c)用户操作的响应时间应不大于 3 秒,竞拍板块不大于 1 秒;
(d)系统具有故障诊断和快速恢复能力;
(e)用户密码需要加密传输;
(f) 系统需要支持不低于 2G 的数据缓存;
(g)用户操作停滞时间超过一定时限需要重新登录验证;
(h)系统支持用户选择汉语、英语或法语三种语言之一进行操作。
项目组提出了两种系统架构设计方案:瘦客户端 C/S 架构和胖客户端 C/S 架构,经过对上述需求逐条分析和讨论,最终决定采用瘦客户端 C/S 架构进行设计。

【问题 1】 (8 分)

       在系统架构设计中,决定系统架构设计的非功能性需求主要有四类:操作性需求、性能需求、安全性需求和文化需求。请简要说明四类需求的含义。

【问题 2】(8 分)

        根据表 1-1 的分类,将题干所给出的系统需求(a)~(h)分别填入(1) ~ (4)。

需求分类
需求类别系统需求
操作性需求(1)
性能需求(2)
安全性需求(3)
文化需求(4)

【问题 3】(9 分)

      请说明瘦客户端 C/S 架构能够满足题干中给出的哪些系统需求(只需要回答出三个系统需求)。

【解答】

【问题1】

  • 操作性需求:操作性需求关注系统的易用性和可维护性。这包括用户界面的友好性、用户培训需求、操作的简单性和可操作性等。这些需求确保系统对最终用户和管理员而言是易于理解和使用的。
  • 性能需求:性能需求指系统在不同负载条件下的响应时间、吞吐量和可伸缩性等方面的要求。这包括系统的速度、效率和资源利用情况。性能需求通常用于确保系统在高负载时仍能提供令人满意的用户体验。
  • 安全性需求:安全性需求关注系统的安全性和数据保护。这包括身份验证、授权、数据加密、漏洞防护和合规性等方面的要求。安全性需求确保系统能够抵御潜在的威胁和保护敏感数据。
  • 文化需求:文化需求考虑到系统的文化和社会因素。这包括多语言支持、国际化、无障碍性和遵循当地法规等。文化需求确保系统在不同地域和文化背景下都能提供有意义的体验。

【问题2】

  • (1):(b)(d)  
  • (2):(c)(f)
  • (3):(e)(g)
  • (4):(a)(h)

【问题3】 

  • 胖客户端BS特点:
  1. (a)用户界面支持用户的个性化定制:胖客户端通常能够本地存储和处理用户个性化设置和定制,因此支持个性化定制的需求适合胖客户端。
  2. (d)系统具有故障诊断和快速恢复能力:胖客户端可以有更多的本地逻辑来实现故障诊断和快速恢复,因此这类需求通常适合胖客户端。
  3. (f)系统需要支持不低于 2G 的数据缓存:胖客户端可以本地缓存大量数据,满足大数据缓存需求。
  4. (g)用户操作停滞时间超过一定时限需要重新登录验证:胖客户端可以实现本地的用户操作验证和登录。
  • 瘦客户端CS特点:
  1. (b)系统需要支持当前主流的标准和服务,特别是通信协议和平台接口:瘦客户端通常依赖于服务器端的标准和服务,因此支持主流标准和服务的需求适合瘦客户端。
  2. (c)用户操作的响应时间应不大于 3 秒,竞拍板块不大于 1 秒:瘦客户端通常通过与服务器的实时通信来实现响应时间的需求。
  3. (e)用户密码需要加密传输:虽然瘦客户端可以加密通信,但这也可以在服务器端处理。瘦客户端更依赖服务器来处理安全性问题。
  4. (h)系统支持用户选择汉语、英语或法语三种语言之一进行操作:这个需求通常在客户端和服务器端协同工作下可以实现,但在瘦客户端中需要与服务器进行语言设置的协调。

2020:

阅读以下关于Web系统架构设计的叙述,在答题纸上回答问题1至问题3。
        某公司拟开发一款基于Web的工业设备检测系统,以实现对多种工业数据的分类采集,运行状态检测以及相关信息的管理。该系统应具备以下功能:

  • 现场设备状态采集功能:根据数据类型对设备检测指标状态信号进行分类采集;
  • 设备采集数据传输功能:利用可靠的传输技术,实现将设备数据从制造现场传输到系统后台;
  • 设备检测显示功能:对设备的运行状态、工作状态以及报警状态进行检测并提供相应的图形化界面;
  • 设备信息管理功能:支持设备运行历史状态,报警记录、参数信息的查询。

同时,该系统还需满足以下非功能性需求:

  • (a)系统应支持大于100个工业设备的运行检测;
  • (b)设备数据从制造现场传输到系统后台传输时间小于1s;
  • (c)系统应在7*24小时工作;
  • (d)可抵御常见XSS攻击;
  • (e)系统在故障情况下,应在0. 5小时内恢复;
  • (f)支持数据审计。

面对系统需求,公司召开项目讨论会议,制定系统设计方案,最终决定使用三层拓扑结构,即
现场设备数据采集层、Web检测服务层和前端Web显示层。

【问题 1】(6 分)

        请按照性能、安全性和可用性三种非功能性需求分类将题干的(a)~(f)填入(1)~(3)空白处。非功能性需求归类表: 

非功能性需求类别非功能性需求
性能(1)
安全性(2)
可用性(3)

【问题 2】(14 分)

        该系统Web检测服务层拟采用SSM框架进行系统研发。SSM工作流程图如下图所示,请从
下面给出的(a) ~ (k)中进行选择,补充完善图中(1) ~ (7)处空白的内容。

【问题 3】(5分)

        该工业设备检测系统拟采用工业控制领域中统一的数据访问机制,实现与各种不同设备的数据交互,请用100以内的文字说明采用标准的数据访问机制的原因。

【解答】

【问题1】

  • (1)性能: a,b
  • (2)安全性:d,f
  • (3)可用性:c,e

【问题2】

  • Connection Pool: 连接池,用于管理数据库连接,属于持久层。
  • Struts2: 一个MVC框架,用于处理用户请求,属于表示层。
  • Persistent Layer: 持久层,负责与数据库进行交互。
  • MyBatis: 一个持久层框架,用于映射数据库操作,属于持久层。
  • HTTP: 超文本传输协议,用于在Web浏览器和服务器之间传输数据,属于表示层。
  • MVC: 模型-视图-控制器模式,一种设计模式,用于将应用程序分为三个部分:模型、视图和控制器。
  • Kafka: 一个分布式消息队列系统,用于异步处理数据。
  • View Layer: 表示层,负责与用户交互。
  • JSP: JavaServer Pages,一种动态网页技术,属于表示层。
  • Controller Layer: 控制层,负责处理用户请求,并调用服务层进行业务处理。
  • Spring: 一个IoC和AOP容器,用于管理对象的创建和依赖注入,属于框架。

【问题3】

  • 提高互操作性: 使系统与不同厂商的设备进行无缝对接。
  • 增强可扩展性: 方便地扩展新设备的支持。
  • 降低复杂性: 简化系统的设计和开发。
  • 提高安全性: 提供统一的安全策略。

2018:SOA架构

某银行拟将以分行为主体的银行信息系统,全面整合为由总行统一管理维护的银行信息系
统,实现统一的用户账户管理、转账汇款、自助缴费、理财投资、贷款管理、网上支付、财
务报表分析等业务功能。但是,由于原有以分行为主体的银行信息系统中,多个业务系统采
用异构平台、数据库和中间件,使用的报文交换标准和通信协议也不尽相同,使用传统的
EAI 解决方案根本无法实现新的业务模式下异构系统间灵活的交互和集成。因此,为了以最
小的系统改进整合现有的基于不同技术实现的银行业务系统,该银行拟采用基于 ESB 的面
向服务架构(SOA)集成方案实现业务整合。

【问题 1】(7 分)

请说明什么是面向服务架构(SOA)以及 ESB 在 SOA 中的作用与特点。

【问题 2】(12 分)

基于该信息系统整合的实际需求,项目组完成了基于 SOA 的银行信息系统架构设计方案。
该系统架构图如图所示,请从(a)~ (j)中选择相应内容填入图 的(1)~ (6),补充完善架构设计图。

【问题 3】(6 分)

针对银行信息系统的数据交互安全性需求,列举 3 种可实现信息系统安全保障的措施。

【解答】

【问题1】

        面向服务架构(SOA)是一种软件架构设计,它将应用程序的不同功能部分构建为相互独立、松耦合的服务。这些服务可以独立地被开发、部署、管理和重用,通常是基于网络的服务,它们通过定义良好的接口和契约进行通信。

  • ESB 具有以下作用:
  1. 支持异构环境中的服务、消息和基于事件的交互,并且具有适当的服务级别和可管理性。
  2. 通过使用 ESB,可以在几乎不更改代码的情况下,以一种无缝的非侵入方式使现有系统具有全新的服务接口,并能够在部署环境中支持任何标准。
  3. 充当缓冲器的 ESB(负责在诸多服务之间转换业务逻辑和数据格式)与服务逻辑相分离,从而使不同的系统可以同时使用同一个服务,不用在系统或数据发生变化时,改动服务代码。
  4. 在更高的层次,ESB 还提供诸如服务代理和协议转换等功能。允许在多种形式下通过像 HTTP、SOAP 和 JMS 总线的多种传输方式,主要是以网络服务的形式,为发表、注册、发现和使用企业服务或界面提供基础设施。
  5. 提供可配置的消息转换翻译机制和基于消息内容的消息路由服务,传输消息到不同的目的地。
  6.  提供安全和拥有者机制,以保证消息和服务使用的认证、授权和完整性。
  •  ESB 具有以下优势:
  1.  扩展的、基于标准的连接。ESB 形成一个基于标准的信息骨架,使得在系统内部和整个价值链中可以容易地进行异步或同步数据交换。
  2. 灵活的、服务导向的应用组合。基于 SOA,ESB 使复杂的分布式系统能够由以前开发测试过的服务组合而成,使系统具有高度可扩展性。
  3. 提高复用率,降低成本。按照 SOA 方法构建应用,提高了复用率,简化了维护工作,进而减少了系统总体成本。
  4. 减少市场反应时间,提高生产率。ESB 通过构件和服务复用,按照 SOA 的思想简化应用组合,基于标准的通信、转换和连接来实现这些优点。

【问题2】

  1. (1):(c)业务层
  2. (2):(i)UUDI
  3. (3):(h)publish
  4. (4):(e)企业服务总线ESB
  5. (5):(g)安全验证和质量管理
  6. (6):(j)组件层

【问题3】

3 种可实现信息系统安全保障的措施:

  1. 强化身份验证和授权机制:对访问数据的人员进行身份认证,确保只有授权人员才能访问数据。
  2. 数据加密和安全传输:对敏感数据进行加密,即使数据被截获,也无法被破解和利用。
  3. 数据完整性保护:使用数字签名技术对数据进行签名,确保数据在传输过程中不被篡改。

2017:MVC+EJB+构件状态

        某软件企业受该省教育部门委托建设高校数字化教育教学资源共享平台,实现以众筹众创的方式组织省内普通高校联合开展教育教学资源内容建设,实现全省优质教学资源整合和共享。该资源共享平台的主要功能模块包括:
(a) 统一身份认证模块,提供统一的认证入口,为平台其他核心业务模块提供用户管理、身份认证、权限分级和单点登录等功能;
(b) 共享资源管理模块:提供教学资源申报流程服务,包括了资源申报、分类定制、资料上传、资源审核和资源发布等功能;
(c) 共享资源展示模块:提供教育教学共享资源的展示服务,包括资源导航、视频点播、资源检索、分类展示、资源评价和推荐等功能;
(d) 资源元模型管理模块:依据资源类型提供共享资源的描述属性、内容属性和展示属性,包括共享资源统一标准和规范、资源加工和在线编辑工具、数字水印和模板定制等功能;
(e) 系统综合管理模块:提供系统管理和维护服务,包括系统配置、数据备份恢复、资源导入导出和统计分析等功能。项目组经过分析和讨论,决定采用基于 JavaEE 的 MVC 模式设计资源共享平台的软件架构。
如图所示:

 【问题 1】(9 分)

        MVC 架构中包含哪三种元素,它们的作用分别是什么 ? 请根据图 所示架构将 JavaEE
JSP Servlet Service JavaBean DAO 五种构件分别填入空 (1)~(5) 所示位置。

 【问题 2】(6 分)

        项目组架构师王工提出在图所示架构设计中加入 EJB 构件,采用企业级 JavaEE 架构开发资源共享平台。请说明 EJB 构件中的 Bean(构件)分为哪三种类型,每种类型 Bean 的职责是什么?

 【问题 3】(10 分)

        如果采用王工提出的企业级 JavaEE 架构,请说明下列 (a)-(e) 所给出的业务功能构件中,有状
态和无状态构件分别包括哪些。

【解答】

【问题1】

1.MVC 架构中包含三种元素

  • 模型(Model)

    • 模型是 MVC 架构中负责处理应用程序数据逻辑的部分。
    • 它代表了应用程序中的数据结构、业务规则和数据库操作等。
    • 模型通常包括数据访问对象(Data Access Objects)、实体对象(Entity Objects)等。
  • 视图(View)

    • 视图是 MVC 架构中负责展示用户界面的部分。
    • 它负责将模型中的数据以某种可视化的形式展示给用户。
    • 视图通常是用户交互的主要接口,可以是网页、用户界面、报表等。
  • 控制器(Controller)

    • 控制器是 MVC 架构中负责处理用户请求和调度的部分。
    • 它接收用户的输入请求,调用模型进行数据处理,再将处理结果传递给视图进行展示。
    • 控制器负责应用程序的流程控制和业务逻辑的调度。

2.JavaEE 中JSP、ServletServiceJavaBeanDAO 五种构件分别填入空(1)~(5)所示位置

【问题2】

1.EJB 构件中的 Bean( 构件 ) 分为哪三种类型
  1. 会话Bean(Session Bean)

    • 会话Bean主要负责处理客户端的请求,为客户端提供服务。它们可以维护客户端的状态或者是无状态的,分为状态会话Bean和无状态会话Bean两种类型。
    • 状态会话Bean(Stateful Session Bean):维护客户端的状态信息,会话结束时状态被销毁。
    • 无状态会话Bean(Stateless Session Bean):不维护客户端的状态信息,处理完客户端请求后即被释放。
  2. 消息驱动Bean(Message-Driven Bean,MDB)

    • 消息驱动Bean是一种处理消息的特殊类型的EJB。它们与消息服务(如JMS)结合使用,以异步方式处理来自消息队列的消息。
    • MDB负责监听特定的消息目标(如队列或主题),并在消息到达时触发相关的业务逻辑。
  3. 实体Bean(Entity Bean)

    • 实体Bean用于表示持久化的数据对象,通常对应于数据库中的表。
    • 实体Bean负责对数据库中的数据进行CRUD操作,提供了持久化层的功能,可以管理数据的持久状态。

2.每种类型的Bean在企业级JavaEE架构中承担不同的职责:

  • 会话Bean用于处理业务逻辑,提供服务给客户端,并根据需要维护客户端的状态信息。
  • 消息驱动Bean用于异步处理消息,负责监听消息队列,接收并处理消息。
  • 实体Bean用于表示持久化数据对象,负责与数据库交互,执行CRUD操作,以及管理数据的持久状态。

【问题3】

有状态和无状态构件分别包括哪些
  • (a) 统一身份认证模块:有
  • (b) 共享资源管理模块:有
  • (c) 共享资源展示模块:无
  • (d) 资源元模型管理模块:有
  • (e) 系统综合管理模块:有

2017:ORM+工厂模式

        某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于。NET 平台和 SQLServer 数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库:而李工认为本企业内部程序员缺乏数据库开发经验,而且应用筒单,应该采用ORM(对象关系映射)方式。最终经过综合考虑,该软件企业采用了李工的建议。随着业务的发展,该电子商务网站逐渐发展成一个通用的电子商务平台,销售多家制造企业的产品,电子商务平台的功能也日益复杂。目前急需对该电子商务网站进行改造,以支持对多种异构数据库平台的数据访问,同时满足复杂的数据管理需求。该软件企业针对上述需求,对电子商务网站的架构进行了重新设计,新增加了数据访问层,同时采用工厂设计模式解决异构数据库访问的问题。新设计的系统架构如图所示。

【问题 1(9 )

请用 300 字以内的文字分别说明数据库程序在线访问方式和 ORM 方式的优缺点,说明该软件企业采用 ORM 的原因

【问题 2(9 )

请用 100 宇以内的文字说明新体系架构中增加数据访问层的原因。请根据图 所示,填写图中空白处(1)-(3)

【问题 3(7 )

应用程序设计中,数据库访问需要良好的封装性和可维护性,因此经常使用工厂设计模式来实现对数据库访问的封装。请解释工厂设计模式,并说明其优点和应用场景,请解释说明工厂模式在数据访问层中的应用。

【解答】

【问题1】

程序在线访问方式:

优点:

  • 灵活、可控性强,可以根据具体需求定制数据库操作。
  • 执行效率高,可以充分利用数据库的性能。

缺点:

  • 开发工作量大,需要编写大量数据库操作代码。
  • 维护困难,代码不易重用,难以扩展。
  • 不利于代码的移植性,难以跨平台使用。

ORM 方式:

优点:

  • 开发效率高,可以减少大量数据库操作代码的编写。
  • 提高代码的重用性,易于维护和扩展。
  • 提高代码的移植性,易于跨平台使用。

缺点:

  • 灵活度较低,对数据库操作的控制能力较弱。
  • 执行效率可能略低,因为存在额外的对象映射开销。
  • 需要学习 ORM 框架的知识,增加了开发成本。

该软件企业采用 ORM 的原因:

  • 初期项目需求简单,采用 ORM 可以快速开发上线。
  • 内部程序员缺乏数据库开发经验,使用 ORM 可以降低开发难度。
  • 项目后期需要扩展,ORM 可以提高代码的重用性和可维护性。

【问题 2

增加数据访问层可以解耦业务逻辑与数据库操作,提高系统的灵活性、可维护性,并支持多种异构数据库平台的数据访问,同时实现数据访问的统一管理和封装。

  • (1)处理业务逻辑
  • (2)数据访问接口
  • (3)数据访问工厂

【问题 3

        工厂设计模式是一种创建型设计模式,它定义了一个创建对象的接口,让子类决定实例化哪个类。工厂模式使得应用程序代码无需关心对象的创建细节,只需通过工厂接口即可获得所需的具体对象。

工厂设计模式适用于以下场景:

  • 当一个类的创建逻辑比较复杂,包括多个步骤或条件时。
  • 当需要对创建过程进行封装,以提高代码的灵活性和可维护性时。
  • 当需要根据不同的条件或环境创建不同的对象实例时。

工厂模式在数据访问层中的应用

        在数据访问层中,工厂设计模式通常用于封装数据库连接和对象的创建过程。通过定义一个数据库工厂类,客户端代码可以通过工厂类获取数据库连接或数据访问对象的实例,而不需要直接操作数据库连接的创建过程。这样可以将数据库访问的具体实现细节隐藏起来,提高了代码的封装性和可维护性。同时,如果需要更改或替换数据库访问方式,只需修改工厂类的实现即可,而不需要修改客户端代码。

2017:响应式 Web 设计+主从复制机制

某电子商务企业因发展良好,客户量逐步增大,企业业务不断扩充,导致其原有的 B2C商品交易平台己不能满足现有业务需求。因此,该企业委托某软件公司重新开发一套商品交易平台。该企业要求新平台应可适应客户从手机、平板设备、电脑等不同终端设备访问系统,同时满足电商定期开展“秒杀”、“限时促销”等活动的系统高并发访问量的需求。面对系统需求,软件公司召开项目组讨论会议,制定系统设计方案。讨论会议上,王工提出可以应用响应式 Web 设计满足客户从不同设备正确访问系统的需求。同时,采用增加镜像站点、CDN 内容分发等方式解决高并发访问量带来的问题。李工在王工的提议上补充,仅仅依靠上述外网加速技术不能完全解决高用户并发访问问题,如果访问量持续增加,系统仍存在崩溃可能。李工提出应同时结合负载均衡、缓存服务器、web 应用服务器、劳布提文件系统、分布式数据库等方法设计系统架构。经过项目组讨论,最终决定综合王王和李工的思路,完成新系统的架构设计。

【问题 1】(5 分)

        请用 200 字以内的文字描述什么是“响应式 Web 设计”,并列举 2 个响应式 Web 设计的实现方式。

【问题 2(16 )

        综合王工和李工的提议,项目组完成了新商品交易平台的系统架构设计方案。新系统架构图 如图所示。请从选项 (a)-(j) 中为架构图中 (1)-(8) 处空白选择相应的内容,补充支持高并发 的 Web 应用系统架构设计图。

【问题3】 (4 分)

根据李工的提议,新的B2C商品交易平台引入了主从复制机制。请针对B2C商品交易平台的特点,简要叙述引入该机制的好处。

【解答】

【问题1】

响应式 Web 设计是一种设计和开发方法,使 Web 页面能够根据用户的设备屏幕尺寸和方向进行自动调整布局、尺寸和图片,以提供最佳的用户体验。

2 个响应式 Web 设计的实现方式:

  1. 流体布局/弹性布局: 使用百分比和 em 等相对单位定义元素的尺寸,使元素能够根据屏幕尺寸进行自动调整。
  2. 媒体查询: 使用媒体查询根据不同的设备屏幕尺寸和方向加载不同的 CSS 样式,实现不同的布局和效果。

【问题2】

1.b   2.c  3.d   4.a  5.e  6.h   7.g   8.i

【问题3】

引入主从复制机制的好处:

  1. 提高读性能: 将读操作分流到从服务器,减轻主服务器的压力,提高读性能。
  2. 提高数据安全性: 主服务器数据发生故障时,可以从从服务器恢复数据,提高数据安全性。
  3. 提高可扩展性: 可以通过增加从服务器来提高系统的读写能力。

针对B2C商品交易平台的特点,引入主从复制机制可以带来以下具体好处:

  • 提高商品详情页和商品列表页的加载速度,提升用户体验。
  • 降低数据库宕机的风险,保证交易平台的稳定运行。
  • 为未来业务扩展提供良好的基础。

2021:用例图+协作图与顺序图+对象模型、动态模型和功能模型

        某医院拟委托软件公司开发一套预约挂号管理系统,以便为患者提供更好的就医体验,为医院提供更加科学的预约管理。本系统的主要功能描述如下:(a)注册登录,(b)信息浏览,(c)账号管理,(d)预约挂号,(e)查询与取消预约,(f)号源管理,(g)报告查询,(h)预约管理,(i)报表管理和(j)信用管理等。

【问题1】 (6 分)

        若采用面向对象方法对预约挂号管理系统进行分析,得到如图2-1所示的用例图。请将合适的参与者名称填入图2-1中的(1)和(2)处,使用题干给出的功能描述(a)~(j),完善用例(3)~(12)的名称,将正确答案填在答题纸上。


问题2】 (10分)

        预约人员(患者)登录系统后发起预约挂号请求,进入预约界面。进行预约挂号时使用数据库访问类获取医生的相关信息,在数据库中调用医生列表,并调取医生出诊时段表,将医生出诊时段反馈到预约界面,并显示给预约人员;预约人员选择医生及就诊时间后确认预约,系统反馈预约结果,并向用户显示是否预约成功。
        采用面向对象方法对预约挂号过程进行分析,得到如图所示的顺序图,使用题干中给出的描述,完善图中对象(1),及消息(2)~(4)的名称,将正确答案填在普题纸上请简要说明在描述对象之间的动态交互关系时,协作图与顺序图存在哪些区别。

【问题3】 (9分)

        采用面向对象方法开发软件,通常需要建立对象模型、动态模型和功能模型,请分别介绍这3种模型,并详细说明它们之间的关联关系,针对上述模型,说明哪些模型可用于软件的需求分析? 

【解答】

【问题1】

  • (1)患者
  • (2)医院管理员
  • (3)(a)注册登录
  • (4)~(8):(g)报告查询 (b)信息浏览  (c)账号管理 (d)预约挂号  (e)查询与取消预约
  • (9)~ (12):(f)号源管理 (h)预约管理  (i)报表管理  (j)信用管理

【问题2】

  • (1)患者
  • (2)发起预约挂号请求
  • (3)显示医生出诊时间段
  • (4)显示预约结果

【问题3】

面向对象方法开发软件通常包括对象模型、动态模型和功能模型。

  • 对象模型描述系统静态结构,通过类、对象、属性和方法等元素来描述系统中的实体和实体之间的关系
  • 动态模型描述系统行为,通常使用状态图、活动图、时序图等图形表示方法来描述系统的行为。
  • 功能模型描述系统功能和用户需求,通常使用用例图、功能分解图等图形表示方法来描述系统的功能和功能之间的关系。

它们之间存在关联:

  • 对象模型与动态模型关注对象状态转换;
  • 对象模型与功能模型可通过用例描述关联;
  • 动态模型与功能模型可描述用户交互和系统行为。

在需求分析阶段,功能模型主要用于描述用户需求和系统功能,而对象模型和动态模型更多用于设计和实现。

2021:智能家居架构+TCP和UDP

        某公司拟开发一个智能家居管理系统,该系统的主要功能需求如下:

1)用户可使用该系统客户端实现对家居设备的控制,且家居设备可向客户端反馈实时状态;

2)支持家居设备数据的实时存储和查询;

3)基于用户数据,挖掘用户生活习惯,向用户提供家居设备智能化使用建议。
        基于上述需求,该公司组建了项目组,在项目会议上,张工给出了基于家庭网关的传统智能家居管理系统的设计思路,李工给出了基于云平台的智能家居系统的设计思路。经过深入讨论,公司决定采用李工的设计思路。

【问题1】 (8分)

        请用400字以内的文字简要描述基于家庭网关的传统智能家居管理系统和基于云平台的智能家居管理系统在网关管理、数据处理和系统性能等方面的特点,以说明项目组选择李工设计思路的原因。

【问题2】 (12分)

        请从下面给出的(a) ~ (j) 中进行选择,补充完善图5-1中空(1) ~ (6)处的内容,协助李工完成该系统的架构设计方案。

【问题3】 (5分)

        该系统需实现用户终端与服务端的双向可靠通信,请用300字以内的文字从数据传输可靠性的角度对比分析TCP和UDP通信协议的不同,并说明该系统应采用哪种通信协议。

【解答】

【问题1】

  • 网关管理:
    • 传统系统: 网关作为本地设备,由用户自行管理,存在配置复杂、安全风险高等问题。
    • 云平台系统: 网关由平台统一管理,可实现远程配置、固件更新、安全防护等,更方便、安全。
  • 数据处理:
    • 传统系统: 数据存储在本地网关,容量有限,且不便于跨设备、跨地域访问和分析。
    • 云平台系统: 数据存储在云端,容量可扩展,可实现实时采集、存储、分析,并提供数据共享和应用服务。
  • 系统性能:
    • 传统系统: 受限于本地网关的性能,响应速度慢,扩展性差。
    • 云平台系统: 利用云平台的强大计算能力和资源,可提供更快的响应速度和更高的扩展性。

项目组选择李工设计思路的原因:

  • 更易于管理: 云平台统一管理网关,降低了用户运维成本,提高了安全性。
  • 更强大的数据处理能力: 云平台可提供实时数据分析和应用服务,更智能、更便捷。
  • 更高的性能: 云平台可扩展资源,满足未来业务发展需求。

此外,基于云平台的智能家居管理系统还具有以下优势:

  • 可与其他智能家居系统、服务无缝对接。
  • 可提供更丰富的功能和应用。
  • 可持续迭代更新,提供更好的用户体验。

【问题2】

  • (1)(h)用户终端
  • (2)(i)鸿蒙
  • (3)(f)云平台
  • (4)(d)数据库
  • (5)(e)家庭网关
  • (6)(c)驱动程序

【问题3】

它们在数据传输可靠性方面有所不同。

TCP提供面向连接的可靠数据传输服务,通过三次握手建立连接,并提供数据的顺序传输、重传机制和流量控制,确保数据的可靠性和完整性。TCP适用于需要确保数据完整性和顺序传输的场景,例如文件传输、网页访问等。

而UDP则是一种无连接的通信协议,不提供可靠性保证和数据的重传机制,数据包的发送和接收没有顺序要求,适用于实时性要求较高但可容忍少量丢包的场景,例如音视频流传输、实时游戏等。

针对该系统的双向可靠通信需求,应采用TCP通信协议。因为该系统需要确保数据传输的可靠性,保证用户终端与服务端之间的通信不丢失数据、不出错,TCP提供了可靠的连接和数据传输机制,更适合满足该系统的需求。

2022:心跳检测和超时探测技术+故障检测和诊断+数据驱动方法

        系统的故障检测和诊断是宇航系统提高装备可靠性的主要技术之一,随着装备信息化的发展,分布式架构下的资源配置越来越多、资源布局也越来越分散,这对系统的故障检测和诊断方法提出了新的要求。为了适应宇航装备的分布式综合化电子系统的发展,解决由于系统资源部署的分散性,造成系统状态的综合和监控困难的问题,公司领导安排张工进行研究。张工经过分析、调研提出了针对分布式综合化电子系统架构的故障检测和诊断的方案。

【问题1】(8分)

        张工提出:宇航装备的软件架构可采用四层的层次化体系结构,即模块支持层、操作系统层、分布式中间件层和功能应用层。为了有效、方便地实现分布式系统的故障检测和诊断能力,方案建议将系统的故障检测和诊断能力构建在分布式中间件内,通过使用心跳或者超时探测技术来实现故障检测器。请用300字以内的文字分别说明心跳检测和超时探测技术的基本原理及特点。

【问题2】(8分)

        张工针对分布式综合化电子系统的架构特征,给出了初步设计方案,指出每个节点的故障监测与诊断器主要负责监控系统中所有的故障信息,并将故障信息进行综合分析判断,使用故障诊断器分析出故障原因,给出解决方案和措施。系统可以给模块的每个处理机器核配置核状态监控器、给每个分区配置分区状态监控器、给每个模块配置模块状态监控器、给系统配置系统状态监控器,如图所示

请根据下面给出的分布式综合化电子系统可能产生的故障(a)~(h),判断这些故障分别属于哪类监控器检测的范围,完善表的(1)~(8)的空白。

(a) 应用程序除零        (b) 看门狗故障        (c) 任务超时        (d) 网络诊断故障
(e) BIT检测故障        (f) 分区堆栈溢出        (g) 操作系统异常        (h) 模块掉电

故障分类
核状态监控器(1)、(2)
分区状态监控器(3)
模块状态监控器(4)、(5)、(6)
系统状态监控器(7)、(8)

【问题3】(9分)

        张工在方案中指出,本系统的故障诊断采用故障诊断器实现,它可综合多种故障信息和系统状态,依据智能决策数据库提供的决策策略判定出故障类型和处理方法。智能决策数据库中的策略可以对故障开展定性或定量分析。通常,在定量分析中,普遍采用基于解析模型的方法和数据驱动的方法。张工在方案中提出该系统定量分析时应采用基于解析模型的方法。但是此提议受到王工的反对,王工指出采用数据驱动的方法更适合分布式综合化电子系统架构的设计。请用300字以内的文字,说明数据驱动方法的基本概念,以及王工提出采用此方法的理由。

【解答】

【问题1】

        心跳检测基本原理是系统中的节点定期向其他节点发送心跳信号,以确认自身的活动状态。如果某个节点在一定时间内没有收到其他节点的心跳信号,则认为该节点可能发生了故障。

        心跳检测技术具有实现简单、实时性好的特点,适用于检测节点是否存活的情况,但不能判断节点的详细故障类型。

        超时探测技术基本原理是发送方在发送请求后等待一段时间,如果在规定的时间内未收到响应,则认为目标节点发生了故障。

        超时探测技术具有较好的灵活性和准确性,能够检测到节点的具体故障类型,并且相对于心跳检测技术来说,能够更快地发现故障。但需要更多的系统资源,并且对网络延迟等因素较为敏感。

【问题2】

核状态监控器(1)(b) 看门狗故障 、(2)(g) 操作系统异常
分区状态监控器(3) (f) 分区堆栈溢出
模块状态监控器(4)(a) 应用程序除零、(5)(e) BIT检测故障  、(6)  (h) 模块掉电
系统状态监控器(7)(c) 任务超时、(8) (d) 网络诊断故障
解析

(a) 应用程序除零:通常属于模块状态监控器,因为除零错误通常发生在应用程序层面,而模块状态监控器负责监控和管理单个模块或应用程序的状态。

(b) 看门狗故障:通常属于核状态监控器,因为看门狗定时器是用来监控核心处理单元的状态,确保系统核心能够正常响应和处理任务。

(c) 任务超时:通常属于系统状态监控器,因为任务超时可能涉及多个模块或整个系统的运行,系统状态监控器负责监控整个系统的任务执行情况。

(d) 网络诊断故障:通常属于系统状态监控器,网络问题影响整个系统的通信和数据传输,因此需要系统级别的监控来诊断和处理。

(e) BIT(Bit Self-test)检测故障:通常属于模块状态监控器,因为BIT通常是在模块级别执行的,用于检测模块的硬件和软件功能是否正常。

(f) 分区堆栈溢出:通常属于分区状态监控器,因为堆栈溢出通常与特定内存分区的资源使用有关,分区状态监控器负责监控和管理分区的内存和资源状态。

(g) 操作系统异常:通常属于核状态监控器,操作系统异常通常指示核心处理单元或内核层面的问题,需要核状态监控器来检测。

(h) 模块掉电:通常属于模块状态监控器,因为模块掉电是特定模块的电源问题,需要模块状态监控器来监控和管理模块的电源状态。

【问题3】

        数据驱动方法是一种基于历史数据进行故障诊断的方法。它通过分析历史数据中的模式和特征,建立故障与数据之间的映射关系,从而实现故障诊断。

        核心优势在于其强大的数据处理能力和从数据中学习的能力,能够适应复杂的、非线性的、以及难以用传统解析模型描述的系统。

王工提出采用数据驱动方法的理由可能包括以下几点:

  1. 复杂性适应:数据驱动方法能够更好地适应这种复杂性,因为它不依赖于固定的解析模型。
  2. 大数据利用:数据驱动方法能够有效利用这些大数据,从中提取有价值的信息,用于故障诊断。
  3. 快速迭代和学习:数据驱动方法可以通过不断学习新的数据来快速适应系统的变化和新出现的问题,从而提高故障诊断的准确性和响应速度。
  4. 模型灵活性:数据驱动方法不需要预先定义复杂的解析模型,这使得模型的构建和更新更加灵活,能够适应快速变化的系统需求和环境。
  5. 可扩展性:数据驱动方法可以方便地扩展到大规模的分布式系统,因为它主要依赖于数据的处理和分析,而不是复杂的模型计算。

2022:MQTT 协议+边缘计算模型

        某公司拟开发一套基于边缘计算的智能门禁系统,用于如园区、新零售、工业现场等存在来访、被访业务的场景。来访者在来访前,可以通过线上提前预约的方式将自己的个人信息记录在后台,被访者在系统中通过此请求后,来访者在到访时可以直接通过"刷脸"的方式通过门禁,无需做其他验证。此外,系统的管理员可对正在运行的门禁设备进行管理。
        基于项目需求,该公司组建项目组,召开了项目讨论会。会上,张工根据业务需求并结合边缘计算的思想,提出本系统可由访客注册模块、模型训练模块、端侧识别模块与设备调度平台模块等四项功能组成。李工从技术层面提出该系统可使用 Flask 框架与 SSM 框架为基础来开发后台服务器,将开发好的系统通过 Docker 进行部署,并使用 MQTT 协议对 Docker 进行管理。

【问题1】(5分)

        MQTT 协议在工业物联网中得到广泛的应用,请用300字以内的文字简要说明 MQTT 协议。

【问题2】(14分)

        在会议上,张工对功能模块进行了更进一步的说明:访客注册模块用于来访者提交申请与被访者确认申请,主要处理提交来访申请、来访申请审核业务,同时保存访客数据,为训练模块准备训练数据集;模型训练模块用于使用访客数据进行模型训练,为端侧设备的识别业务提供模型基础:端侧识别模块在边缘门禁设备上运行,使用训练好的模型来识别来访人员,与云端服务协作完成访客来访的完整业务;设备调度平台模块用于对边缘门禁设备进行管理,管理人员能够使用平台对边缘设备进行调度管理与状态监控,实现云端协同。
        图中给出了基于边缘计算的智能门禁系统架构图,请结合 HTTP 协议和 MQTT 协议的特点,为图中(1)~(6)处选择合适的协议,并结合张工关于功能模块的描述,补充完善图中(7)~(10)处的空白。

【问题3】(6分)

        请用300字以内的文字,从数据通信、数据安全和系统性能等方面简要分析在传统云计算模型中引入边缘计算模型的优势。

【解答】

【问题1】

        MQTT是一种为低带宽和不可靠网络环境设计的轻量级消息协议,特别适合物联网(IoT)应用。它的核心特点是发布/订阅模型,允许设备发布消息到主题,同时订阅感兴趣的主题以接收消息。

        MQTT协议的优势在于其简单性和效率,它使用小尺寸的数据包,支持多种服务质量(QoS)以确保消息的可靠传递,并且可以通过加密保障通信安全。此外,MQTT还具备良好的连接管理和重连机制,即使在网络不稳定的情况下也能保证设备间的持续通信。

        在工业物联网中,MQTT广泛应用于传感器数据收集、设备监控和远程控制等场景,提供了一种高效、可靠的通信方式。

【问题2】

(1)http        (2)mqtt        (3)mqtt        (4)mqtt        (5)http        (6)http
(7)端侧识别模块        (8)模型训练模块        (9)设备调度平台模块        (10)访客注册模块

【问题3】

边缘计算通过在数据产生的地点进行处理,为传统云计算带来以下优势:

数据通信:减少数据传输距离和带宽使用,降低延迟,提高响应速度,尤其适合实时应用。

数据安全:减少数据在网络中的暴露,降低泄露风险,便于实施本地化的安全措施。

系统性能:边缘设备进行预处理,减轻中心服务器负担,提升系统效率和数据处理速度。

总体而言,边缘计算增强了云计算的性能和安全性,尤其适用于对实时性和数据隐私有高要求的场

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/795826
推荐阅读
相关标签
  

闽ICP备14008679号