系统分析师案例附答案.docx
《系统分析师案例附答案.docx》由会员分享,可在线阅读,更多相关《系统分析师案例附答案.docx(16页珍藏版)》请在冰豆网上搜索。
系统分析师案例附答案
第一题
某软件公司拟为物流企业开发一套库存管理系统,该系统的部分需求陈述如下:
(1)库存管理系统主要包括货物入库管理、货物出库管理、仓库管理、统计报表和系统管理等功能。
(2)库存管理系统的用户包括仓库管理员、仓库经理和系统管理员,用户必须在注册后才能使用系统功能;用户可以选择使用邮件注册或电话注册。
(3)仓库管理员在进行出入库操作前必须先登录;仓库经理可以通过系统查看统计报表,如果前一个月的报表未生成,则系统自动生成统计报表,否则直接显示。
(4)系统管理员可以在系统中设置仓库温度范围,当仓库内温度超过最高值或者低于最低值时,系统自动调用温控管理操作,连接温度调节系统进行制冷或加热。
(5)仓库管理功能要求每个月1日零点对前一个月货物入库和出库记录进行数据汇总操作。
项目组决定构造用例模型以描述系统需求。
问题:
1.1 用例建模的首要任务是识别系统中的参与者。
请根据题目中所描述的需求,识别出系统中有哪些参与者?
问题:
1.2 用例建模的主要工作是书写用例规约。
用例规约通常包括哪几部分内容?
问题:
1.3 建立了用例模型后,可以利用用例之间的关系调整用例模型,用例之间的关系包括哪几种?
对于每种关系,请根据题目中所描述的需求分别给出一组用例。
软考在线[]答案解析:
(1)仓库管理员;
(2)仓库经理;(3)系统管理员;(4)时间;(5)温度;(6)温度调节系统。
本题考查考生对于需求建模的掌握情况。
用例方法是一种需求建模技术,在获取系统需求并记录后,从用户的要求和期望中进行整理与提炼,从而建立用例模型。
在面向对象分析方法中,构建用例模型一般需要经历四个阶段,分别是识别参与者、合并需求获得用例、细化用例描述和调整用例模型。
根据题目所述需求,绘制系统用例图如下图所示。
参与者可以表示与系统接口的任何事物和任何人,这可以包括人(不仅仅是最终用户)、外部系统和其他组织。
根据需求陈述
(2)可知系统的用户包括仓库管理员、仓库经理和系统管理员;根据需求陈述(4)和系统有交互关系的外部系统是温度调节系统,温度通过温度监控接口与系统关联;根据需求陈述(5)所描述时态事件,时间会触发系统的行为。
所以参与者包括了仓库管理员、仓库经理、系统管理员、时间、温度、温度调节系统。
软考在线[]答案解析:
(1)用例名称;
(2)简要说明;(3)事件流;(4)非功能需求;(5)前置条件和后置条件;(6)扩展点;(7)优先级。
用例模型是由用例图和每一个用例的详细描述——用例规约所组成的。
RUP中提供了用例规约的模板,每一个用例的用例规约都应该包含以下内容:
用例名称,简要说明,事件流,非功能需求,前置条件和后置条件,扩展点,优先级。
软考在线[]答案解析:
用例之间的关系有三种,分别是包含关系、扩展关系和泛化关系。
(1)包含关系:
用例“入库管理”和用例“用户登录”之间的关系;用例“出库管理”与用例“用户登录”之间的关系;
(2)扩展关系:
用例“査看统计报表”和用例“生成统计报表”之间的关系;
(3)泛化关系:
用例“用户注册”和用例“电话注册”之间的关系;用例“邮件注册”和用例“电话注册”之间的关系。
用例之间的关系有包含关系、扩展关系和泛化关系。
(1)包含关系:
一个用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分,这称作包含关系。
用例“入库管理”和用例“用户登录”之间的关系、用例“出库管理”与用例“用户登录”之间的关系就属于包含关系;
(2)扩展关系:
一个用例(扩展用例)可以被定义为基础用例的增量扩展,这称为扩展关系。
用例“查看统计报表”和用例“生成统计报表”之间是扩展关系;(3)泛化关系:
一个用例被特别列举为一个或多个用例,这被称作用例泛化。
用例“用户注册”和用例“电话注册”之间、用例“邮件注册”和用例“电话注册”之间属于泛化关系。
第二题
某高校计算机学院实验中心有5个机房,200个机位,主要承担学生计算机软件相关课程的上机实践任务。
实验中心每年工作时间约为200天,每天平均工作时间为8小时。
2013年初,实验中心决定对机房进行升级改造,其中UPS电源等设备可利旧,不需要重新购置,改造后每个机位机器的基本配置要求见表2-1。
实验中心现公开征集硬件改造方案。
一个月后,实验中心的主管从众多的改造方案中选择了A公司和B公司提出的方案进行最终评审。
A公司主张采用PC机更新换代的方式进行改造,其主要的设备和报价如表2-2所示。
B公司主张以桌面云的方式对实验中心进行全面改造,其主要的设备和报价情况如表2-3所示。
实验中心组织了多名专家召开了论证会,会上专家对这两种方案进行了评审,最终采纳了B公司的改造方案。
问题:
2.1 桌面云方案的核心是虚拟化技术,请用200字以内的文字说明什么是虚拟化技术,并从应用角度列举3种虚拟化技术。
问题:
2.2 请以A公司方案中的机器性能为基准,从应用模式、投入成本、运维成本、安全性、能源消耗等5个方面对两种方案进行详细比较(其中投入成本与能源消耗要求量化比较),说明为什么专家采纳了B公司的改造方案。
软考在线[]答案解析:
虚拟化技术是指将计算机物理资源如服务器、网络、内存及存储等予以抽象、转换后呈现出来,虚拟化后的资源不受现有物理资源的架设方式、地域及物理组态所限制,用户能够十分灵活地使用这些资源,常见的虚拟化资源主要包括计算和存储能力。
从应用角度看,常见的虚拟化技术包括服务器虚拟化、展现层虚拟化、桌面虚拟化、应用程序虚拟化、网络虚拟化和存储虚拟化等。
本题主要考查考生对云计算项目实施过程中的分析与规划问题的理解与掌握。
本问题主要考查云计算中的核心技术:
虚拟化技术的理解与掌握情况。
虚拟化技术是指将计算机物理资源如服务器、网络、内存及存储等予以抽象、转换后呈现出来,虚拟化后的资源不受现有物理资源的架设方式、地域及物理组态所限制,用户能够十分灵活地使用这些资源,常见的虚拟化资源主要包括计算和存储能力。
从应用角度看,常见的虚拟化技术包括服务器虚拟化、展现层虚拟化、桌面虚拟化、应用程序虚拟化、网络虚拟化和存储虚拟化等。
软考在线[]答案解析:
从应用模式角度分析,该计算中心的主要业务是为学生提供课程上机环境,因此对机器性能和网络带宽等指标要求不高,两种方案均满足要求。
从投入成本角度分析,A公司的方案中,网络成本为10*1000=1(万元),机器成本为(3100+900)*200=80(万元),总体成本为81万元;B公司方案的网络成本为11*1000=1.1(万元),机器成本中服务器成本14*30000=42(万元),瘦客户机和显示器成本(0.05+0.09)*200=28(万元),服务器电源、机架成本为1*2=2(万元),总体成本为73.1万元。
总体来说,B公司的方案比A公司的方案节约投资81-73.1=7.9(万元)。
从运维成本角度分析,A公司的方案要求系统管理员对每台PC机均进行安装、配置与维护,而采用B公司的方案,则只需要集中维护一套系统,能够大大降低系统的维护成本。
从安全性角度分析,B公司的方案能够使得学生使用的操作系统托管在高安全性的Unix/Linux环境中,与A方案相比能够有效抵御病毒和木马侵袭。
从能源消耗角度分析,按照实验中心每天有效工作时间8小时,1年工作200天计算,A公司的方案中,单台机器功率为230+25=255(W),单台交换机功率为30W,—年总体能源消耗为(255*200+30*10)*200*8=82080(kWh);B公司的方案中,单台服务器的功率为800W,单台客户端的功率为48W,单台交换机的功率为30W,总体能源消耗为(800*14+48*200+30*11)*200*8=33808(kWh)。
可以看出B公司方案的能源消耗每年可节约82080-33808=48272(kWh)。
本问题主要考査考生对两种改造方案的具体认识,考生需要按照题干要求,从应用模式、投入成本、运维成本、安全性、能源消耗5个方面对两种方案进行详细比较,其中投入成本、能源消耗两个方面要求根据题干表格中给出的详细数据进行计算,给出两种方案的具体量化取值。
应用模式、运维成本和安全性3个方面需要针对传统模式和云计算模式的特点,分别定性阐述两种方案的优劣。
第三题
在传统的嵌入式系统中,由于应用背景的不同,架构风格存在着差异。
某公司长期从事各类嵌入式电子产品的研发工作,为了扩展业务,拟承担安全关键嵌入式产品的研制,为了统一本公司嵌入式产品的架构,以兼顾安全关键系统和非安全关键系统,公司领导层提出了采用国外近年新的跨领域嵌入式系统架构,新架构主要有6个特点:
(1)面向构件化
(2)开放式
(3)支持多种安全级别
(4)服务的层次化
(5)确定性核心
(6)内部组合的标准化
图3-1给出了跨领域嵌入式系统架构,图中CS表示领域无关的核心服务、OS表示领域无关的选择性服务、DSC表示领域相关的中心服务、DSO表示领域相关的选择性服务。
该架构通常称为“腰”型架构,将嵌入式系统分为核心服务层、域服务层和应用服务层三个层次,实现了应用间相对无关性设计,架构的腰部为与领域无关的核心服务。
问题:
3.1 请用200字以内文字说明图3-1“腰”型架构的特点。
问题:
3.2 针对图3-1的“腰”部的核心层,表3-1中给出了10种服务,请判断这些服务中哪些属于核心服务(CoreServices),哪些属于选择性服务(OptionalService),将结果填到表3-1中。
问题:
3.3 该公司遵从图3-1定义的嵌入式架构风格,梳理了现有产品序列,定义了公司产品中涉及的软件主要包括以下4类:
(1)基于分区化的嵌入式操作系统(如:
VxWorks653)
(2)存储管理部件(如:
文件系统)
(3)支持产品互联的多种网络协议部件(如:
TCP/IP、ppp、CAN、1394等)
(4)应用软件
请根据你所掌握的上述软件的相关知识,说明这些软件应归属图3-1中核心服务层、域服务层和应用服务层中的哪一层。
并举例说明上述软件提供的服务中哪些归属于架构的OS、CS、DSC和DSO服务,填写表3-2。
软考在线[]答案解析:
(1)此架构较好地支持了面向构件的设计方法。
(2)核心服务层提供的服务与域无关,它提供两类服务,核心服务和选择服务。
选择服务可用于多个域,必要的话,开发者可将选择服务从架构中摘除。
(3)域服务层是针对某个具体应用领域所提供的一组服务,这组服务建立在核心服务和已确定的选择服务之上,为应用提供服务。
(4)应用服务层是为每个具体应用所提供的服务(含中间件构件),它与具体应用紧密相关。
在给出“腰”型架构的基础上,本问题需要考生描述该架构的特征。
可以看出,该架构主要有四个特点:
(1)此架构较好地支持了面向构件的设计方法;该特点在题干描述中有相关提示。
该新架构主要有4个特点。
(2)核心服务层提供的服务与域无关,它提供两类服务,核心服务和选择服务。
选择服务可用于多个域,必要的话,开发者可将选择服务从架构中摘除;该特点可以从架构图中看出。
(3)域服务层是针对某个具体应用领域所提供的一组服务,这组服务建立在核心服务和己确定的选择服务之上,为应用提供服务;该特点在题干描述中有提示:
该架构通常称为“腰”型架构,将嵌入式系统分为核心服务层、域服务层和应用服务层三个层次,实现了应用间相对无关性设计,架构的腰部为与领域无关的核心服务。
(4)应用服务层是为每个具体应用所提供的服务(含中间件构件),它与具体应用紧密相关。
该特点在题干描述中有提示:
该架构通常称为“腰”型架构,将嵌入式系统分为核心服务层、域服务层和应用服务层三个层次,实现了应用间相对无关性设计,架构的腰部为与领域无关的核心服务。
软考在线[]答案解析:
本问题主要考查考生对“腰”架构的理解与掌握,并据此填写各种服务的归属情况。
可以看出,除基本通信、基本计时器和构件执行三个服务为核心服务外,其他服务均属于选择性服务。
该问题的答案在“腰”型架构的中部有相关英文提示,考生应该能够从题目中充分捕获相关信息,帮助题目回答。
软考在线[]答案解析:
本问题主要考查考生对“腰”型架构的应用情况,首先应该对题干中四类软件部件的功能进行理解,进而分类,最终完成表格填写。
第四题
某集团公司在各省均设有分公司,现欲建立全国统一的销售管理信息系统,以便总公司及时掌握各分公司的销售情况。
公司成立专门的项目组进行该系统的研发工作,其中张工负责其中的数据库设计工作。
张工和需求分析小组紧密合作,在设计出数据流图和数据字典的基础上,给出了数据库关系模式和相应的索引设计。
同时考虑到未规范化关系模式可能引起的各类数据错误,对关系模式进行了全面的规范化处理,使所有关系模式均达到了3NF或BCNF。
在项目实施过程中,应用开发小组认为该设计方案未考虑应用功能的实际需求。
如果严格按照设计方案实施,会对应用系统的整体性能产生较大影响。
主要的原因在于进行数据查询时,会产生大量的多表连接操作,影响性能。
而设计方案中的索引设计,并不能完全满足数据查询的性能要求。
应用开发小组还认为,该设计方案未考虑到信息系统中核心销售数据处理的特点:
各分公司在使用该信息系统时只能操作自己分公司的销售数据,无权操作其他分公司的销售数据:
只有总公司有权利操作所有销售数据,以便进行统计分析。
应用开发小组要求,在数据库设计方案中,必须针对实际应用功能的实现来考虑关系模式的规范化,必要时需要采用逆规范化或解除规范化的方法来保证性能要求。
问题:
4.1 系统需要管理供应商和货物等信息,具体包括供应商姓名、地址以及货物名称、价格等,供应商可以提供0〜n种货物,其公司地址也可能发生变化。
请以供应商关系模式supplier(name,address,product,price)为例,解释不规范的关系模式存在哪些问题。
问题:
4.2 应用开发小组认为张工的规范化设计虽然解决了未规范化关系模式带来的问题,但实际实现功能时会造成系统性能的下降。
请解释其原因。
问题:
4.3 请解释逆规范化方法,说明其优缺点。
问题:
4.4 针对该信息系统中核心销售数据处理的特点,如采用关系表水平分割的逆规范化方法,请给出具体的解决方案,并说明该方案存在的问题。
软考在线[]答案解析:
存在以下问题:
1.数据冗余。
如果供应商供应了多种货物,则他的地址被多次重复存储。
2.修改异常(数据不一致)。
由于数据冗余存储,当供应商地址改变时,必须修改所有相关记录,否则会造成地址数据不一致。
3.插入异常。
如果某供应商未提供货物,则无法记录该供应商的姓名和地址。
4.删除异常。
如果某供应商的所有货物均被删除,则丢失了该供应商的名称和地址。
本问题考查规范化的基本知识。
不满足关系模式规范化要求,会存在数据冗余、更新异常(修改异常)、插入异常、删除异常的问题。
为解决上述问题,人们定义了规范的关系模式或范式,分别为1NF、2NF、3NF、BCNF、4NF和5NF。
关系模式规范化达到BCNF后,这些问题彻底被解决。
实际应用中,一般只做到3NF或BCNF。
问题中给出的供应商关系模式存在以下问题:
(1)数据冗余。
如果供应商供应了多种货物,则他的地址被多次重复存储。
(2)修改异常(数据不一致)。
由于数据冗余存储,当供应商地址改变时,必须修改所有相关记录,否则会造成地址数据不一致。
(3)插入异常。
如果某供应商未提供货物,则无法记录该供应商的姓名和地址。
(4)删除异常。
如果某供应商的所有货物均被删除,则丢失了该供应商的名称和地址。
软考在线[]答案解析:
规范化程度是通过模式分解来实现的,因此规范化程度越高,关系模式表达的概念越单一,生成的关系模式就越多。
实际应用的数据请求往往非常复杂而多样化,经常会出现一个请求中涉及多个概念、多个关系模式的情况。
关系数据库通过多表连接查询来满足这种需求,而表与表之间的连接操作会带来较大的性能开销。
开发小组认为设计方案中没有考虑应用功能的实际要求,将所有关系模式均规范到3NF或BCNF,则在满足用户复杂、多样的数据操作请求时,必然会带来大量的多表连接操作,从而影响实际的数据查询性能。
数据量大时,性能下降非常迅速。
本问题考查关系模式分解的基本知识。
如果某关系模式存在存储异常等问题,可通过分解该关系模式来解决问题,将一个关系模式分解成几个子关系模式。
根据关系模式分解和规范化理论能够看出,数据库的规范化程度越高,数据库中的冗余信息就越少。
然而,规范化使得关系模式不断被拆解,这样关系模式之间的结构就变得越来越复杂,在使用数据时频繁执行连接操作,而连接操作是最耗时间的,是数据库性能的制约因素。
开发小组认为设计方案中没有考虑应用功能的实际要求,将所有关系模式均规范到3NF或BCNF,则在满足用户复杂、多样的数据操作请求时,必然会带来大量的多表连接操作,从而影响实际的数据查询性能。
数据量大时,性能下降非常迅速。
软考在线[]答案解析:
本问题考查关系模式的逆规范化或解除规范化的基本知识。
逆规范化或解除规范化方法,指的是将一个规范化的关系模式变成非规范化的关系模式,或者降低某个关系模式的范式标准(例如从3NF降低为1NF)的过程。
从规范化和逆规范化的定义可以看出,严格的规范化必然导致众多的关系模式,使得关系模式结构复杂,引发频繁的连接操作,导致性能的下降。
从这点上可以看出逆规范化操作的优点是改善和提高系统的性能。
但反过来说,逆规范化导致了关系模式规范化程度的下降,从而会带来数据冗余、修改异常、插入异常和删除异常等问题,因此必须根据应用自身的特点,采用应用程序、触发器等额外手段来解决该问题。
逆规范化或解除规范化方法,指的是将一个规范化的关系模式变成非规范化的关系模式,或者降低某个关系模式的范式标准(例如从3NF降低为1NF)的过程。
优点是避免进行表之间的连接操作,可以提高数据操作的性能。
缺点是随着范式标准的降低,必然会带来数据冗余、更新异常、插入异常和删除异常等问题,因此必须根据应用自身的特点,采用应用程序、触发器等额外手段来解决该问题。
软考在线[]答案解析:
具体方案:
根据分公司的不同,每个不同的分公司拥有单独的数据表。
这样每个分公司在处理自己的销售数据时,和其他分公司互不干扰,性能得到提高。
问题有两点:
(1)当全国总公司获取全国总的销售数据时,需要对分公司的数据进行数据union(并)操作,会带来额外的开销。
(2)信息系统中执行分公司应用功能时,需要动态根据分公司来选择不同的数据库表,增加了应用程序的复杂度。
本问题考查逆规范化的实际应用。
在进行数据库设计时,需要考虑应用的实际需求,合理增加冗余属性,以提升系统性能。
常用的措施有:
(1)将常用的计算属性(例如,总计和最大值等)存储到数据库实体中;
(2)重新定义实体,以减少外部属性数据或行数据的开销;
(3)将关系进行水平或垂直分割,以提升并行访问效率。
(4)除了上述逻辑结构的设计外,物理设计对系统性能也起到了非常关键的作用。
(5)根据本题的实际问题,可采用关系水平分割进行设计。
第五题
某企业两年前自主研发的消防集中控制软件系统在市场上取得了较好的业绩,目前已成功应用到国内外众多企业用户的消防管理控制系统中。
该软件系统通过不同型号消防控制器连接各种消防器件,实现集中式消防告警信息显示与控制。
该软件系统的系统维护主管组织,对近期收集到的该软件系统的如下维护申请进行了讨论:
(1)将系统目前的专用报表功能改成通用报表生成功能,以适应未来用户可能提出的报表格式变化需求;
(2)在界面语言中增加德文支持,以满足新增的两个德国企业用户的使用要求;
(3)修正系统在与控制器通信时由于硬件网络故障导致的与控制器之间的连接失效,而控制器后续无法重新连接的问题;
(4)完成因某已支持型号消防控制器通信协议改变而导致的相应软件修改;
(5)增加与某新型号消防控制器的互连通信功能,以支持在后续推广过程中与该型号消防控制器进行互连;
(6)修正用户报告的由于系统从Win7平台迁移到最新发布的Win8平台而导致的部分显示功能失效的问题;
(7)修正用户报告的系统自动切换消防平面图形时部分器件位置显示错误的问题;
(8)改进系统历史消防告警记录的检索算法,以提高系统在处理大量消防报警记录时的效率;
(9)将系统目前针对某一特定数据库管理系统的数据库访问方式改成基于数据源的通用数据库访问方式,以适应用户可能提出的使用其他数据库管理系统的需求。
问题:
5.1 软件维护的内容通常分为正确性维护、适应性维护、完善性维护以及预防性维护四类,请用300字以内文字说明这4类软件维护内容的特点与区别。
问题:
5.2 请根据不同类型软件维护的特点,将上述
(1)〜(9)的维护申请填入表5-1相应的类别中。
问题:
5.3
对于软件维护申请的处理,首先需要确定维护工作的类型,不同类型的维护工作,其处理流程往往不同,图5-1是区分不同维护类型的典型处理流程,请将表5-1中代表维护类型的序号
(1)〜(4)填入图5-1的(a)〜(d)。
问题:
5.4 在讨论第(4)项维护工作的方案时,项目组发现与相应的消防控制器通信的子模块重用了企业之前淘汰的某款软件中实现相应功能的源代码,而现有技术人员没有参加过该代码的开发工作,并且重用的这部分代码开发不规范,其数据和代码结构设计都很差,相应的文档极不完整,维护记录也很简略。
针对上述情况,项目组一致认为在原有代码基础上进行修改维护难度很大,因此决定采用软件工程的方法对该子模块进行重新设计、编码和测试,请从可行性和该模块后续可维护性两个方面简要分析采取这种方案的原因。
软考在线[]答案解析:
正确性维护:
指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
适应性维护:
指使应用软件适应信息技术变化和管理需求变化而进行的修改。
完善性维护:
指为扩充功能和改善性能而进行的修改,主要是指对己有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。
预防性维护:
指为了改进应用软件的可靠性和可维护性,为了适应未来的软硬件环境的变化,应主动增加预防性的新的功能,以使应用系统适应各类变化而不被淘汰。
本题考查的是软件维护的基本概念及软件维护实施的基本方法。
本问题考查的是软件维护内容的基本分类及特点,软件维护的内容不只是修正错误,按照维护性质的不同,可以将软件维护的内容分为正确性维护(或改正性维护)、适应性维护、完善性维护和预防性维护。
考生在解答时应注意区分正确性维护之外其他三种维护内容的差异,其中适应性维护指应用软件适应信息技术变化和管理需求变化而进行的修改,通常不涉及软件功能的扩充;而完善性维护指为扩充功能和改善性能而进行的修改,通常是指软件在投入使用并正常运行的过程中,针对用户提出的增加新功能、修改现有功能等要求进行的维护;预防性维护则指改进软件未来的可靠性或可维护性,或者为了给未来的改进提供更好的基础而对软件进行的修改。
软考在