2017年系统架构设计师案例分析试题加答案(1)

合集下载

2017上半年系统分析师考试真题及答案-上午卷

2017上半年系统分析师考试真题及答案-上午卷

2017上半年系统分析师考试真题及答案-上午卷面向对象分析中,类与类之间的“IS-A”关系的是一种(1),类与类之间的“IS-PART-OF”关系是一种(2)。

(1)A.依赖关系 B. 关联关系 C. 泛化关系 D. 聚合关系(2)A.依赖关系 B. 关联关系 C. 泛化关系 D. 聚合关系【答案】C D【解析】本题考查的是面向对象的基本概念:is-a基于类继承或接口实现,is-a是表达这句话的一种方式:“这个东西是那个东西的一种”。

例如:野马是一种马。

has-a关系是基于用法(即引用)而不是继承。

换句话说,如果类a中的代码具有对类b实例的引用,则“类a has-a类b”。

例如:马有缰绳。

is part of是一种整体与部分的关系。

面向对象动态分析模型描述系统的动态行为,显示对象在系统运行期间不同时刻的动态交互。

其中,交互模型包括(3),其他行为模型还有(4)。

(3)A.顺序图和协作图 B.顺序图和状态图 C.协作图和活动图 D.状态图和活动图(4)A.顺序图和协作图 B.顺序图和状态图 C.协作图和活动图 D.状态图和活动图【答案】A D【解析】本题考查UML图。

多种UML图有其严格的分类,首先分为静态图和动态图。

其中动态图又有一个细化的分类:交互图,交互图包括顺序图(序列图)与通信图(协作图)。

关于设计模式,下列说法正确的是(5)。

(5)A.原型(Prototype)和模板方法 (Template Method)属于创建型模式B.组合(Composite)和代理 (Proxy)属于结构型模式C.桥接(Bridge)和状态(State)属于行为型模式D.外观(Facade)和中介(Mediator)属于创建型模式【答案】B【解析】本题考查设计模式的分类设计模式分类情况如下所示:三重 DES 加密使用 2 个密钥对明文进行 3 次加密,其密钥长度为(6)位。

(6)A.56 B.112 C.128 D.168【答案】B【解析】本题考查信息安全中的对称加密算法。

高级系统架构设计师下午2017下半年真题及答案解析(1)

高级系统架构设计师下午2017下半年真题及答案解析(1)

高级系统架构设计师下午2017下半年真题及答案解析(1)(1~2/共14题)案例分析题阅读以下关于软件架构评估的叙述,在答题纸上回答问题1和问题2.【说明】某单位为了建设健全的公路桥梁养护管理档案,拟开发一套公路桥梁在线管理系统。

在系统的需求分析与架构设计阶段,用户提出的需求、质量属性描述和架构特性如下:(a) 系统用户分为高级管理员、数据管理员和数据维护员等三类;(b) 系统应该具备完善的安全防护措施,能够对黑客的攻击行为进行检测与防御;(c) 正常负载情况下,系统必须在0.5 秒内对用户的查询请求进行响应;(d) 对查询请求处理时间的要求将影响系统的数据传输协议和处理过程的设计;(e) 系统的用户名不能为中文,要求必须以字母开头,长度不少于5个字符;(f) 更改系统加密的级别将对安全性和性能产生影响;(g) 网络失效后,系统需要在10 秒内发现错误并启用备用系统;(h) 查询过程中涉及到的桥梁与公路的实时状态视频传输必须保证画面具有1024*768的分辨率,40帧/秒的速率;(i) 在系统升级时,必须保证在10 人月内可添加一个新的消息处理中间件;(j) 系统主站点断电后,必须在3 秒内将请求重定向到备用站点;(k) 如果每秒钟用户查询请求的数量是10 个,处理单个请求的时间为30 毫秒,则系统应保证在1秒内完成用户的查询请求;(l) 对桥梁信息数据库的所有操作都必须进行完整记录;(m) 更改系统的Web 界面接口必须在4 人周内完成;(n) 如果"养护报告生成"业务逻辑的描述尚未达成共识,可能导致部分业务功能模块规则的矛盾,影响系统的可修改性(O) 系统必须提供远程调试接口,并支持系统的远程调试。

在对系统需求,质量属性描述和架构特性进行分析的基础上,系统的架构师给出了三个候选的架构设计方案,公司目前正在组织系统开发的相关人员对系统架构进行评估。

第1题在架构评估过程中,质量属性效用树(utility tree) 是对系统质量属性进行识别和优先级排序的重要工具。

2017年下半年系统架构设计师考试上午真题(完整版)

2017年下半年系统架构设计师考试上午真题(完整版)
11、分布式数据库两阶段提交协议中的两个阶段是指( )。 A、加锁阶段、解锁阶段 B、获取阶段、运行阶段 C、表决阶段、执行阶段 D、扩展阶段、收缩阶段
全职师资直播+录播双保障 1v1全程辅导
希赛网() 400-111-9811
12、下面可提供安全电子邮件服务的是( )。 A、RSA B、SSL C、SET D、S/MIME
28、软件系统工具的种类繁多,通常可以按照软件过程活动将软件工具分为 ()。 A、需求分析工具、设计工具和软件实现工具 B、软件开发工具、软件维护工具、软件管理工具和软件支持工具 C、需求分析工具、设计工具、编码与排错工具和测试工具 D、设计规范工具、编码工具和验证工具
29、UNIX 的源代码控制工具(Source Code control System,SCCS)是软件项 目开发中常用的( )。 A、源代码静态分析工具 B、文档分析工具 C、版本控制工具 D、再工程工具
全职师资直播+录播双保障 1v1全程辅导
希赛网() 400-111-9811
B、需求必须能够在系统及其运行环境的能力和约束条件内实现 C、每一项需求记录的功能都必须是用户的真正的需要 D、在良好的需求陈述中,所有需求都应被视为同等重要
24、一个好的变更控制过程,给项目风险承担者提供了正式的建议变更机制。 如下图所示的需求变更管理过程中,①②③处对应的内容应分别是( )。
希赛网() 400-111-9811
2017 年下半年系统架构设计师考试上午真题(专业 解析+参考答案)
1、某计算机系统采用 5 级流水线结构执行指令,设每条指令的执行由取指令 (2 Δt )、分析指令(1Δt )、取操作数(3Δt )、运算(1Δt )和写回结果(2Δ t ) 组成, 并分别用 5 个子部件完成,该流水线的最大吞吐率为( ) ; 若连续向流水线输入 10 条指令,则该流水线的加速比为( ) .

2017年下半年软件水平考试(高级)系统规划与管理师下午(案例分

2017年下半年软件水平考试(高级)系统规划与管理师下午(案例分

2017年下半年软件水平考试(高级)系统规划与管理师下午(案例分析)真题试卷(题后含答案及解析)题型有:1. 试题一 2. 试题二 3. 试题三试题一陈俊是某公司运维部门经理,由于最近反馈到运维部门的事件数量下降,陈经理自然认为客户的抱怨比前期少了。

周三陈经理按照惯例去和客户开碰头会。

“早啊,何总。

”陈经理一进会议室就与客户主管何总打了招呼。

“嗯”何总阴沉着脸应了一句。

陈经理一看觉得气氛不对,再一看周边几个区域管理员都没了以往的兴致勃勃的劲,老老实实坐在那里,便意识到出了问题,立刻打起十二分的精神。

“开会了!”何总看到陈经理进来之后立刻宣布会议开始,并说”今天的会议就一个主题:维护。

上周公司领导去基层检查工作发现计算机设备维护存在不少问题。

”,陈经理一听便知何总下面的话是说给自己听的。

“最近系统运行不稳定,我们要求提供服务的时候,系统却停止服务进行维修,不能提供充分的服务时间”。

何总说到这里有点激动,接着说“希望你们尽快解决这个问题,确保提供正常的系统服务。

特别是公司要在‘十一’黄金周进行促销活动,你们必须为黄金周业务的正常运营提供保障”。

陈经理返回办公室后仔细查阅了相关《运维服务合同》,但从该合同中无法得知“十一”期间是否一定要提供服务,并且“十一”期间维护部门已经安排了系统检修工作。

1.在该案例中系统维护要求与客户服务要求存在哪些问题。

正确答案:(1)近期系统运行状况不能得到充分反映,客户反映事件无法完全反馈到运行经理,缺乏必要运行支撑系统;(2)由于客户要求的服务时间变动比较大,服务水平管理无法充分了解客户需求,造成在客户需要服务的时期进行系统维护;(3)缺乏统一的可用性管理。

可用性管理要求系统运行过程中要有适当的维护期,在维护期中停止系统运行。

解析:从陈经理与何总的对话中可以看出计算机设备维护主要存在三个方面的问题。

第一,近期系统运行不稳定,客户要求提供服务的时候,反馈到运行经理,缺乏必要运行支撑系统;第二,客户要求服务时,系统却停止服务进行维修,服务水平管理无法充分了解客户需求,造成在客户需要服务的时期进行系统维护;第三,可用性管理要求系统运行过程中要有适当的维护期,而系统在维护期中停止系统运行,缺乏统一的可用性管理。

2017年系统架构设计师案例分析试题加答案

2017年系统架构设计师案例分析试题加答案

2017年系统架构设计师案例分析试题加答案(6)系统架构设计师考试属于软考中的一项高级资格考试,考试分综合知识、案例分析和论文3个科目。

下午的案例分析是考试的一大难点,希赛小编为大家整理了几道系统架构设计师案例分析试题,希望对大家有所帮助。

阅读以下关于结构化软件系统建模的叙述,在答题纸上回答问题。

希赛公司拟开发一个商业情报处理系统,使公司能够针对市场环境的变化及时调整发展战略,以获取最大的商业利益。

项目组经过讨论,决定采用结构化分析和设计方法。

在系统分析阶段,为了更好地对情报数据处理流程及其与外部角色的关联进行建模,项目组成员分别给出了自己的没计思路。

小张提出先构建系统流程图(SystemFlowcharts),以便更精确地反映系统的业务处理过程及数据的输入和输出。

小李提出先构建系统数据流图(DataFlowDiagrams),来展现系统的处理过程和定义业务功能边界,并给出了情报分类子系统的0层和1层数据流图,后者如图所示。

项目组经讨沦确定以数据流图作为本阶段的建模手段。

工程师老王详细说明了流程图和数据流图之间的区别与XXX,并指出了图的数据流图中存在的错误。

3、流程图和数据流图是软件系统分析设计中常用的两种手段,请用300字以内文字简要说明流程图与数据流图的含义及其区别,并说明项目组为何确定采用数据流图作为建模手段。

4、请分析指出图所示的数据流图中存在的错误及其原因,并针对图的1层数据流图绘制出情报分类子系统的0层数据流图。

5、高质量的数据流图是可读的、内部一致的并能够准确表示系统需求。

请用300字以内文字说明在设计高质量的数据流图时应考虑的三个原则。

参考答案3、数据流图作为一种图形化工具,用来说明业务处理过程、系统边界内所包含的功能和系统中的数据流。

流程图以图形化的方式展示应用程序从数据输入开始到获得输出为止的逻辑过程,描述处理过程的控制流。

两者的区别如下。

①数据流图中的处理过程可并行;流程图在某个时间点只能处于一个处理过程。

2017年下半年下午 系统架构设计师 试题及答案与解析-软考考试真题-案例分析及论文

2017年下半年下午 系统架构设计师 试题及答案与解析-软考考试真题-案例分析及论文

2017年下半年下午系统架构设计师考试试题-案例分析+论文-答案与解析试题一(共15分)【说明】阅读以下关于软件系统设计的叙述,在答题纸上回答问题 1 至问题 3。

【说明】某单位为了建设健全的公路桥梁养护管理档案,拟开发一套公路桥梁在线管理系统。

在系统的需求分析与架构设计阶段,用户提出的需求、质量属性描述和架构特性如下:(a)、系统用户分为高级管理员、数据管理员和数据维护员等三类;(b)、系统应该具备完善的安全防护措施,能够对黑客的攻击行为进行检测与防御;(c)、正常负载情况下,系统必须在 0.5 秒内对用户的查询请求进行响应;(d)、对查询请求处理时间的要求将影响系统的数据传输协议和处理过程的设计;(e)、系统的用户名不能为中文,要求必须以字母开头,长度不少于5个字符;(f)、更改系统加密的级别将对安全性和性能产生影响;(g)、网络失效后,系统需要在 10 秒内发现错误并启用备用系统;(h)、查询过程中涉及到的桥梁与公路的实时状态视频传输必须保证画面具有1024*768的分辨率, 40帧 /秒的速率;(i)、在系统升级时,必须保证在 10 人月内可添加一个新的消息处理中间件;(j)、系统主站点断电后,必须在 3 秒内将请求重定向到备用站点;(k)、如果每秒钟用户查询请求的数量是 10 个,处理单个请求的时间为 30 毫秒,则系统应保证在 1秒内完成用户的查询请求;(l)、对桥梁信息数据库的所有操作都必须进行完整记录;(m)、更改系统的 Web 界面接口必须在 4 人周内完成;(n)、如果"养护报告生成"业务逻辑的描述尚未达成共识,可能导致部分业务功能模块规则的矛盾,影响系统的可修改性(O)、系统必须提供远程调试接口,并支持系统的远程调试。

在对系统需求,质量属性描述和架构特性进行分析的基础上,系统的架构师给出了三个候选的架构设计方案,公司目前正在组织系统开发的相关人员对系统架构进行评估。

系统架构设计师上午试题答案详解

系统架构设计师上午试题答案详解

系统架构设计师上午试题答案详解试题一:以下关于系统架构的描述,错误的是()。

A. 系统架构是系统组件之间的结构关系和交互关系B. 系统架构设计关注系统的整体性能、可扩展性、可维护性等质量属性C. 系统架构设计的主要目标是实现系统的功能性需求D. 系统架构设计应遵循模块化、分层、分而治之等设计原则答案:C解析:系统架构设计的主要目标不仅仅是实现系统的功能性需求,还包括满足系统的非功能性需求,如性能、可扩展性、可维护性等质量属性。

因此,选项C错误。

试题二:以下哪种架构风格适用于高并发、高可用性的系统设计?()A. 面向对象B. 事件驱动C. 分层D. 微服务答案:D解析:微服务架构风格适用于高并发、高可用性的系统设计。

微服务将系统拆分为多个独立、可扩展的服务,每个服务实现特定的功能,易于扩展和维护。

而面向对象、事件驱动和分层架构风格在高并发、高可用性方面表现不如微服务。

试题三:以下关于设计模式的描述,错误的是()。

A. 设计模式是解决特定问题的通用解决方案B. 设计模式可以提高代码的可复用性C. 设计模式可以提高系统的可维护性D. 设计模式可以降低系统的性能答案:D解析:设计模式是为了解决特定问题而总结出的一套通用解决方案。

使用设计模式可以提高代码的可复用性、可维护性,并且通常情况下不会降低系统的性能。

因此,选项D错误。

试题四:以下关于软件架构设计过程的描述,错误的是()。

A. 软件架构设计过程包括需求分析、系统设计、实现、测试等阶段B. 软件架构设计过程中,需求分析是关键阶段C. 软件架构设计过程中,系统设计阶段应关注系统的整体结构D. 软件架构设计过程中,实现阶段应关注代码的优化和重构答案:A解析:软件架构设计过程主要包括需求分析、架构设计、实现、测试等阶段。

其中,需求分析是关键阶段,用于确定系统的功能和性能需求。

系统设计阶段关注系统的整体结构,实现阶段关注代码的优化和重构。

因此,选项A错误。

以下是对部分试题的详细解析:1. 试题一解析:系统架构是系统组件之间的结构关系和交互关系,包括组件的划分、组件之间的关系以及组件之间的通信机制。

高级 系统架构设计师 2017 年 下半年 下午试卷 论文

高级 系统架构设计师 2017 年 下半年 下午试卷 论文

全国计算机技术与软件专业技术资格(水平)考试高级 系统架构设计师 2017年 下半年 下午试卷 论文(考试时间 120 分钟)试题一 论软件架构风格软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。

体系结构风格定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。

词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。

体系结构风格反应了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。

问题:1.1请围绕"论软件架构风格'论题,依次从以下三个方面进行论述。

1.概要叙述你参与分析和设计的软件系统开发项目以及你所担任的主要工作。

2..软件系统开发中常用的软件架构风格有哪些?详细阐述每种风格的具体含义。

3.详细说明你所参与分析和设计的软件系统是采用什么软件架构风格的,并分析采用该架构风格设计的原因。

试题二 论软件系统建模方法及其应用软件系统建模(SoftwareSystemModeling)是软件开发中的重要环节,通过构建软件系统模型可以帮助系统开发人员理解系统、抽取业务过程和管理系统的复杂性,也可以方便各类人员之间的交流。

软件系统建模是在系统需求分析和系统实现之间架起的一座桥梁,系统开发人员按照软件系统模型开发出符合设计目标的软件系统,并基于该模型进行软件的维护和改进。

问题:2.1请围绕"论软件系统建模方法及其应用"论题,依次从以下三个方面进行论述。

1.概要叙述你参与的软件系统开发项目以及你所担任的主要工作。

2.说明软件系统开发中常用的建模方法有哪几类?阐述每种方法的特点及其适用 范围。

3. 详细说明你所参与的软件系统开发项目中,采用了哪些软件系统建模方法,具体实施效果如何。

试题三 论无服务器架构及其应用近年来,随着信息技术的迅猛发展和应用需求的快速更迭,传统的多层企业应用系统架构面临越来越多的挑战,已经难以适应这种变化。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2017年系统架构设计师案例分析试题加答案(1)
系统架构设计师考试属于软考中的一项高级资格考试,考试分综合知识、案例分析和论文3个科目。

下午的案例分析是考试的一大难点,希赛小编为大家整理了几道系统架构设计师案例分析试题,希望对大家有所帮助。

阅读以下关于软件系统架构选择的说明,回答问题。

希赛公司欲针对Linux操作系统开发一个KWIC(KevWordinContext)检索系统。

该系统接收用户输入的查洵关键字,依据字母顺序给出相关帮助文档并根据帮助文档内容进行循环滚动阅读。

在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其他方式展示帮助内容。

根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其他的方法实现这一功能。

在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道-过滤器的架构风格。

在架构评估会议上,大家从系统的算法变更、功能变更、数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。

1、在实际的软件项目开发中,采用恰当的架构风格是项目成功的保证。

请用200字以内的文字说明什么是软件架构风格,并对主程序-子程序和管道-过滤器这两种架构风格的特点进行描述。

2、请完成表中的空白部分(用+表示优、-表示差),对王工和李工提出的架构风格进行评价,并指出采用李工方案的原因。

3、规划图是李工给出的架构设计示意图,请将恰当的功能描述填入图中的(1)~(4)。

参考答案
1、软件架构风格是拙述特定软件系统组织方式的惯用模式。

组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和语义。

主程序-子程序架构风格中,所有的计算构件作为子程序协作工作,并由一个主程序顺序地调用这些子程序,构件通过共享存储区交换数据。

管道-过滤器架构风格中,每个构件都有一组输入和输出,构件接受数据输入,经过内部处理,然后产生数据输出。

这里的构件称为过滤器,构件之间的连接件称为数据流传输的管道。

[解析]
本题是一道架构设计方面的试题,考查的内容是常见架构风格的选用。

这就涉及不同架构风格的优势、劣势、应用场合的比较分析。

考查架构风格的基本概念与主程序-子程序、管道-过滤器的特点。

这一空属于送分题,难度较低。

①软件架构风格的概念软件架构设计的一个核心问题是能否使用重复的架构模式,即能否达到架构级的软件重用。

也就是说,能否在不同的软件系统中,使用同一架构。

基于这个目的,学者们开始研究和实践软件架构的风格和类型问题。

软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式(idiomaticparadigm)。

架构风格定义了一个系统“家族”,即一个架构定义、一个词汇表和一组约束。

词汇表中包含一些构件和连接件类型,而约束指出系统是如何将这些构件和连接件组合起来的。

架构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个构件有效地组织成一个完整的系统。

按这种方式理解,软件架构风格定义了用于描述系统的术语表和一组指导构建系统的规则。

对软件架构风格的研究和实践促进了对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。

架构风格的不变部分使不同的系统可以共享同一个实现代码。

只要系统是使用常用的、规范的方法来组织,就可使别的设计师很容易地理解系统的架构。

例如,如果某人把系统描述为客户/服务器模式,则不必给出设计细节,相关人员立刻就会明白系统是如何组织和工作的。

②主程序与子程序Garlan和Shaw对通用软件架构风格进行了分类,他们将软件架构分为数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。

题目中的主程序-子程序架构风格属于调用/返回风格,管道-过滤器架构风格属于数据流风格。

主程序-子程序是单线程控制,把问题划分为若干个处理步骤,构件即为主程序和子程序,子程序通常可合成为模块。

过程调用作为交互机制,即充当连接件的角色。

调用关系具有层次性,其语义逻辑表现为主程序的正确性取决于它调用的子程序的正确性。

③管道-过滤器在管道-过滤器风格的软件架构中,每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。

这个过程通常通过对输入流的变换及增量计算来完成,所以在输入被完全消费之前,输出便产生了。

因此,这里的构件被称为过滤器,这种风格的连接件就像是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。

此风格特别重要的过滤器必须是独立的实体,它不能与其他的过滤器共享数据,而且一个过滤器不知道它上游和下游的标识。

一个管道/过滤器网络输出的正确性并不依赖于过滤器进行增量计算过程的顺序。

规划图是管道与过滤器风格的示意图。

一个典型的管道-过滤器架构的例子是以UNIXShell编写的程序。

UNIX既提供一种符号,以连接各组成部分(UNIX的进程),又提供某种进程运行时机制以实现管道。

另一个著名的例子是传统的编译器。

传统的编译器一直被认为是一种管道系统,在该系统中,一个阶段(包括词法分析、语法分析、语义分析和代码生成)的输出是另一个阶段
的输入。

管道-过滤器风格的软件架构具有许多很好的特点。

·使得软构件具有良好的隐蔽性和高内聚、低耦合的特点。

·允许设计师将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成。

·支持软件重用。

只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来。

·系统维护和增强系统性能简单。

新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉。

·允许对一些如吞吐量、死锁等属性的分析。

·支持并行执行。

每个过滤器作为一个单独的任务完成,因此可与其他任务并行执行。

但是,这样的系统也存在着若干不利因素。

·通常导致进程成为批处理的结构。

这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计师必须将每个过滤器看成一个完整的从输入到输出的转换。

·不适合处理交互的应用。

当需要增量地显示改变时,这个问题尤为严重。

·因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。

2、
根据题干描述:“用户后续还有可能采用其他方式展示帮助内容”,因此KWIC系统对功能变更要求较高。

根据题干描述:“……,后续还将采用其他的方法实现这一功能”,因此KWIC系统对实现某一个功能的算法变更要求较高。

KWIC是一个支持用户交互的窗口界面程序,因此对性能要求并不高。

KWIC系统显示的帮助内容为文本,数据的表示基本不变,因此对数据表示变更要求不高。

综合上述分析,可以看出应该采用李工提出的管道-过滤器架构风格。

子程序和管道-过滤器优缺点对比。

这两种风格的优缺点包括多方面的很多内容,但要应对该题,并不需要我们面面俱到地把每一个细节记清楚。

只要了解两者的核心思想即可。

本问题的核心是对两种架构风格在算法变更、功能变更、数据表示变更和性能等方面的特点进行比较。

其中共享数据的主程序-子程序在算法变更方面灵活性较差,算法变更时一般需要重新编译整个系统;在功能变更方面也比较差;在数据表示方面,当需要变更时,也意味着程序传递参数的变化以及整个程序的调
整,表现比较差;在性能方面,由于整个程序处在一个紧耦合的状态,因此性能较高。

管道-过滤器架构风格在算法变更方面实现比较简单,只需要修改过滤器的实现即可;在功能变更方面也比较简单;在数据表示方面,需要同时改变数据格式和过滤器的结构,相对比较复杂;在性能方面,由于整个系统是松耦合连接在一起的,因此性能不太高。

根据题干描述:“用户后续还有可能采用其他方式展示帮助内容”,因此KWIC系统对功能变更要求较高;根据题干描述:“…,后续还将采用其他的方法实现这一功能”,因此KWIC系统对实现某一个功能的算法变更要求较高;KWIC是一个支持用户交互的窗口界面程序,因此对性能要求并不高;KWIC系统的显示帮助内容为文本,数据的表示基本不变,因此对数据表示变更要求不高。

针对这些考虑,可以看出应该采用管道-过滤器的架构风格。

3、完整的架构示意图如图所示。

是补充架构设计示意图。

其实这个图要表现出来的,无非就是利用管道-过滤器架构,需要处理的信息的操作有哪些,按什么顺序排列。

根据题干中的关键描述“……接收用户输入的查询关键字,依据
字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读……”和“××公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动……”,可以看出整个系统的流程是:输入→文档检索→查询结果按字母排序→剪切行首单词→单词插入行尾→输出。

相关文档
最新文档