系统分析师案例分析100问

1.FAST 开发方法每个阶段的任务?(2021真题)
(1)初始研究:定义范围和目标、计划项目和预算、列出问题
(2)问题分析:深入研究问题,分析问题和机会、制定系统改进目标、修改项目计划
(3)需求分析:定义需求、排列需求优先级、完善项目计划、交流需求陈述
(4)决策分析:确定候选方案、分析候选方案、完善项目计划、推荐一种系统

2.什么是PERT图和Gantt图,它们的区别是什么?
PERT图是一种图形化的网络模型,通过图形的形式反映了各个任务之间的依赖关系,Gantt图是一种水平条形图,可以直观地表示不同任务之间的重叠关系。

3.数据流图的作用是什么?
数据流图从数据传递和加工的角度描述了系统内部数据的流向以及内部各个模块的功能和交互关系,数据流图是需求分析阶段的产物,作为存档的资料,是系统设计的起点,是进一步充实和修改开发计划的依据,同时还是系统设计的重要参考资料。

4.活动图与流程图的区别?
(1)活动图可以表示并发活动,流程图只能表示顺序的活动
(2)活动图适用于面向对象分析而流程图适用于面向过程分析
(3)活动图着重描述系统的行为,而流程图描述系统的处理过程

5.FAST开发方法问题分析阶段需要完成的任务?(2018真题)
(1)研究问题域
(2)分析问题和机会
(3)制定系统改进目标
(4)修改项目计划

6.系统约束的种类?
进度约束、成本约束、技术约束、质量约束、政策约束

7.需求评审的内容和作用?
内容:
(1)所有的需求都被清晰的表达
(2)需求规格说明书中的需求是从系统需求、业务规格和其他来源中正确推导而来的
(3)需求是完整的和高质量的
作用:了解需求的动机、目标、方案,降低需求的不完整、提早考虑排期风险、提高软件质量、降低团队成员理解的不一致

8.可行性分析包含哪些内容?
(1)技术可行性
(2)经济可行性
(3)法律可行性
(4)用户使用可行性

9.什么是联合需求计划?
联合需求计划是高度结构化的分组会议,用于快速分析问题和定义需求

10.联合需求计划相比其他方法的优势?
可以提高系统开发效率,降低需求获取的时间成本、通过系统原型对系统需求进行确认

11.有哪些需求获取方式?
(1)用户访谈
(2)联合需求计划
(3)采样
(4)问卷调查
(5)阅读历史文档
(6)现场观摩

12.需求文档的内容和作用?
内容:
(1)系统应该提供的功能和服务
(2)非功能需求
(3)约束条件
(4)连接的其他系统的信息
作用:
(1)使用需求定义文档来确认需求以及任何可能产生的变化
(2)系统开发人员通过其理解需要什么
(3)项目经理使用它作为制定项目计划、处理变更和验收的依据

13.用例规约的七方面内容?
(1)用例名称
(2)简要说明
(3)事件流
(4)非功能需求
(5)前置条件与后置条件
(6)拓展点
(7)优先级

14.简述用例之间的三种关系?
包含关系:从两个或两个以上的用例中将同样的功能提取出来的公共用例,代表了某种形式的复用
拓展关系:拓展是两个用例之间的一种可选关系,是从一个复杂用例中提取出来用以简化原用例的事件
泛化关系:泛化是一种特殊与一般的关系,父用例是子用例的泛化。

15.索引的优点是什么?
(1)加快查询速度
(2)加速表与表之间的连接
(3)显著减少查询中分组和排序的事件
(4)索引可以使用优化器提高整个系统的检索性能

16.PIECES框架包括哪些内容?
PIECES是对非功能性需求进行分类的技术,包括:
(1)性能
(2)信息
(3)经济
(4)控制
(5)效益
(6)服务

17.信息系统集中管理建设包括哪些内容?
(1)灾备系统
(2)身份识别系统
(3)入侵检测系统
(4)安全审计系统
(5)物理安全措施
(6)高可用性设施
(7)网络管理系统

18.层次架构的优势是什么?
(1)系统解耦
(2)相同抽象级别的内容放在同一层次,便于理解
(3)可拓展性好,便于快速迭代
(4)可维护性好
(5)复用性好

19.什么是SOA?
SOA是一种组件模型,将单体应用根据不同功能单元拆分为服务,服务之间通过定义良好的接口和协议进行交互和协作

20.ESB的主要功能?
(1)服务位置透明
(2)消息路由
(3)监控与管理
(4)安全性
(5)消息格式转换
(6)传输协议转换
(7)消息增强

21.从业务功能实现、功能集成两方面比较面向对象开发方式和面向服务开发方式的区别?
从业务功能实现来看,OOD以对象为核心,通过对象之间的消息交互完成业务功能,SOD核心是服务业务功能需要封装为服务;
从功能集成来看,OOD的集成单元也是类和对象,通常使用工作流技术制定业务流程,而SOD的集成单元是服务,通过服务完成业务流程编排。

22.模型驱动架构(MDA)的优势?
(1)可移植性
(2)平台互操作性
(3)文档和代码一致性

23.什么是微服务?
微服务是把庞大的单体应用按功能拆分为粒度较小的服务组成的组件模型,一个微服务只完成一个业务功能,服务之间通过定义良好的接口和协议进行通信,服务之间相互协调配合为用户提供最终价值。

24.微服务的优势和挑战?
优势:
(1)松散耦合与细粒度
(2)独立部署独立测试
(3)可以为不同的服务选择不同的开发方法
挑战:
(1)部署和维护成本大幅增加
(2)服务间的消息交互可能成为性能瓶颈
(3)带来分布式事务和数据一致性问题
(4)跨服务协同较为困难
(5)并非所有系统都能拆分为微服务

25.敏捷开发的原则?
(1)引导客户参与
(2)拥抱变化
(3)尽早交付可用的阶段产品
(4)以人为本
(5)倡导面对面沟通

26.什么是实体对象、控制对象和接口对象?
实体对象负责持久化业务域的事实数据,控制对象主要负责处理业务逻辑,调用实体对象和接口对象进行工作,接口对象负责表示用户与系统进行交互。

27.OOA中筛选业务对象的原则?
(1)去除重复的对象
(2)去除语义不清的对象
(3)去除不属于本系统范围内的对象
(4)去除没有特定独立行为的对象
(5)去除属于另一个对象属性或行为的对象

28.结构化方法和面向对象方法的区别?
结构化开发是面向数据流的开发方法,以数据流图和数据字典表示模块之间的交互关系,结构化方法的核心是模块。
面向对象方法的核心是类和对象,以用例图表示概念类之间的关系,以交互图表示相关对象之间的行为。

29.逆向工程恢复信息的级别?
(1)实现级:抽象语法树
(2)结构级:程序分量之间依赖关系
(3)功能级:程序功能
(4)领域级:程序与应用领域之间的对应关系

30.软件重构的三类?
(1)代码重构
(2)架构重构
(3)模块重构

31.常见的重构方法有?
(1)重新组织函数
(2)重新组织对象
(3)重新组织数据
(4)简化表达式
(5)提取类和接口
(6)简化函数调用

32.数据迁移的准备工作有哪些?
(1)了解数据结构
(2)建立新旧数据库的数据字典,分析新旧系统差异
(3)分析新旧系统代码差异
(4)建议映射关系
(5)开发或购买、部署ETL工具
(6)编写数据转换的测试计划
(7)制定应急措施

33.分析类图和设计类图的区别?
分析类图在系统分析阶段使用,更多反应现实世界的实体,一般使用业务域的语言和词汇描述,不涉及具体的编程语言
设计类图在系统设计阶段使用,一般采用编程语言描述,是从编程实现的角度来设计的,更多考虑类编码的实现。

34.什么是实体类、控制类和边界类?
实体类是表示业务域事实数据并持久化存储的类,控制类用于处理业务逻辑,调用实体类和边界类工作,边界类负责表示与用户交互的方式,一般位于系统边界。

35.类之间的关系?
(1)聚合:表示部分与整体的关系,部分与整体可以有不同的生命周期,且一个部分可以同时属于多个整体
(2)组合:表示部分与整体的关系,部分与整体有相同的生命周期,整体消亡则部分也不复存在
(3)关联:一段时间内将多个类的实例连接在一起的关系
(4)依赖:一个类变化会引起另一个类的变化称为依赖关系
(5)泛化:特殊与一般的关系,父类是子类的泛化,子类继承弗雷的属性和方法

36.主题数据库的设计要求和基本特征?
设计要求:
(1)逻辑独立于物理实现
(2)尽可能稳定
特征:
(1)面向业务主题
(2)信息共享
(3)统一输入接口
(4)由基本表组成

37.索引的作用是什么?
索引是为了加速表数据查询而建立的一种分散存储结构,每个索引页面中的行都包含逻辑指针用于加速检索物理数据

38.索引过多的缺点是什么?
(1)索引过多会导致优化器需要评估的组合变多
(2)频繁更新的列会导致索引不断重建,增加计算开销
(3)聚集索引的变化会导致非聚集索引的变化
(4)过多的索引会占用大量存储空间
(5)索引越多需要统计的信息越多

39.常见的反规范化技术有哪些?
(1)增加冗余列:在多个表中增加相同的列避免多表连接操作
(2)增加派生列:增加的列可以通过其他列计算得到,使得查询时减小计算开销提升性能
(3)重新组表:许多用户需要查看两个表的连接结果时将这两个表重新组合为一张表减少连接操作
(4)水平分割:将表按记录进行分割,适用于数据规模很大,表中数据相对独立的情况
(5)垂直分割:将主键与一部分列放在一个表中,主键与其他列放在另一个表中以减少查询的IO次数

40.主从同步的步骤?
主库将数据库变更写入Binary Log,从库更新时启动一个IO线程连接主库,主库启动Binary Dump线程读取Binary Log中的数据发送给从库,从库接收到后写入Relay Log,然后从库的SQL线程从Relay Log中读取事件进行从库的更新

41.数据同步的几种方法?
(1)数据库插件同步
(2)触发器同步
(3)定时任务同步
(4)代码同步

42.常见的NoSQL类型?
(1)列式数据库:Hive、HBase
(2)文档数据库:MongoDB
(3)图数据库:Neo4j
(4)键值对数据库:Redis

43.事务的ACID特性是什么?
(1)原子性:一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。
(2)一致性:在事务开始之前和事务结束以后,数据的完整性限制没有被破坏。
(3)隔离性:两个事务的执行是互不干扰的,两个事务时间不会互相影响。
(4)持久性:在事务完成以后,该事务对数据所作的更改便持久地保存在数据库之中,并且是完全的

44.什么是数据库视图?
数据库视图是从一个或几个数据库表中导出的表,在系统的数据字典中只存放了视图的定义而没有存放数据。

45.视图的优点是什么?
(1)简化用户操作
(2)提高数据库安全性
(3)可以使用户以不同方式查询同一数据
(4)对数据库重构提供一定的逻辑独立性

46.什么是物化视图?
物化视图是一种包含了查询结果集的数据库对象,其查询结果存储在磁盘中,就像一个实际的表一样。

47.数据库的并发操作会带来哪些问题?
(1)脏读
(2)幻读
(3)不可重复读
(4)丢失修改
(5)死锁

48.常见的负载均衡技术有哪些?
(1)数据链路层负载均衡
(2)传输层负载均衡:DNS负载均衡
(3)应用层负载均衡:基于HTTP重定向服务器的负载均衡、Nginx负载均衡

49.常用SQL语句优化策略?
(1)不相干子查询代替相干子查询
(2)经常提交Commit释放锁
(3)用IN子句代替OR子句
(4)建立物化视图或尽可能减少多表查询
(5)只检索需要的列

50.什么是云数据库?
云数据库是一种数据库解决方案,通过云计算技术提供数据存储、管理和处理服务,具有高可用,可拓展性、按需付费、维护简便、安全性等特性。

51.云数据库的特性?
(1)高可用性
(2)可拓展性
(3)按需付费
(4)安全性
(5)监控与管理
(6)集成性
(7)维护简便
(8)访问便捷
(9)灾难恢复

52.什么是两段提交协议?
两段提交协议是为了解决分布式事务不一致提出的协议,在2PC中有协调者和参与者两种角色,分为投票和提交两个阶段,投票阶段协调者向每个参与者发送prepare消息,当所有参与者都返回ready消息则进入第二阶段,协调者向参与者发送Commit消息,提交事务,只要有一个参与者向协调者发送了abort消息,则第二阶段协调者向所有参与者发送rollback消息,回滚事务操作。

53.什么是三段提交协议?
3PC是为了解决2PC的问题而提出的一致性协议,分为询问、准备和提交三个阶段。在第一阶段,协调者向所有者发送提案和提交请求,参与者收到询问后,如果愿意参与该事务,将进入“准备”状态,并等待其他参与者的响应。第二阶段中参与者在完成事务准备工作后向协调者发送ACK消息,如果协调者收到所有参与者的ACK消息则进入第三阶段,如果有一个或一个以上参与者超时没有发送消息或发送了否定的消息,则此次事务取消。3PC引入的协调者和参与者的超时机制解决了2PC中存在的阻塞和单点故障问题,但没有完全解决数据不一致问题,只是进一步降低了数据不一致的概率。

54.什么是软件复用?
软件复用是将已有软件知识用于建立新的软件以缩减软件开发和维护的成本。

55.什么是软件产品线?
软件产品线是指具有一组可管理的公共特性的软件密集型系统的合集,软件产品线主要由核心资源和产品集合组成。

56.发布者/订阅者模式的特点?
发布者订阅者模式由发布者、订阅者、主题三部分组成,一个主题可以有多个订阅者接收,发布者与订阅者之间有时间上的依赖性,为了消费消息,订阅者需要提前订阅该主题并持续在线运行。

57.REST的五条关键原则?
(1)所有事物都被抽象为资源
(2)所有的资源都有标识
(3)所有的操作都是无状态
(4)所有的操作都不改变资源的标识
(5)通过通用连接件接口对资源进行操作

58.MVP和MVC模式的区别?
(1)MVP模式消除了Model和View之间的直接交互,所有交互都通过控制器间接进行,解耦程度更高
(2)在MVC模式中控制器通常只完成事件分发,而MVP模式中业务逻辑集中在控制器中
(3)MVP模式可以更好地支持单元测试,MVC模式中由于模型与视图绑定,因此难以实施相应单元测试

59.什么是MVC模式?
MVC模式强制性地把一个应用的输入、处理、输出流程按照视图、流程、模型的方式进行分离,形成视图、控制器、模型三个模块。

60.Restful 与 Soap 风格比较?
SOAP将Web服务封装为经典程序模型中的对象RPC模式,SOAP支持有状态的多步会话操作和安全性支持,REST将Web服务映射为标准的HTTP操作,通过HTTP请求即可实现调用,更为轻量级,且安全性不如SOAP

61.SOA的五个设计原则?
(1)粗粒度
(2)松耦合
(3)自包含和模块化
(4)互操作性
(5)明确定义的接口

62.什么是缓存预热?
在系统刚开始启动前预先加载预计会被频繁访问的热点数据以提升系统性能,减少缓存未命中。

63.什么是缓存降级?
缓存降级是在缓存失效或缓存服务器挂掉的时候返回默认数据或缓存在服务中的数据以避免大量请求磁盘数据库导致宕机。

64.什么是缓存击穿?如何解决?
缓存击穿是指某个热点数据过期时大量查询请求直接落到数据库上
解决方案:1)设置热点数据永不过期 2)使用互斥锁,一个线程回写缓存时其他线程阻塞

65.什么是缓存穿透?如何解决?
客户请求不存在的数据从而使请求落到数据库上
解决方案:1)使用布隆过滤器 2)缓存中设置空对象

66.什么是缓存雪崩?如何解决?
大量数据同一时间过期,导致大量请求无法从缓存中查到从而落在数据库上造成巨大的IO压力而宕机。
解决方案:
(1)双缓存策略
(2)让数据均匀过期,避免设置相同的过期时间
(3)缓存永不过期
(4)使用互斥锁

67.什么是缓存污染?如何解决?
缓存中一些数据只被查询了很少的次数却因为不恰当的缓存淘汰策略而一直留在缓存中,当整个缓存都是这种数据时无法再写入新数据,就要将旧数据替换出缓存。
解决方案:
1)使用最少使用(LFU)算法或最近最少使用(LRU)算法
2)设置合理的过期时间

68.什么是缓存缺失?如何解决?
缓存缺失是指被淘汰的数据马上被查询,因不在缓存里从而查询数据库
解决:
(1)增加缓存容量
(2)选择合适的缓存淘汰方案,避免使用随机淘汰策略

69.简述布隆过滤器的原理和优缺点?
原理:布隆过滤器使用一组哈希函数和一个长数组,当插入一个新值时将所有哈希函数计算出来的位数组下标置1,当查询一个值是否存在时,只要这些下标中有一个为0则该数据一定不存在
优点:不存在假阴性、时间复杂度是常数、理解和实现简单、占用内存空间小
缺点:删除困难、存在假阳性情况(布隆过滤器提示数据存在,因为哈希碰撞的原因实际不存在)、容量固定

70.简述Redis缓存淘汰策略?
(1)随机淘汰
(2)最近最少使用(LRU)
(3)最少使用(LFU)
(4)默认不淘汰
(5)淘汰即将过期的键

71.简述软件的生命周期?
(1)规划
(2)需求分析
(3)系统设计
(4)实施
(5)运行和维护

72.系统规划阶段的产出物是什么?
(1)可行性分析报告
(2)系统建设方案
(3)系统设计任务书

73.简述系统规划的步骤?
(1)对现有系统进行分析
(2)确定系统规划的目标
(3)对系统的功能和子系统进行划分
(4)制定系统实施方案
(5)可行性分析
(6)制定系统建设方案

74.什么是TOGAF框架?
TOGAF框架是一个企业架构框架,用于帮助组织设计、评估、规划和实施企业架构,其中架构开发方法是TOGAF的核心。包含架构开发方法、架构内容框架、参考模型、开发指引、企业连续体、架构能力框架。

75.面向对象分析的五个步骤是什么?
(1)确定对象和类
(2)确定结构
(3)确定主题
(4)确定属性
(5)确定方法

76.获取用例的步骤?
(1)确定系统边界
(2)识别出参与者
(3)对每一个角色明确其参与的业务活动和事件序列
(4)去掉重复的事件序列
(5)自然语言描述事件序列
(6)分析确定用例之间的关系

77.建立用例模型的步骤?
(1)识别参与者
(2)合并需求获得用例
(3)细化用例描述
(4)调整用例模型

78.面向对象分析的基本原则是什么?
(1)抽象
(2)封装
(3)继承
(4)分类
(5)聚合
(6)关联
(7)消息通信
(8)粒度控制
(9)行为分析

79.面向对象分析的五个活动是什么?
(1)标识对象类
(2)标识结构
(3)定义主题
(4)定义属性
(5)定义服务

80.Redis的持久化方式和优缺点?
(1)RDB模式:记录内存快照,将数据拍摄快照保存到硬盘中,RDB快照可以手动触发也可以自动触发
(2)AOF模式:AOF以独立日志形式记录每一条操作命令,在Redis重启时逐条执行达到恢复数据目的
优点:
RDB占用空间小,属于结构紧凑的单一二进制文件,适合用于灾难恢复和全量备份
AOF数据丢失少,持久化过程对Redis性能影响小,可以做到秒级持久化
缺点:RDB完整保存整个数据集较为耗时,新老版本的Redis快照无法兼容
AOF日志文件较大,数据恢复速度比RDB要慢

83.可行性分析的步骤?
(1)复查目标系统和规模
(2)分析现有系统
(3)提出新系统的高层逻辑模型
(4)用户复核
(5)提出新系统解决方案
(6)确定最终的解决方案
(7)草拟开发计划
(8)形成可行性分析报告

84.需求分析的步骤是什么?
(1)绘制上下文关系图
(2)创建用户界面原型
(3)分析需求可行性
(4)确定需求优先级
(5)建立需求模型
(6)创建数据字典
(7)使用质量功能部署

85.数据流图由哪几部分组成?
(1)数据加工
(2)存储
(3)外部实体
(4)数据流

86.数据流图的平衡原则?
(1)输入和输出之间的平衡
(2)父图与子图之间的平衡

87.什么是数据字典?数据字典包含哪些条目?
数据字典是对DFD中出现的元素进行详细的描述,包含数据结构、数据元素、数据流、外部实体、加工、数据存储六种条目。

88.UML包含哪三部分?
(1)规则
(2)构造块
(3)公共机制

89.OOA中构建分析模型的步骤?
(1)定义概念类
(2)确定类之间的关系
(3)为类添加职责
(4)构建交互图

90.概念类、分析类与设计类的区别和联系?
概念类描述现实世界存在的实体与概念,重点反应现实世界的问题域,分析类在需求分析与架构设计阶段产生,与具体的开发方法无关,设计类是对分析类的细化,指明每个类的具体属性和实现语言。

91.需求定义中原型法和严格定义法适用的场景分别是什么?
严格定义法适用于:
(1)所有的需求都能被预先定义
(2)用户与开发人员能够清楚地沟通
(3)采用图形和文字能够准确描述最终系统
原型法适用于:
(1)并非所有需求都能被预先定义
(2)需要实际可供用户参与的系统模型
(3)项目干系人之间交流存在困难

92.更改原型法生命周期约束的方法有哪些?
(1)屏幕原型化
(2)子系统原型化
(3)最终用户进行原型化
(4)使用购买的系统作为初始模型
(5)原型与需求建议

93.需求管理包含哪些内容?
(1)需求变更管理
(2)需求风险管理
(3)需求跟踪

94.构件获取的途径有哪些?
(1)购买构件
(2)开发新构件
(3)从现有构件改造
(4)通过遗留工程获取

95.什么是软件架构风格?
软件架构风格是描述特定系统组织方式的惯用法,组织方式描述了构成系统的构件,惯用法反应众多系统共有的结构和语义。

96.软件架构风格有哪几种?每种分别有什么架构?
一、数据流风格:
(1)管道过滤器
(2)批处理
二、独立构件风格:
(1)进程通信
(2)事件驱动系统
三、虚拟机风格:
(1)解释器风格
(2)规则系统
四、仓库风格:
(1)数据库系统
(2)黑板系统
(3)超文本系统
五、调用返回风格:
(1)层次结构
(2)主程序/子程序
(3)面向对象

97.SOA的关键技术有哪些?
(1)UDDI
(2)BPEL
(3)SOAP
(4)WSDL
(5)REST

98.服务建模的主要步骤是什么?
(1)服务发现
(2)服务规约
(3)服务实现

99.什么是敏感点,权衡点和风险点?
敏感点是一个或多个构件为了实现某些质量属性而具有的特性,权衡点是影响多个质量属性的特性,是多个质量属性的敏感点,架构风险是架构设计中存在问题的架构决策所带来的风险隐患。

100.有哪些架构评估方法?
(1)基于问卷的架构评估方法
(2)基于场景的架构评估方法
(3)基于度量的架构评估方法

101.面向对象的设计原则?
(1)开闭原则
(2)里氏替换原则
(3)最小知识原则
(4)依赖倒置原则
(5)聚合组合原则
(6)接口隔离原则

102.设计模式分为哪几类?简述每类设计模式的作用?
(1)创建型模式:用于创建对象,为类的实例化提供指南(其中工厂方法是创建型类模式)
(2)结构型模式:用于处理类或对象的组合,为类如何设计成更大的结构提供指南()
(3)行为型模式:用于处理类或对象间职责的分配和交互过程,为类间如何交互和职责分配提供指南

103.结构化设计分为哪两部分?分别简述这两部分的作用?
(1)概要设计:根据系统分析的结果将系统按功能划分为模块并确定模块之间的接口和调用关系,形成系统结构图
(2)详细设计:为每个模块选择适宜的开发方法和算法

104.模块化设计的原则?
(1)扇入扇出要合理
(2)模块的大小要合适
(3)深度和宽度要适当
(4)高内聚和低耦合

105.工作流管理系统分为哪几个部分?
(1)工作流执行服务
(2)工作流引擎
(3)客户端应用
(4)管理与监控工具
(5)流程定义工具
(6)调用应用

107.软件产品线的建立方式是什么?软件产品线开发的三个阶段是什么?
(1)将现有产品演化为产品线
(2)全新软件产品线的演化
(3)用软件产品线代替现有产品集合
(4)全新软件产品线的开发

108.简述软件产品线的三种过程模型?
(1)双周期模型
(2)三周期模型
(3)SEI模型

109.成功实施软件产品线的主要因素是什么?
(1)对实施产品线的领域具备长期和深厚的经验
(2)好的核心资源库
(3)好的产品线架构
(4)好的管理

110.面向对象的单元测试包括哪几种?
(1)方法层次测试
(2)类层次测试
(3)类树层次测试

111.方法层次的测试包括哪几种?
(1)等价类划分
(2)组合功能测试
(3)多态消息测试
(4)递归函数测试

112.类层次的测试包括哪几种?
(1)不变式边界测试
(2)模态类测试
(3)非模态类测试

113.类树层次的测试包括哪几种?
(1)多态服务测试
(2)展平测试

114.系统转换之前要做好哪些准备?
(1)数据准备
(2)人员培训
(3)设备安装
(4)系统文档准备
(5)试运行

115.集群有哪些分类?
(1)高性能计算集群
(2)负载均衡集群
(3)高可用性集群

116.什么是CDN?CDN的优势是什么?
CDN是内容分发网络,当终端用户访问这个系统时可以被调度到离该用户最近的边缘节点以减少核心节点的资源损耗

117.EJB包含哪三种类型?
(1)消息驱动Bean
(2)会话Bean
(3)实体Bean

118.Redis有哪几种数据类型?
(1)String
(2)Set
(3)ZSet
(4)List
(5)Hash

119.什么是触发器?
触发器是一种完整性保护措施,触发事件通常为完整性约束条件的否定,触发器的结果事件是一组用于消除出发事件所带来不良影响的操作。

120.数据库访问控制的粒度可以分为哪些级别?
(1)关系级别
(2)库级
(3)元组级
(4)属性级

122.参照完整性中的删除问题存在几种删除方法?
(1)级联删除
(2)受限删除
(3)置空删除

123.参照完整性中新键值的插入问题存在几种插入方法?
(1)受限插入
(2)递归插入

124.简述常见索引优化策略?
(1)选择查询多插入少的列作为索引
(2)关系上索引过多会影响增改查的性能
(3)关系数据量太小没必要建立索引
(4)统计出频繁使用的索引对起进行优化

126.数据库备份分为几种?
(1)增量备份
(2)全量备份
(3)差异备份

127.数据库设计分为几个阶段?
(1)规划
(2)需求分析
(3)概要设计
(4)逻辑设计
(5)物理设计

128.简述ER图中有几种冲突和解决方法?
(1)属性冲突:属性域冲突、属性取值冲突
(2)命名冲突:同名异义、异名同义
(3)结构冲突:同一对象在不同应用中有不同的抽象,或同一实体在不同局部ER图中的属性个数和排列次序不完全一致,前者的解决方法是将实体转换为属性或将属性转换为实体使得同一对象具有相同的抽象层次,后者的解决方法是取多个局部ER图中的属性的并集再适当调整属性排列次序

129.什么是弱实体?
对于实体中的多值属性将其提取出来作为一个整体称之为弱实体。

130.数据库概念设计的步骤是什么?
(1)选择局部应用
(2)逐一设计分ER图
(3)合并ER图取消冲突

131.数据库逻辑设计的步骤是什么?
(1)ER图转换为关系模式
(2)关系模式规范化
(3)确定完整性约束
(4)确定用户视图
(5)反规范化

132.有哪些解决数据不一致的方案?
(1)应用程序同步
(2)触发器同步
(3)批处理同步

134.数据库物理设计的步骤是什么?
(1)确定数据分布
(2)确定存储结构
(3)确定访问模式

135.分布式数据库有哪些模式?
(1)数据分片模式
(2)完全复制模式
(3)分区模式
(4)联邦模式
(5)对等网络模式

136.什么是数据分片?
数据分片是将全局关系模式分解为合适的逻辑单位,由分布模式确定逻辑单位存储的物理位置,提高访问的局部性,控制数据的冗余度。

137.数据分片有哪些类型?
(1)水平分片
(2)垂直分片
(3)导出分片
(4)混合分片

138.数据分片应该遵循什么原则?
(1)完整性
(2)重构性
(3)不相交

139.简述几种分布透明性?
(1)分片透明性
(2)位置透明性
(3)局部数据透明性

140.NoSQL有哪些分层?
(1)数据持久层
(2)数据分布层
(3)逻辑模型层
(4)接口层

141.MySQL有哪些主从复制模式?
(1)同步复制
(2)异步复制
(3)半同步复制

142.物理分区有哪些策略?
(1)范围分区
(2)哈希分区
(3)列表分区
(4)组合分区

143.Redis有哪些分布式缓存实现方式?
(1)主从复制模式
(2)哨兵模式
(3)集群模式

144.简述集中式数据架构与分布式数据架构的概念?
集中式数据架构由一个处理器及相关存储设备和外围设备组成,集中式数据架构由一个处理器及相关存储设备、外围设备组成,被集中在单一物理位置,提供数据处理能力,用户在同一站点上操作,也可以远程对其进行操作,系统管理被某个站点集中控制,所有读写请求都由该系统进行处理。分布式数据架构由不同计算机系统上的局部数据库通过网络连接在一起,数据可以在多个不同的局部数据库之间传输,不同局部数据库可以由不同的数据库管理系统进行管理,同一应用程序可以操作不同局部数据库中的数据。

145.从性能、安全性、可拓展性三个方面比较Struts与SpringMVC?
Struts采用创建新的类来实现拦截器、封装输入和上下文,每个Web访问均需要创建若干新的类,SpringMVC采用方法来实现,性能更好;安全性:Struts开发时间较早,安全性的考虑不够完善且维护不足,安全性较差,SpringMVC更新维护良好,能及时提供补丁;可拓展性:Struts2.0较难拓展,而SpringMVC是一个基于组件的开发框架,集成不同的组件就可以实现不同的功能。

146.什么是NoSQL?NoSQL有哪些优缺点?
这类数据库不依赖传统的关系型数据库管理系统(RDBMS),它们通常用于处理大量的分布式数据。NoSQL数据库的出现是为了解决大规模数据集的存储和检索问题
优点:
(1)支持高并发
(2)数据存储结构松散,灵活支持多种数据格式
(3)对分布式支持良好
(4)支持海量数据存储
缺点:
(1)不支持事务
(2)不支持SQL语言查询
(3)未形成统一标准
(4)没有严格数学形式化理论验证

147.什么是JWT?
JWT是一种身份验证标准,分为头部、负载和签名三部分

148.什么是服务网格?
服务网格是把微服务间连接、安全和流量控制等非业务功能剥离成为公共基础设施,服务网格通常由数据平面和控制平面组成。提供微服务间通信、安全性、可观测性、流量管理、服务发现与负载均衡、故障恢复能力。

149.什么是云原生?云原生架构的原则是什么?
云原生是基于云端环境设计软件,旨在将应用程序中非业务代码部分进行最大化的剥离,让云设施接管应用中的大量非功能特性。
云原生架构的原则:弹性原则、可观测原则、服务化原则、韧性原则、自动化原则、零信任原则、架构持续演进原则。

150.简述几种云原生架构反模式?
(1)缺乏自动化能力的微服务
(2)庞大的单体应用
(3)应用硬拆为微服务

151.要实现Redis和MySQL之间的同步,常见方法有哪些?
(1)实时数据同步,该同步方案查询时先查缓存,查不到再去查数据库,更新时先更新数据库,再将缓存数据设置过期
(2)通过消息队列进行同步
(3)触发器同步
(4)是通过数据库插件进行同步

152.Redis集群切片的常见方式有哪些?
(1)客户端分片
(2)中间件分片
(3)Redis Cluster
153.普通 hash 算法和一致性哈希算法对比?
普通哈希算法通过哈希函数将键映射到不同的节点上,而一致性哈希算法使用一个哈希环,环上每个阶段对应一个哈希值,数据项通过哈希函数映射到环上某个位置,数据被存储到该位置顺时针方向的第一个节点。
一致性哈希算法解决了数据分布不均匀的问题,每个物理节点在哈希环上有多个虚拟节点,即使部分节点失效只需将数据迁移到顺时针的下一个节点即可。

154.OMT对象建模技术有哪三种模型?
(1)对象模型:对象模型描述系统的静态结构,是整个体系中最基础和最核心的部分,往往使用对象图进行建模
(2)动态模型:动态模型描述系统内对象的相互作用,往往使用状态图进行建模
(3)功能模型:功能模型描述系统内数据变化的过程,往往使用数据流图进行建模

155.什么是响应式Web页面设计?
响应式Web设计是一种页面根据不同的用户操作和设备环境自动调整页面布局以让用户达到流畅的阅读和操作体验的设计。实现方式有流式布局、弹性布局和媒体查询。

156.什么是CAP理论?
CAP理论是指在一个分布式系统中,一致性(C)、可用性(A)、分区容错性(P)不可三者同时满足,只可能同时满足两个。

157.分布式锁的三种实现方式?
(1)基于数据库实现:悲观锁(唯一索引实现)和乐观锁(版本号实现),性能最差
(2)基于Redis实现:(lua脚本+set命令实现),性能最高,存在一定的不一致,属于AP锁
(3)基于Zookeeper实现:性能一般,但高可用,属于CP锁

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《信息系统项目管理案例分析pdf》是一本以信息系统项目管理为主题的案例分析书籍。该书通过详细解析真实的信息系统项目案例,探讨了在项目管理过程中可能出现的各种挑战和解决方法。以下是对该书的300字回答。 《信息系统项目管理案例分析pdf》是一本非常有价值的案例分析书籍。信息系统项目管理是现代企业中非常重要的一个领域,它涉及到许多关键因素,如时间管理、资源分配、质量保证等。这本书通过具体案例分析,帮助读者更好地理解信息系统项目管理的核心理论和实践技巧。 该书的案例分析内容非常丰富和实用。作者选取了不同规模和性质的信息系统项目案例,涉及到不同行业,如金融、制造、医疗等。每个案例都详细描述了项目的背景、目标和挑战,同时提供了解决题的有效方法和技巧。读者可以通过阅读这些案例,学习到实际项目管理中的经验和教训,以便在自己的实践中能够更好地应对类似的题。 此外,该书还提供了丰富的项目管理工具和技术。在案例分析中,作者对项目管理过程中用到的一些重要工具进行了详细的介绍和应用。例如,里程碑计划、资源分配图、PERT网络图等。这些工具和技术能够帮助项目经理更好地规划和控制项目,提高项目的成功率和效率。 总体而言,《信息系统项目管理案例分析pdf》是一本非常有价值的案例分析书籍。它能够帮助读者更好地理解信息系统项目管理的核心理论和实践技巧,同时提供了丰富的案例和工具,让读者能够更好地应对实际项目管理中的各种挑战。无论是从事信息系统项目管理工作的专业人士,还是对这一领域感兴趣的读者,都会从这本书中获益匪浅。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值