一、[材料型]问答题
试题一(20分):
阅读以下关于软件系统分析与建模的叙述,在纸上回答问题1至3.
说明:某软件公司拟开发一套汽车租赁系统,科学,安全和方便的管理租赁公司的各项业务,提高公司效率,提升利率。注册用户在使用系统做车辆预约时需执行以下操作:
(a)用户登录系统
(b)查询车辆信息
(c)预订车辆
(d)提取车辆
(e)归还车辆
(f)计算结余
(g)查询应还车时间
图1-1 系统状态机图
1、问题1:在面向对象软件分析过程中,状态机图和活动图用于建立软件的动态模型,主要描述系统随时间变化的行为,请分别阐述这两种图的概念和特点。
参考答案:
状态图(State Diagram)。状态图描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。
活动图(Activity Diagram)。活动图将进程或其他计算结构展示为计算内部步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模和业务流程建模特别重要,并强调对象间的控制流程。
活动图是对行为流程的描述;状态机图是对属性值(状态)变化的描述。
试题一(20分):
阅读以下关于软件系统分析与建模的叙述,在纸上回答问题1至3.
说明:某软件公司拟开发一套汽车租赁系统,科学,安全和方便的管理租赁公司的各项业务,提高公司效率,提升利率。注册用户在使用系统做车辆预约时需执行以下操作:
(a)用户登录系统
(b)查询车辆信息
(c)预订车辆
(d)提取车辆
(e)归还车辆
(f)计算结余
(g)查询应还车时间
图1-1 系统状态机图
2、问题2:图1-1 给出了采用状态机图描写的注册用户的状态交换过程,请使用题干给出的(a)~(g)补充完善图1-1中的(1)~(7),并给出(8)和(9)空白处的状态转移执行动作。将正确的答案填写在答题纸上。
参考答案:
(1) :(a)用户登录系统
(2) :(b)查询车辆信息
(3) :(g)查询应还车时间
(4) :(c)预订车辆
(5) :(e)归还车辆
(6) :(d)提取车辆
(7) :(f)计算结余
(8) :查询到有车辆需要归还
(9) :查询到无车辆需归还
试题一(20分):
阅读以下关于软件系统分析与建模的叙述,在纸上回答问题1至3.
说明:某软件公司拟开发一套汽车租赁系统,科学,安全和方便的管理租赁公司的各项业务,提高公司效率,提升利率。注册用户在使用系统做车辆预约时需执行以下操作:
(a)用户登录系统
(b)查询车辆信息
(c)预订车辆
(d)提取车辆
(e)归还车辆
(f)计算结余
(g)查询应还车时间
图1-1 系统状态机图
3、RUP 中有9个核心工作流,分6个核心过程和3个核心支持工作流。9个核心工作流在项目中迭代被使用在每次迭代中以不同的重点和强度重复。结合题干案例,用300字以内的文字简要说明 RUP 中9个核心工作流的主要作用。
参考答案:9 大核心工作流包括:业务建模、需求、分析和设计、实现、测试、部署、配置和变更管理、项目管理、环境。在开发汽车租赁系统的整个过程中,分成多次迭代,每个迭代中,可能都会包括业务建模、需求、分析和设计、实现、测试和部署这六个核心工作流,配置和变更管理、项目管理和环境贯穿整个开发的始终。业务建模(Business Modeling)工作流描述了如何为新的目标组织开发一个构想,并基于这个构想在业务用例模型和商业对象模型中定义组织的过程,角色和责任。。。。注意结合上边的知识点和汽车租赁系统。
试题二(25分):
阅读以下关于企业信息系统结构化分析的叙述,回答问题1和2.
说明:
某软件公司为企业开发一套员工在线教育系统,支持员工利用业余时间开展专业技术培训,提升员工技能。在项目开展初期,采用结构化分析进行开发,并对系统中培训部员工和培训教师的相关功能进行分析,具体需求如下:
(1)培训部根据企业技术发展需求,负责策划培训课程,并形成课程计划,针对不同的员工设置不同的课程;
(2)员工首先在系统进行注册,填写自己的编号,学历,专业,岗位等信息,生成员工注册信息,然后将自己的培训需求录入系统,系统自动评估并进行课程推荐,员工确认后形成课程需求;
(3)培训教室也通过系统进行注册,填写自己的编号、学历、专业等信息,形成培训教师注册信息
(4)系统根据课程计划、员工注册信息,课程需求和培训教师注册信息,为员工和培训教师生成对应的课程表。
系统分析师对上述流程进行了审核,并指出需补充数据字典,从而更完整地对系统建模。
4、问题1(10分):数据流图(DFD)是结构分析方法的重要工具。请用300字以内的文字描述 DFD 的定义,在系统需求、分析和过程中的作用。DFD与数据字典各自的关注点是什么。
参考答案:
DFD的主要作用如下:
(1)DFD是理解和表达用户需求的工具,是需求分析的手段。由于DFD简明易懂不需要任何计算机专业知识就可以理解它,因此,系统分析师可以通过DFD与用户进行交流。
(2)DFD概括地描述了系统的内部逻辑过程,是需求分析结果的表达工具,也是系统设计的重要参考资料,是系统设计的起点。
(3)DFD作为一个存档的文字材料,是进一步修改和充实开发计划的依据。
(4)作为描述数据处理过程的工具,从数据传递和加工的角度,逐层细分描述系统内各个部件的功能和数据,描述数据流从输入到输出的移动变换过程。
DFD关注数据在系统中的流动;对于复杂问题,需将问题逐层分解,用分层数据流图反应数据加工情况。数据字典关注对数据的定义和说明,是元数据,而不是数据本身;数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善。
试题二(25分):
阅读以下关于企业信息系统结构化分析的叙述,回答问题1和2.
说明:
某软件公司为企业开发一套员工在线教育系统,支持员工利用业余时间开展专业技术培训,提升员工技能。在项目开展初期,采用结构化分析进行开发,并对系统中培训部员工和培训教师的相关功能进行分析,具体需求如下:
(1)培训部根据企业技术发展需求,负责策划培训课程,并形成课程计划,针对不同的员工设置不同的课程;
(2)员工首先在系统进行注册,填写自己的编号,学历,专业,岗位等信息,生成员工注册信息,然后将自己的培训需求录入系统,系统自动评估并进行课程推荐,员工确认后形成课程需求;
(3)培训教室也通过系统进行注册,填写自己的编号、学历、专业等信息,形成培训教师注册信息
(4)系统根据课程计划、员工注册信息,课程需求和培训教师注册信息,为员工和培训教师生成对应的课程表。
系统分析师对上述流程进行了审核,并指出需补充数据字典,从而更完整地对系统建模。
5、问题2(15分) :项目组针对题干描述的业务需求,初步绘制了数据流图(2-1),请分析图中的三类错误并对每类错误进行简单解释。
图2-1 员工在线教育系统数据流图
参考答案:
第一类错误:外部实体与外部实体之间不存在数据流;外部实体与数据存储之间不存在数据流;数据存储与数据存储之间不存在数据流。本题中,数据存储“培训教师数据库”到外部实体“培训教师”,数据存储“员工数据库”到外部实体“员工”均有数据流。
第二类错误:数据流没有方向。本题中,“员工注册信息”数据流没有方向。
第三类错误:加工只有输入流没有输出流。本题中,加工“需求评估与课程推荐”缺少输出流。
试题三(20分):
随着嵌入式计算资源快速提升,容器技术(Docker)发挥重要作用,某公司对原有平台升级,公司将平台升级任务交给了张工,张工经过分析、调研,提出在园嵌入式操作系统平台上采用容器技术的升级方案,但该方案引发了争议。
6、问题1:争论焦点是采用容器技术还是虚拟机(VM)技术。李工支出由于容器技术共享主机内核能向虚拟机一样完全隔离,系统存在安全问题;如果采用虚拟机技术除满足需求外,还保证了系统的安全和稳定,会上领导根据系统升级的初衷选择了张工的升级方案,请用300字以内的文字说明容器技术和虚拟技术的含义,并简要论述公司领导采纳容器技术的原因。
参考答案:
容器技术起源于Linux,是一种内核虚拟化技术,提供轻量级的虚拟化,以便隔离进程和资源。虚拟机技术指通过模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。
容器技术与虚拟机技术相比有如下优势,是公司领导采纳容器技术的原因:
更高效的利用系统资源:
容器不需要进行硬件虚拟以及运行完整操作系统等额外开销,容器对系统资源的利用率更高。无论是应用执行速度、内存损耗或者文件存储速度,都要比传统虚拟机技术更高效。
更快速的启动时间
传统的虚拟机技术启动应用服务往往需要数分钟,而Docker容器应用,由于直接运行于宿主内核,无需启动完整的操作系统,因此可以做到秒级、甚至毫秒级的启动时间。
更轻松的维护和扩展
Docker使用的分层存储以及镜像的技术,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得非常简单。
试题三(20分):
随着嵌入式计算资源快速提升,容器技术(Docker)发挥重要作用,某公司对原有平台升级,公司将平台升级任务交给了张工,张工经过分析、调研,提出在园嵌入式操作系统平台上采用容器技术的升级方案,但该方案引发了争议。
7、问题2:表3-1给出了虚拟技术和容器技术的性能对比表,请根据下面的(a)~(h)的8个性能指标;判断这些指标属于哪类对比项,补充完善 3-1 的(1)-(8)的空白处。
(a)分钟级、(b)包含GuestOS,G 两级以上、(c)跨操作系统平台迁移、(d)CPU 与内存按核、按G分配(e)毫秒/秒级、(f)Cgroups,进程级别、(g)VM 伸缩,cpu/内存手动伸缩、(h)实例自动伸缩、cpu/内存自动在线伸缩
表3-1 虚拟技术和容器技术的对比表
参考答案:
①:b
②:d
③:a
④:e
⑤:c
⑥:g
⑦:h
⑧:f
试题四:
某国际大型企业拟向企业开发一个在线社交网络服务(SNS)系统,让企业内部的员工能够通过类似社交网络的方式进行工作和自我管理,以实现企业内部员工高效、透明、便捷的沟通与协作。其基本的工序包括:
1、 企业内部部门、员工等基本信息的维护和管理
2、 提供常见的 SNS 服务,如 Blog,WiKi,数钱,RSS,即时通信和邮件等
3、 提供社交网络,推荐系统等基本功能提高业务协作
除了上述功能性的需求外,还需要满足系统的可拓展、灵活部署以及高性能和高可用性需求
企业设计系统小组...
8、问题1:李工建议采用 SNS 中常见的 NoSQL 数据库技术,原因是传统的关系数据库不能满足实际需求,请用200字内说明该系统不能采用传统关系数据库的原因,并给出 NoSQL数据的基本特点
参考答案:
在线社交网络服务(SNS)中的即时通讯系统,需要存储巨量的数据,同时需要快速的响应(查询速度),传统关系型数据库的特点是数据量越大查询越慢,而某些 NoSQL 数据库比如 键值数据库,列式存储数据库等都非常适合此场景。键值数据库类似于传统语言中使用的哈希表。可以通过key来添加、删除、查询数据,因为使用key主键来访问,所以键值数据库有很高的性能及拓展性。不同于关系型数据库的以行为单位储存,列式存储数据库将数据存储于列族中,一个列族存储经常被一起查询的相关数据。由于它的查询速度快,列式存储数据库可以发挥他查询速度方面的优势,主要用于海量数据分析一类的方面。例如HBase。
在线社交网络服务(SNS)系统的核心功能社交网络和推荐系统,这两个功能的特点是需要处理大量的数据和复杂的关联关系,这些都是传统关系型数据库的短板,而图数据库在处理此类问题时具有完全的优势。如果我们希望知道谁 LIKES(喜欢)谁(喜欢可以是单向或双向),也想知道谁是谁的 FRIEND_OF(朋友),谁是所有人的 LEADER_OF(领导)。通过传统关系型数据库提供的搜索算法来查找,便需要耗费巨量的时间来一一对比,但通过图数据库的子图查询,则可以对这些各异的需求进行更精准的响应。子图查询最直接的优点就是对数据需求的表达能力很强。
描述系统的特点,也就是需要使用 NoSQL 数据库的动机,然后描述所使用的 NoSQL 数据库实现原理即可。
试题四:
某国际大型企业拟向企业开发一个在线社交网络服务(SNS)系统,让企业内部的员工能够通过类似社交网络的方式进行工作和自我管理,以实现企业内部员工高效、透明、便捷的沟通与协作。其基本的工序包括:
1、 企业内部部门、员工等基本信息的维护和管理
2、 提供常见的 SNS 服务,如 Blog,WiKi,数钱,RSS,即时通信和邮件等
3、 提供社交网络,推荐系统等基本功能提高业务协作
除了上述功能性的需求外,还需要满足系统的可拓展、灵活部署以及高性能和高可用性需求
企业设计系统小组...
9、问题2:李工对当前主流的 NoSQL 数据库镜像了调研形成了如下表

参考答案:
(a):OLAP
(b):节点和关系组成的图
(c):键操作性能高(基于键的增删查改都快),可扩展性强
(d):使用JSON或者XML等格式来存储数据,格式灵活
试题四:
某国际大型企业拟向企业开发一个在线社交网络服务(SNS)系统,让企业内部的员工能够通过类似社交网络的方式进行工作和自我管理,以实现企业内部员工高效、透明、便捷的沟通与协作。其基本的工序包括:
1、 企业内部部门、员工等基本信息的维护和管理
2、 提供常见的 SNS 服务,如 Blog,WiKi,数钱,RSS,即时通信和邮件等
3、 提供社交网络,推荐系统等基本功能提高业务协作
除了上述功能性的需求外,还需要满足系统的可拓展、灵活部署以及高性能和高可用性需求
企业设计系统小组...
10、问题3:
针对李工的建议,王工认为单纯使用 NoSQL 数据库无法完全满足系统要求,考虑到系统功能所涉及到数据类型建议使用混合数据库模型来实现,请用100字以内文字说明。混合数据库模式如何组织
参考答案:
混合数据库模型整合内存数据库、关系型数据库、各种类型的NoSQL等多种类型的数据库,根据不同业务场景对数据应用的需求,灵活提供数据服务,同时满足低成本、安全性、可用性、敏捷性、自动化的需求。比如企业内部部门、员工等基本信息的维护和管理适合关系型数据库;即时通讯功能适合键值数据库或者列式数据库;社交网路和推荐系统适合图数据库等。基础数据写入到关系型数据库,通过消息中间件实时或者使用批处理的方式将数据同步到对应 NoSQL 数据库,保证数据的一致性,在 NoSQL 数据库之上运行推荐算法,数据网络化处理等。
试题五:
某公司拟开发一个电商平台用户行为分析系统,该系统可支持对电商平台用户行为数据的采集和实时/高效数据处理分析,统计分析用户访问情况。搜集 PV/UV 商品热度等相关数据。系统应具备以下能力
(1)对海量用户行为数据的存储和处理能力
(2)为适应用户行为的随机性,保证系统不会被爆发的日志数据压垮,系统应具备对突发流量的处理能力
(3)对用户数据的隐私保护能力
针对项目需求,公司召开会议,会上张工提出用户行为会产生大量数据,传统的文件存储与关系型数据库,无法完全解决当前系统问题,应基于大数据技术设计并实现系统,李工提出可就重要数据脱敏的方法解决用户隐私的问题
11、问题1:根据项目要求,该系统需考虑电商平台用户行为的随机性,具有应对突发数据,流量数据的处理能力。请根据大数据相关技术的了解,说明可选哪个技术支持流量分析系统应对突发流量暴增情况?并用200字以内说明该技术优势
参考答案:
流计算面对实时且流式的数据,流数据是按照时间发生顺序地被流计算订阅和消费。故选择流计算技术对突发流量进行削峰填谷。常见的流计算引擎有Flink、Spark Streaming、Kafka Stream等。流计算具有如下技术优势:
1. 可接收实时且无界的数据流。流计算面对计算的 是实时且流式的,流数据是按照时间发生顺序地被流计算订阅和消费。且由于数据发生的持续性,数据流将长久且持续地集成进入流计算系统。例如,对于网站的访问点击日志流,只要网站不关闭其点击日志流将一直不停产生并进入流计算系统。因此,对于流系统而言,数据是实时且不终止(无界)的。
2. 可进行持续且高效的计算。流计算是一种”事件触发”的计算模式,触发源就是上述的无界流式数据。一旦有新的流数据进入流计算,流计算立刻发起并进行一次计算任务,因此整个流计算是持续进行的计算。
3. 可进行流式且实时的数据集成。流数据触发一次流计算的计算结果,可以被直接写入目的数据存储,例如将计算后的报表数据直接写入 RDS 进行报表展示。因此流数据的计算结果可以类似流式数据一样持续写入目的数据存储。
4. 流计算引擎大都提供数据存储功能,可对突发流量进行削峰填谷。
试题五:
某公司拟开发一个电商平台用户行为分析系统,该系统可支持对电商平台用户行为数据的采集和实时/高效数据处理分析,统计分析用户访问情况。搜集 PV/UV 商品热度等相关数据。系统应具备以下能力
(1)对海量用户行为数据的存储和处理能力
(2)为适应用户行为的随机性,保证系统不会被爆发的日志数据压垮,系统应具备对突发流量的处理能力
(3)对用户数据的隐私保护能力
针对项目需求,公司召开会议,会上张工提出用户行为会产生大量数据,传统的文件存储与关系型数据库,无法完全解决当前系统问题,应基于大数据技术设计并实现系统,李工提出可就重要数据脱敏的方法解决用户隐私的问题
12、问题2:根据张工建议,项目组拟采用大数据技术开发该系统。图5 给出本项目架构设计方案,请选择(a)~(m)选项中选出合适的内容,完善(1)~(7)处
(a)网络层、(b)业务层、(c)接入层、(d)数据处理、(e)数据采集
(f)Flink 实时计算、(g)Flink 批处理、(h)Hbase、(i)Redis、(j)NoSQL
(k)kafka、(l)边缘计算、(m)设备层
参考答案:
(1) :(c) 接入层
(2) :(k) kafka
(3) :(b) 业务层
(4) :(f) flink 实时计算
(5) :(g) flink 批处理
(6) :(h) hbase
(7) :(i) Redis
试题五:
某公司拟开发一个电商平台用户行为分析系统,该系统可支持对电商平台用户行为数据的采集和实时/高效数据处理分析,统计分析用户访问情况。搜集 PV/UV 商品热度等相关数据。系统应具备以下能力
(1)对海量用户行为数据的存储和处理能力
(2)为适应用户行为的随机性,保证系统不会被爆发的日志数据压垮,系统应具备对突发流量的处理能力
(3)对用户数据的隐私保护能力
针对项目需求,公司召开会议,会上张工提出用户行为会产生大量数据,传统的文件存储与关系型数据库,无法完全解决当前系统问题,应基于大数据技术设计并实现系统,李工提出可就重要数据脱敏的方法解决用户隐私的问题
13、问题3:根据李工的建议,项目组拟应用数据脱敏方法对该系统的敏感数据进行脱敏。请用300字以内文字说明常用5种数据脱敏方法
参考答案:
1. 基于规则的脱敏方法:根据不同的敏感程度,制定相应的脱敏规则。对于姓名、联系方式等个人信息,可以将关键信息用“*”代替。如“王*”、“180****0329”。
2. 加密脱敏方法:对敏感数据进行加密处理,只有授权的人员可以解密。例如,对于银行账号、信用卡号等敏感信息,可以使用加密算法进行脱敏,只有经过授权的人员才能够查看原始数据。
3. 伪装脱敏方法:将敏感数据替换成其他的数据,以达到保护隐私的目的。例如,对于地理位置信息,可以将具体地址替换成地图上的某个随机点,或者将经纬度加上一定的随机偏移量来进行伪装。
4. 数据扰动脱敏方法:将原始数据进行随机化处理,以达到数据保护的目的。例如,对于数字类型的敏感数据,可以对其进行扰动处理,添加一定的随机误差,从而使得原始数据不易被还原。
5. 数据屏蔽脱敏方法:对于一些敏感数据,可以采取屏蔽措施,避免其被存储、传输或使用。例如,可以将一些特定的数据列从数据库中删除或屏蔽掉,只有经过授权的人员才能够访问。
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!