系统分析师考试系统分析设计案例模拟试题1.docx
- 文档编号:12698358
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:21
- 大小:35.26KB
系统分析师考试系统分析设计案例模拟试题1.docx
《系统分析师考试系统分析设计案例模拟试题1.docx》由会员分享,可在线阅读,更多相关《系统分析师考试系统分析设计案例模拟试题1.docx(21页珍藏版)》请在冰豆网上搜索。
系统分析师考试系统分析设计案例模拟试题1
2019年系统分析师考试系统分析设计案例模拟试题1
(总分:
125.00,做题时间:
150分钟)
、案例分析题(总题数:
5,分数:
125.00)
随着宽带应用快速发展,用户要求系统服务提供商提供基于互联网的多种服务。
数字视频监控作为一种区域级的安全监控方式,越来越为更多的用户所使用。
数字视频监控告警系统采用与数字视频监控相结合的多媒体技术和基于互联网的信息传递方案,为企业用户以及个人用户提供多种媒体的、不同时间、地点的信息通知服务。
数字视频监控告警系统可以将用户需要查看的监控视频或告警信息,通过互联网门户系统以多种媒体方式传送给用户,方便用户随时随地了解与自身相关的视频信息。
(分数:
25)
(1).在设计数字视频监控告警系统时,张工将该系统划分为五个层次:
服务代理层、门户服务层、流程服务总线层、业务流程应用管理层和企业服务层,其中流程服务总线层是整个数字视频监控告警系统的核心,实现了服务消息、服务指令与数据的集中传递。
系统五个层次在实现时可以采用图3-2左侧所示的技术或工具,请将系统的5个层次填入空
(1)~(5),使其与左侧技术或工具相对应。
正确答案:
(
(1)门户服务层
(2)业务流程应用管理层(3)流程服务总线层(4)服务代理层(5)企业服务层
)
解析:
空
(1)应填“门户服务层”,因为,WebPortal即门户网站。
采用WebPortal架构技术形成多种媒体互通的数字视频监控多媒体集成系统,为用户提供多视角、多媒体的综合视频监控方案。
空
(2)应填“业务流程应用管理层”、空(3)应填“流程服务总线层”、空(4)应填“服务代理层”,因为,当新的服务加入到现有系统时,管理人员通过业务流程应用管理层定义业务流程→流程服务总线层→配置服务代理,当配置服务代理(ServiceAgent)连接成功后,管理人员可以方便快速的将其加入到现有的业务运行环境中。
显然,空(5)应填“企业服务层”。
(2).请用300字以内文字说明服务代理层、门户服务层、业务流程应用管理层和企业服务层的主要功能。
(分数:
8)
正确答案:
(
服务代理层:
提供了在流程服务总线上接收或发送各类具体业务服务的消息与指令的功能。
门户服务层:
提供信息展现的功能,向各类用户提供个性化的服务。
用户可以根据各自的习惯和兴趣,定制门户的页面结构和服务内容。
业务流程应用管理层:
提供了系统管理人员定义业务流程、重组优化现有业务流程、模拟测试业务流程等功能,同时提供了各类服务的运行环境。
企业服务层:
企业服务层包含了数字视频监控多媒体集成系统中的各类具体的企业应用,如数字视频监控系统服务、网站门户服务、电子邮件警告服务等。
)
解析:
门户服务层提供信息展现的功能,向各类用户提供个性化的服务。
用户可以根据各自的习惯和兴趣,定制门户的页面结构和服务内容。
各个展现模块通过下层组件和具体的服务相关联。
业务流程应用管理层提供系统管理人员定义业务流程、重组优化现有业务流程、模拟测试业务流程等功能,同时提供了各类服务的运行环境。
在新的服务加入到现有系统中时,管理人员在配置服务代理连接成功后,可以方便快速的将其加入到现有的业务运行环境中。
流程服务总线层是整个数字视频监控多媒体集成系统的核心,实现了服务消息、服务指令与数据的集中传递,形成了一个统一的信息总线。
各类业务服务通过其服务代理,在流程服务总线(ProcessServicesBus)上交换服务消息,发送服务指令。
对于新开发的业务应用,可以通过WebService的方式,直接接入到流
程服务总线上,实现该业务功能的扩展。
服务代理层提供在流程服务总线上接收或发送各类具体业务服务的消息与指令的功能。
各个服务代理将其对应的业务服务发出的指令发布到流程服务总线上,同时接收由流程服务总线上的与自身相关的指令消息,并传递给各类服务执行。
企业服务层包含数字视频监控多媒体集成系统中的各类具体的企业应用,如数字视频监控系统服务、网站门户服务、电子邮件警告服务等。
各类企业服务为整个系统提供了多种的服务支持,并且在对于符合该层次结构的服务也可以方便快速的加入到现有得系统体系中。
(3).张工认为,系统设计实现时需要重点关注系统的私密性、实时性、稳定性和扩展性,为什么?
请用300字以内文字说明。
(分数:
10)
正确答案:
(
私密性:
由于系统涉及的是各个公司或个人的专有的视频监控信息,所以要求系统保证视频信息的私密性,严格限制访问权限。
实时性:
对于突发的监控告警信息,为了避免进一步的损失,所以要求系统提供很高的实时性,可以向用户快速提供入侵告警信息或其他告警信息。
稳定性:
系统应该具备长时间不间断运行的能力,并在用户峰值时,也可以提供很好的服务。
扩展性:
作为统一的门户接入平台,系统应该可以连接多种视频系统,并随着技术与用户需求发展,提供更多种的服务方式,所以要求系统具有较高的可扩展性。
)
解析:
作为数字视频监控告警系统在设计时必须注意以下几个方面:
(1)私密性:
具备权限和访问级别控制的功能,以保障公司或个人的专有的视频监控信息私密性。
(2)实时性:
当突发事件发生时,必须反应迅速,接警时间极短,报警控制器检测到报警信号后,必须及时告警和处理。
(3)扩展性:
由于现代技术的快速发展,系统应该具备可扩展性,以适应新技术、新设备。
(4)稳定性:
是数字视频告警系统的基本要求,因为告警系统必须具备长时间不间断运行的能力,特别是在用户峰值时,也能保证信息的通畅、快速以实现对公司或个人情况的有效监控。
当前企业中的业务都是在全球化、快速变化的环境中运营的,传统的软件开发过程无法适应由此产生的快速软件开发需求。
20世纪90年代后期,一些软件开发人员在“AgileAllicance2001”中系统地阐述了敏捷开发的原则,试图强调灵活性在快速且有效地生产软件中所发挥的作用。
目前,众多的软件生产企业已经在实际的软件开发过程中接纳并实践了敏捷开发方法中的基本原则。
(分数:
25)
(1).敏捷开发有许多典型方法,包括极限编程(eXtremeProgramming)、Scrum、Crystal、DSDM等。
请问这些方法共同的基本原则是什么?
(分数:
6)
正确答案:
(
(1)客户参与。
(2)增量式移交。
(3)开发团队的技术应该得到承认和发扬。
团队成员应该保持他们自己的工作风格,不落俗套。
(4)接受变更。
(5)保持简单性。
)
解析:
注重个体与交互,重点关注可以工作的软件,提高客户参与度,以积极的心态响应变化是敏捷方法论的核心价值观。
为了贯彻这四大价值观,敏捷联盟提出12条区别于重量级过程的原则。
(1)尽早、持续交付有价值的中间软件使客户满意。
很多开发组织经常会在时间期限上进行没有原则地退让,其结果却是让客户一等再等,不仅没有按承诺兑现,甚至是时间超过一倍,但仍然不见软件的踪迹。
这种不守信的状态,使得整个软件业走入了一个负螺旋发展。
敏捷方法论提出了一种新的逻辑,将尽早、持续地交付可运行的中间成果,有价值的中间结果,使得客户能够尽早地、持续地了解到软件开发的进展,并且将需求的变化、系统的改进意见尽早地提出来,这会使得客户的满意度大大提高。
(2)即使到了开发后期,也欢迎需求变化,利用响应变化创造竞争优势。
敏捷方法论鼓励团队拥抱变化,通过应用各种技术来提高软件结构的灵活性,本着简单的原则进行设计,以响应变化的能力作为团队的核心竞争力。
(3)经常交付可工作的软件,间隔时间可以是几周到几个月,间隔越短越好。
由于敏捷方法论奉行“客户合作”、“客户参与”,而要让客户更加有效的参与,经常性、频繁地交付可工作的中间软件,将可以有效地加强开发人员与客户之间的沟通,从而将隐藏的需求变化及早触动。
(4)开发全过程,业务人员和开发人员必须天天都在一起工作。
在开发中,不仅需要客户参与开发,还应该包括代表客户的业务人员。
因此在开发人员、客户、业务人员等相关干系人之间建立频繁而且密切的交流与沟通,将是使项目保持高度灵活性的关键。
(5)为开发人员提供环境和支持,给予信任,以人为本地构建项目。
敏捷方法论是崇尚“以人为本”精神的,认为项目成功的最关键因素是人,其意义超过过程和工具。
建立一支优秀的团队,并在环境与精神上提供支持,给予信任,将是项目成功的关键。
这也是与传统的“过程”为主的管理思想的最大不同。
(6)团队内部,最有效的沟通方式莫过于面对面的交谈。
在重量级方法论中,人们尝试着通过编写规范、精美的文档进行交流。
而在敏捷方法论中则更加重视的是开发团队成员之间的面对面交谈,大家坐在一起,用一块白板,或是一张纸,一边绘制草图,一边交谈,这是最有效的沟通方式。
(7)工作的软件是度量进度的最首要标准。
要衡量工作进度,采用的基点不是文档的完成情况,不是已完成的代码行数,而是可以工作的软件完成了多少功能、实现了多少用例。
这是敏捷方法论的共同点,因为只有可工作的软件才是有价值的。
(8)提倡可持续的开发速度,责任人、开发者和用户应保持一个长期的、恒定的开发速度。
软件开发绝不是短跑,它更像一场挑战耐力的马拉松长跑。
因此,过早的冲刺、在前期过度的工作,将不利于项目按照持续的开发速度进行下去。
因此,敏捷方法论反对加班,因为这样的行为会使得团队的精力过早耗尽,过早地对项目失去兴趣和信心,从而得到事与愿违的结果。
(9)不断关注好的技能和设计会增加敏捷能力。
保持软件高质量、简洁、健壮,是实现快速软件开发的重要途径。
因此只有大家都致力于编写高质量的代码、不创造混乱,才能够提升敏捷能力。
(10)开发者本质是简单的——使未完成的工作最大化的艺术。
不管明天的需求,只采用符合今天需求的简单设计。
因为谁也不知道明天是怎么样的?
变化太快了,今天的设计考虑太多明天的需求,就有可能做了过多的无用功。
(11)自组织的团队才能够做出最好的架构设计和需求分析。
最优秀的团队不是被强权管理下的团队,而是形成了一个良好的协作,能够内部进行任务分解、协调的团队。
(12)团队应定期在如何更有效工作方面进行反省,然后对自己的行为做出改进。
不断地回顾、总结,并从中找到团队未能最有效工作的瓶颈点和问题点,并且通过细致的分析与讨论,找到其要点,并做出相应的改进是十分重要的。
(2).敏捷开发的支持者往往夸大该方法的优点,但是在实践中,敏捷方法的基本原则有时确实很难实施。
请用200字以内的文字说明敏捷方法中哪些原则在实践中难以实施。
(分数:
6)
正确答案:
(
(1)客户的参与度往往依赖于客户参与的意愿和客户自身的代表性。
(2)团队成员的性格可能不适合激烈的投入,可能无法做到与其他成员之间的良好沟通。
(3)对系统中的变更作出优先级排序可能是极端困难的。
(4)维护系统的简洁性往往需要额外的工作,但迫于移交时间表的压力,可能没有时间执行系统简化过程。
)解析:
本题问敏捷方法的原则中哪些原则在实践中难以实施,这与问题1是相关联的。
只要理解了这些基本原则,这个问题就好解答。
因为问的是在“实践中难以实施”,所以这个问题可以答得灵活些,只要说得有道理都可以得分。
(3).敏捷开发方法中最有名的是极限编程。
请说明极限编程中的结对编程(PairProgramming)的概念(分数:
6)
正确答案:
(
结对编程:
开发人员成对工作,检查彼此的工作并提供支持,圆满完成任务。
)
解析:
主要考查结对编程的概念,简单地说,结对编程就是2个人坐在一起写同一个程序。
结对编程可以大大降低沟通成本,提高工作质量。
(4).敏捷开发方法在具体实践过程中,往往需要开发环境或工具的支持,一般称为快速应用开发技术和可视化开发技术。
请用150字以内的文字说明快速应用开发技术所包含的工具有哪些,并简要说明可视化开发技术的基本概念和技术原理。
(分数:
7)
正确答案:
(
快速应用开发中所包括的工具有数据库编程语言、界面生成器、与办公应用的连接、报告生成器。
可视化开发是一种通过集成细粒度可复用构件来构造软件的快速应用开发方法,其主要思想是用图形工具和可重用部件来交互地编制程序。
可视化开发一般基于事件驱动的原理。
解析:
本题是关于快速开发工具和可视化开发的。
快速应用开发(RAD)目的是快速发布系统,RAD组合了5个方
面的技术,分别是进化原型、CASE工具(可进行正向工程和反向工程)、拥有能使用先进工具的专门人员(一个RAD开发小组)、交互式JAD、时间表。
例如,VB、Delphi、PB等都属于RAD工具。
可视化开发就是在可视开发工具(例如,VB、Delphi、PB等)提供的图形用户界面上,通过操作界面元素(例如,菜单、按钮等),由可视开发工具自动生成应用软件。
这类应用软件的工作方式是事件驱动的。
对每个事件,由系统产生相应的消息,再传递给相应的消息响应函数。
某集团公司在各省均设有分公司,现欲建立全国统一的销售管理信息系统,以便总公司及时掌握各分公司的销售情况。
公司成立专门的项目组进行该系统的研发工作,其中张工负责其中的数据库设计工作。
张工和需求分析小组紧密合作,在设计出数据流图和数据字典的基础上,给出了数据库关系模式和相应的索引设计。
同时考虑到未规范化关系模式可能引起的各类数据错误,对关系模式进行了全面的规范化处理,使所有关系模式均达到了3NF或BCNF。
在项目实施过程中,应用开发小组认为该设计方案未考虑应用功能的实际需求。
如果严格按照设计方案实施,会对应用系统中整体性能产生较大影响。
主要的原因在于进行数据查询时,会产生大量的多表连接操作,影响性能。
而设计方案中的索引设计,并不能完全满足数据查询的性能要求。
应用开发小组还认为,该设计方案未考虑到信息系统中核心销售数据处理的特点:
各分公司在使用该信息系统时只能操作自己分公司的销售数据,无权操作其它分公司的销售数据;只有总公司有权利操作所有销售数据,以便进行统计分析。
应用开发小组要求,在数据库设计方案中,必须针对实际应用功能的实现来考虑关系模式的规范化,必要时需要采用逆规范化或解除规范化的方法来保证性能要求。
(分数:
25)
(1).系统需要管理供应商和货物等信息,具体包括供应商姓名、地址以及货物名称、价格等,供应商可以提供0~n种货物,其公司地址也可能发生变化。
请以供应商关系模式
supplier(name,address,product,price)为例,解释不规范的关系模式存在哪些问题。
(分数:
6)
正确答案:
(
(1)数据冗余:
关系模式中多次重复记录了同一供应商的地址。
(2)插入异常:
如果还未确定一个供应商有哪些货物,只是想添加一个供应商的地址信息,则会产生产品与价格均为空的记录。
(3)修改异常:
当修改一个供应商的地址时,需要将多条记录同时更新,若未同时更新,则数据产生不一致。
(4)删除异常:
当删除一个供应商的货物时,其地址信息被一并删除。
)
解析:
(2).应用开发小组认为张工的规范化设计虽然解决了未规范化关系模式带来的问题,但实际实现功能时会造成系统性能的下降,请解释其原因。
(分数:
5)
正确答案:
(
数据库规范化的过程,实际是对数据表的不断拆分,以达到更高的规范程度。
这样处理,带来的问题是:
系统中大量查询不能通过单表完成,而需要将多表进行连接查询,所以表拆分得越多,查询性能也就越差。
)
解析:
(3).请解释逆规范化方法,说明其优缺点。
(分数:
6)
正确答案:
(
逆规范化方法优点:
提高统计、查询效率。
逆规范化方法缺点:
增加了数据冗余,浪费存储空间,增、删、改操作的效率降低,可能导致数据不一致,可能产生添加、修改、删除异常。
)
解析:
(4).针对该信息系统中核心销售数据处理的特点,如采用关系表水平分割的逆规范化方法,请给出具体的解决方案,并说明该方案存在的问题。
(分数:
8)
正确答案:
(
解决方案:
将各省的数据存放于各省分公司。
该方案主要问题在于总公司进行全国数据统计时,需要从各省服务器调取数据,效率较低。
)
解析:
本题是一个数据库设计方面的考题,考查的知识点包括规范化理论和反规范化理论(逆规范化)。
规范化的基本思想是逐步消除不合适的函数依赖,使数据库中的各个关系模型达到某种程度的分离。
规范化解决的主要是单个实体的质量问题,是对于问题域中原始数据展现的正规化处理。
规范化理论给出了判断关系模型优劣的理论标准,帮助预测模式可能出现的问题,是数据库逻辑设计的指南和工具,具体有:
(1)用数据依赖的概念分析和表示各数据项之间的关系。
(2)消除E-R图中的冗余联系。
若不进行规范化处理,可能产生的问题包括:
数据冗余、修改异常、插入异常、删除异常。
下面举例说明这些问题的具体表现形式。
设有一个关系模式R(SNAM,ECNAM,ETNAMETADDRE)SS,其属性分别表示学生姓名、选修的课程名、任课教师姓名和任课教师地址。
仔细分析一下,就会发现这个模式存在下列存储异常的问题:
(1)数据冗余:
如果某门课程有100个学生选修,那么在R的关系中就要出现100个元组,这门课程的任课教师姓名和地址也随之重复出现100次。
(2)修改异常:
由于上述冗余问题,当需要修改这个教师的地址时,就要修改100个元组中的地址值,否
则就会出现地址值不一致的现象。
(3)插入异常:
如果不知道听课学生名单,这个教师的任课情况和家庭地址就无法进入数据库;否则就要在学生姓名处插入空值。
(4)删除异常:
如果某门课程的任课教师要更改,那么原来任课教师的地址将随之丢失。
在本题中,也存在同样的问题:
(1)数据冗余:
关系模式中多次重复记录了同一供应商的地址。
(2)插入异常:
如果还未确定一个供应商有哪些货物,只是想添加一个供应商的地址信息,则会产生产品与价格均为空的记录。
(3)修改异常:
当修改一个供应商的地址时,需要将多条记录同时更新,若未同时更新,则数据产生不一致。
(4)删除异常:
当删除一个供应商的货物时,其地址信息被一并删除。
I/O次数减少,同
数据库中的数据规范化的优点是减少了数据冗余,节约了存储空间,相应逻辑和物理的时加快了增、删、改的速度,但是对完全规范的数据库查询,通常需要更多的连接操作,从而影响查询的速度。
因此,有时为了提高某些查询或应用的性能而破坏规范规则,即反规范化(非规范化处理)。
因此,题目中所说的“应用开发小组认为张工的规范化设计虽然解决了未规范化关系模式带来的问题,但实际实现功能时会造成系统性能的下降”,主要就是查询效率下降。
其原因是规范化过程中对数据表进行了不断的拆分,导致一个查询需要进行多表连接,效率自然就下降了。
具体来说,常见的反规范化技术包括:
(1)增加冗余列
增加冗余列是指在多个表中具有相同的列,它常用来在查询时避免连接操作。
例如:
以规范化设计的理念,学生成绩表中不需要字段“姓名”,因为“姓名”字段可以通过学号查询到,但在反规范化设计中,会将“姓名”字段加入到表中。
这样查询一个学生的成绩时,不需要与学生表进行连接操作,便可得到对应的“姓名”。
(2)增加派生列
增加派生列指增加的列可以通过表中其它数据计算生成。
它的作用是在查询时减少计算量,从而加快查询速度。
例如:
订单表中,有商品号、商品单价、采购数量,我们需要订单总价时,可以通过计算得到总价,所以规范化设计的理念是无须在订单表中设计“订单总价”字段。
但反规范化则不这样考虑,由于订单总价在每次查询都需要计算,这样会占用系统大量资源,所以在此表中增加派生列“订单总价”以提高查询效率。
(3)重新组表重新组表指如果许多用户需要查看两个表连接出来的结果数据,则把这两个表重新组成一个表来减少连接而提高性能。
(4)分割表
有时对表做分割可以提高性能。
表分割有两种方式:
水平分割:
根据一列或多列数据的值把数据行放到两个独立的表中。
水平分割通常在下面的情况下使用:
情况1:
表很大,分割后可以降低在查询时需要读的数据和索引的页数,同时也降低了索引的层数,提高查询速度。
情况2:
表中的数据本来就有独立性,例如表中分别记录各个地区的数据或不同时期的数据,特别是有些数据常用,而另外一些数据不常用。
情况3:
需要把数据存放到多个介质上。
垂直分割:
把主码和一些列放到一个表,然后把主码和另外的列放到另一个表中。
如果一个表中某些列常用,而另外一些列不常用,则可以采用垂直分割,另外垂直分割可以使得数据行变小,一个数据页就能存放更多的数据,在查询时就会减少I/O次数。
其缺点是需要管理冗余列,查询所有数据需要连接操作。
问题4要求提出水平分割方案,实际上就是把数据表按记录进行拆分,并存储于不同的位置。
由于本题中数据的使用存在这样的特性——“各分公司在使用该信息系统时只能操作自己分公司的销售数据,无权操作其它分公司的销售数据;只有总公司有权利操作所有销售数据,以便进行统计分析”,所以按省,每个分公司存储自己的数据,这样能达到高效查询的目的,只是这样会让总公司的统计分析变得十分的低效。
某公司新近签订了一份控制系统软件的研制合同。
合同技术要求如下:
(1)本控制系统的软件运行平台拟采用嵌入式实时操作系统,控制系统的工作周期为10ms,要求控制软
件能够精确地按事先预定的时间顺序完成数据的采集、处理和输出。
(2)为了提高整个系统的可靠性,控制系统采用容错处理,即用两个相对独立的计算机承担相同的工作,通过交叉对比,实现控制的双余度管理;当任何一台计算机出现故障时,系统可以进行单余度控制。
系统结构如图8-2所示。
(3)在10ms工作周期内的时间分配如表8-3所致。
表8-310ms工作周期内的时间分配
功能
时间要求(ms)
余度数据采集
1.5
输入交叉对比
1
数据处理
4
比较监控
1
输出交叉对比
1.5
其他
1
公司总工程师将本项任务交付给项目主管李工程师实施,要求李工按双方合同要求完成本项目的策划、需求分析和方案设计工作,重点强调系统的可靠性要求,并特别提示:
目前比较流行的嵌入式操作系统普遍采用可抢占式优先级调度策略,不能满足用户关于“能够精确地按事先预定的时间顺序完成数据的采集、处理和输出”的要求。
(分数:
25)
(1).李工接到任务后,认为本项目比较简单,很快就安排3名技术人员分别负责数据采集/输出模块、数据处理模块和比较监控模块的编写。
总工程师听到汇报后,认为李工的方案和安排不妥,理由是李工忽视了系统的可靠性要求,对系统需求的理解不够深入为实现系统关于可靠性方面的需求:
1)你认为在组织结构、人员分工、设计开发等方面应做出哪些安排和规定?
2)请写出关于余度表决算法的考虑。
(分数:
7)
正确答案:
(
(1)成立两个独立的软件开发小组。
两个小组合作编写统一的系统需求稳当和软件功能说明书。
两个小组分别进行软件开发,最好使用不同的编程设计语言(如C语言、C++语言和ADA语言)。
(2)余度表决算法一般采用主从式。
以下假设设计计算机1为主机,计算机2为从机。
对输入数据进行交叉对比,如果一致,则用计算机1的数据为数据处理;如果不一致,有历史数据时,计算机1用历史数据为数据处理;无历史数据时,若计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 系统分析 考试 设计 案例 模拟 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)