20241028软考架构-------软考案例7答案

embedded/2024/10/31 16:48:14/

每日打卡题案例7答案
【2013年真题】 难度:一般
阅读以下有关表现层设计方面的说明,回答问题。
【说明】
某商业银行欲开发一套个人银行系统,为用户提供常见的金融服务,包括转账、查询、存款变更和个人信息管理等功能。该软件除了业务需求外,还有一些特殊的表现层需求:
A.根据用户级别的不同,界面和可用功能是不同的;
B.支持Web、Windows、手机App等多种不同类型的界面;
C.考虑到将来功能的扩展,需要系统支持界面的定制以及动态生成等功能,以降低系统维护和新功能发布的成本。
经过对需求的讨论,该银行初步决定采用MVC模式设计该个人银行系统的表现层,采用XML作为GUI的描述语言,并应用XML,的界面管理技术来实现灵活的界面配置、界面动态生成和界面定。
【问题1】
MVC模式强制性地将一个应用处理流程按照模型、视图、控制的方式进行分离,三者的协作关系如图所示。
在这里插入图片描述

请填写图中的(1)~(3),并简要说明在该个人银行系统中采用MVC模式对界面设计的作用。
【问题2】
请从设计模式的角度,简要说明设计方案采用XML作为GUI描述语言的机制。
【问题3】
基于XML的界面管理技术可实现灵活的界面配置、界面动态生成和界面定制,其思路是用XML生成配置文件及界面所需的元数据,按不同需求生成界面元素及软件界面,其技术框图如图所示。
在这里插入图片描述

基于XML的界面管理技术框图
请将恰当的内容填入图中的(1)~(3),并简要解释说明其含义。

【参考答案】
【问题1】
(1)选择视图;(2)业务处理;(3)状态查询
MVC模式对该个人银行系统的作用:
(1)允许多种界面的扩展,视图的变更与增加,与模型无关;
(2)易于维护,控制器和视图随着模型的扩展而扩展,只要保持公共接口,控制器和视图的旧版本可以继续使用;
(3)可支持功能强大的用户界面。
【解析】
本题考查层次式架构设计中表现层框架设计的相关知识。软件体系结构设计中,层次设计是一种常见的架构设计方法,使设计的系统结构清晰,便于提高复用能力和产品维护能力。
本问题考查MVC设计模式在表现层设计中的应用。MVC是一种目前广泛流行的软件设计模式。MVC强制性地将一个应用处理流程按照模型、视图、控制的方式进行分离,形成了控制器、模型、视图三个核心模块。
(1)控制器:接受用户的输入并调用模型和视图去完成用户的请求。一方面接受视图的输入,将其转为对模型特定方法的调用;一方面处理来自模型的事件,调用适当的视图反馈给用户。
(2)模型:应用程序的主体部分,表示业务数据和业务逻辑,可以为多个视图提供数据。
(3)视图:用户看到并与之交互的界面。视图可以向模型查询业务状态,接收模型的数据更新事件,同步更新界面。
三者协作关系如图所示。

在这里插入图片描述

使用MVC设计表现层,具有以下优点:
(1)允许多种用户界面的扩展。在MVC模式中,视图与模型没有必然的联系,都是通过控制器发生联系,如果增加新类型的用户界面,只需修改响应的控制器和视图即可,模型无需变动;
(2)易于维护。控制器和视图随着模型的扩展而扩展,只要保持公共接口,控制器和视图的旧版本可以继续使用;
(3)支持功能强大的用户界面。用户界面与模型方法调用组合起来,使程序的使用更清晰,可将友好的界面发布给用户。
【问题2】
答案:从设计模式的角度来说,整个XML表现层解析的机制是一种策略模式。在调用显示GUI时,不是直接调用特定的表现技术的API,而是装载GUI对应的XML配置文件,然后根据特定的表现技术的解析器解析XML,得到GUI视图实例对象。这样,对于GUI开发人员来说,GUI视图只需要维护一套XML文件即可。
【解析】
本问题考查XML作为表现层控件描述语言的相关知识。
对于应用系统而言,GUI主要是由GUI控件组成。控件本身可以被看作是一个数据对象,包含控件的位置信息、类型和绑定的事件等。因此可以采用XML来描述,将控件作为数据节点保存,控件的相关属性描述为该节点的属性。而XML本身是一种树型结构描述语言,可以很好地支持控件之间的层次结构。而应用程序的表现层仅需要针对该XML语言进行解析,再加上应用系统特有的表现技术,即可以实现应用系统的界面。
从设计模式的角度来说,整个XML表现层解析的机制是一种策略模式。在调用显示GUI时,不是直接调用特定的表现技术的API,而是装载GUI对应的XML配置文件,然后根据特定的表现技术的解析器解析XML,得到GUI视图实例对象。这样,对于GUI开发人员来说,GUI视图只需要维护一套XML文件即可。
【问题3】
答案:
(1)界面定制;(2)界面动态生成;(3)界面配置
界面定制:对用户界面的动态修改过程,在软件运行过程中,用户可按照需求和使用习惯,对界面元素的属性进行修改。软件运行结束后,界面定制的结果被保存。
界面动态生成:系统通过DOMAPI读取XML配置文件的表示层信息,通过数据存取类读取数据库中的数据层信息,运行时由界面元素动态生成界面。界面配置和定制模块在软件运行前后修改配置文件、更改界面内容。
界面配置:对用户界面的静态定义,通过读取配置文件的初始值对界面配置。由界面配置对软件功能进行裁剪、重组和扩充,以实现特殊需求。
【解析】
本问题考查基于XML的界面管理相关知识。
基于XML的界面管理技术可以实现灵活的界面配置、界面动态生成和界面定制。其思路是用XML生成配置文件及界面所需的元数据,按照不同需求生成界面元素和软件界面。基本思路如图所示。
在这里插入图片描述

界面定制是对用户界面的动态修改过程,在软件运行过程中,用户可按照需求和使用习惯,对界面元素的属性进行修改。软件运行结束后,界面定制的结果被保存。
界面动态生成是系统通过DOMAPI读取XML,配置文件的表示层信息,通过数据存取类读取数据库中的数据层信息,运行时由界面元素动态生成界面。界面配置和定制模块在软件运行前后修改配置文件、更改界面内容。
界面配置是对用户界面的静态定义,通过读取配置文件的初始值对界面配置。由界面配置对软件功能进行裁剪、重组和扩充,以实现特殊需求。
基于XML的界面管理技术实现的管理信息系统实现了用户界面描述信息与功能实现代码的分离,可针对不同用户需求进行界面配置和定制,能适应一定程度的数据结构改动。只需要对XML文件稍加修改,即可实现系统的移植。


http://www.ppmy.cn/embedded/133909.html

相关文章

人工智能原理实验一:知识的表示与推理实验

一、实验目的 本实验课程是计算机、智能、物联网等专业学生的一门专业课程,通过实验,帮助学生更好地掌握人工智能相关概念、技术、原理、应用等;通过实验提高学生编写实验报告、总结实验结果的能力;使学生对智能程序、智能算法等有…

[Python学习日记-57] 常用模块的练习(答案更新中)

[Python学习日记-57] 常用模块的练习 简介 题目 答案 简介 本篇是常用模块的练习题,主要用于巩固前面学习的函数内容,建议先自己做一遍,最后再对答案,这样会比较稳固。 题目 1、导入模块的方式有哪几种,官方不推荐…

2024年网络安全进阶手册:黑客技术自学路线

🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 前言 什么是网络安全 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、…

基于深度学习的智能交通信号控制

基于深度学习的智能交通信号控制是交通管理领域的一项创新技术,旨在提高交通流量的效率,减少拥堵和排放,并改善交通安全。通过深度学习技术,交通信号控制系统可以实时分析交通数据,优化信号配时和调度,从而…

DNS域名解析服务器

一.DNS简介 DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分布式 数据库,能够使人更方便的访问互联网。 DNS系统使用的是网络的查询,那么自然需要有监听的port。DNS使用的是53端口…

无人机救援系统基本组成

无人机救援系统基本组成 1. 源由2. 组成2.1 无人机载具2.1.1 多旋翼2.1.2 垂起固定翼2.1.3 智能避障2.1.4 物资投递 2.2 智能吊舱2.2.1 云台2.2.2 高清摄像2.2.3 红外热成像2.2.4 激光测距2.2.5 目标跟踪 2.3 通讯链路2.3.1 超长距离通信2.3.2 长距离通信2.3.3 中等距离通信 2.…

js随机点名(附源码!)

预览效果 源码 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>随机点名</title><style type"text/css">* {padding: 0;margin: 0;box-sizing: border-box;}body {font-family: Arial, sans-serif;…

鸿蒙开发融云demo发送图片消息

鸿蒙开发融云demo发送图片消息 融云鸿蒙版是不带UI的&#xff0c;得自己一步步搭建。 这次讲如何发送图片消息&#xff0c;选择图片&#xff0c;显示图片消息。 还是有点难度的&#xff0c;好好看&#xff0c;好好学。 一、思路&#xff1a; 选择图片用&#xff1a;photoVie…