问答题论企业应用系统的数据持久层架构设计
问答题希赛软件公司承担了某项国家重点项目的研制工作,任务重点是参考国外汽车电子发展趋势,开发某汽车公司的企业汽车电子基础软件的架构,逐步实现汽车企业未来技术发展规划。该公司接收此项任务后,调动全体技术人员深入收集国外相关技术资料,经过多方调研和分析,公司提出遵照国际组织最新推出的AUTOSAR规范,按统筹规划、分步骤实施的原则,实现汽车公司的基础软件架构设计。图12-11给出了AUTOSAR规范所定义的工作包,图中灰色部分代表本项目工作所包含的内容,即软件架构和基础软件。
问答题论基于REST服务的Web应用系统设计
REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。基于REST服务(RESTful Service)的Web应用系统设计任务主要包括:识别并设计REST风格的服务,采用面向服务的思想进行REST服务集成。采用这种方法设计的Web应用系统能够结合REST风格和面向服务思想的优点,近年来受到了广泛的关注。
请围绕“基于REST服务的Web应用系统设计”论题,依次从以下3个方面进行论述:
①概要叙述你参与实施的Web应用系统开发项目及你所承担的主要工作。
②简要叙述与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。
③阐述你在设计基于REST服务的Web应用系统时遇到了哪些问题,如何解决。
问答题请详细阅读有关嵌入式软件架构设计方面的描述,回答问题。在嵌入式系统中,软件采用开放式架构已成为新的发展趋势。软件架构设计的优劣将直接影响软件的重用和移植能力。某软件公司主要从事宇航领域的嵌入式软件研发工作。经过二十多年的发展,其软件产品已被广泛应用于各种航天飞行器中。该公司积累了众多成熟软件,但由于当初没有充分考虑软件的架构,原有软件无法被再利用,为适应嵌入式软件技术发展需要,该公司决策层决定成立宇航嵌入式软件开放式架构研究小组,为公司完成开放式架构的定义与设计,确保公司软件资源能得到充分利用。研究小组查阅了大量的国外资料和标准,最终将研究重点集中在了SAEAS4893《通用开放式架构(GOA)框架》标准,图中给出了GOA定义的架构图。
问答题论决策支持系统的开发与应用
问答题希赛公司欲开发一个车辆定速巡航控制系统,以确保车辆在不断变化的地形中以固定的速度行驶。如图所示给出了该系统的简化示意图。下表描述了各种系统输入的含义。{{B}}定速巡航控制系统输入说明{{/B}}输入名称作用系统开关开启/关闭巡航控制系统引擎开关开启/关闭洗车引擎(引擎开启时,巡航控制系统处于就绪状态)车轮脉冲车轮每转一次,相应地发出一次脉冲刹车当刹车被踩下时,定速巡航控制系统会临时恢复到人工控制增/减速增加或减慢当前车速(仅在定速巡航控制系统处于开启的状态下可用)恢复速度恢复原来保持的车速(仅在定速巡航控制系统处于开启的状态下可用)时钟每毫秒定时脉冲公司的领域专家对需求进行深入分析后,将系统需求认定为:任何时刻,只要定速巡航控制系统处于工作状态,就要有确定的期望速度,并通过调整引擎油门的设定值来维持期望速度。在对车辆定速巡航控制系统的架构进行设计时,公司的架构师王工提出采用面向对象的架构风格,而李工则主张采用控制环路的架构风格。在架构评估会议上,专家对这两种方案进行综合评价,最终采用了面向对象和控制环路相结合的混合架构风格。
问答题阅读以下关于系统设计与开发工具集成的说明,回答问题。
TeleDev是一个大型的电信软件开发公司,公司内部采用多种商业/开源的工具进行软件系统设计与开发工作。为了提高系统开发效率,公司管理层决定开发一个分布式的系统设计与开发工具集成框架,将现有的系统设计与开发工具有效集成在一起。集成框架开发小组经过广泛调研,得到了如下核心需求。
(1)目前使用的系统设计与开发工具的运行平台和开发语言差异较大,集成框架应无缝集成各个工具的功能。
(2)目前使用的系统设计与开发工具所支持的通信协议和数据格式各不相同,集成框架应实现工具之间的灵活通信和数据格式转换。
(3)集成框架需要根据实际的开发流程灵活、动态地定义系统开发工具之间的协作关系。
(4)集成框架应能集成一些常用的第三方实用工具,如即时通信,邮件系统等。
集成框架开发小组经过分析与讨论,最终决定采用企业服务总线(ESB)作为集成框架的基础架构。
问答题希赛公司最近签订了一份控制系统软件的研制合同。合同技术要求如下:①本控制系统的软件运行平台拟采用嵌入式实时操作系统,控制系统的工作周期为10ms,要求控制软件能够精确地按事先预定的时间顺序完成数据的采集、处理和输出。②为了提高整个系统的可靠性,控制系统采用容错处理,即用两个相对独立的计算机承担相同的工作,通过交叉对比,实现控制的双余度管理;当任何一台计算机出现故障时,系统可以进行单余度控制。系统结构如图12-21所示。③在10ms工作周期内的时间分配如表12—15所示。表12—1510ms工作周期内的时间分配功能时间要求(mS)余度数据采集1.5输入交叉对比1数据处理4比较监控1输出交叉对比1.5其他1公司总工程师将本项任务交付给项目主管李工程师实施,要求李工按双方合同要求完成本项目的策划、需求分析和方案设计工作,重点强调系统的可靠性要求,并特别提示:目前比较流行的嵌入式操作系统普遍采用可抢占式优先级调度策略,不能满足用户关于“能够精确地按事先预定的时间顺序完成数据的采集、处理和输出”的要求。
问答题阅读以下关于结构化软件系统建模的叙述,在答题纸上回答问题。希赛公司拟开发一个商业情报处理系统,使公司能够针对市场环境的变化及时调整发展战略,以获取最大的商业利益。项目组经过讨论,决定采用结构化分析和设计方法。在系统分析阶段,为了更好地对情报数据处理流程及其与外部角色的关联进行建模,项目组成员分别给出了自己的没计思路。(1)小张提出先构建系统流程图(SystemFlowcharts),以便更精确地反映系统的业务处理过程及数据的输入和输出。(2)小李提出先构建系统数据流图(DataFlowDiagrams),来展现系统的处理过程和定义业务功能边界,并给出了情报分类子系统的0层和1层数据流图,后者如图所示。项目组经讨沦确定以数据流图作为本阶段的建模手段。工程师老王详细说明了流程图和数据流图之间的区别与联系,并指出了图的数据流图中存在的错误。
问答题论企业集成平台的架构设计
问答题阅读以下关于软件系统架构选择的说明,回答问题。
希赛公司欲针对Linux操作系统开发一个KWIC(Kev Word in
Context)检索系统。该系统接收用户输入的查洵关键字,依据字母顺序给出相关帮助文档并根据帮助文档内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其他方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其他的方法实现这一功能。
在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道-过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、功能变更、数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。
问答题阅读以下关于嵌入式实时系统设计的描述,回答问题1至问题3。[说明]嵌入式系统是当前航空、航天、船舶及工业、医疗等领域的核心技术,嵌入式系统可包括实时系统与非实时系统两种。某宇航公司长期从事航空航天飞行器电子设备的研制工作,随着业务的扩大,需要大量大学毕业生补充到科研生产部门。按照公司规定,大学毕业生必须进行相关基础知识培训,为此,公司经理安排王工对他们进行了长达一个月的培训。
问答题阅读以下关于系统设计建模的说明,在答题纸上回答问题1至问题3。【说明】 某公司拟研制一款高空监视无人直升机,该无人机采用遥控一自主复合型控制实现垂直升降。该直升机飞行控制系统由机上部分和地面部分组成,机上部分主要包括无线电传输设备、飞控计算机、导航设备等,地面部分包括遥控操纵设备、无线电传输设备以及地面综合控制计算机等。其主要工作原理是地面综合控制计算机负责发送相应指令,飞控计算机按照预定程序实现相应功能。经过需求分析,对该无人直升机控制系统纵向控制基本功能整理如下: (a)飞控计算机加电后,应完成系统初始化,飞机进入准备起飞状态; (b)在准备起飞状态中等待地面综合控制计算机发送起飞指令,飞控计算机接收到起飞指令后,进入垂直起飞状态; (c)垂直起飞过程中如果飞控计算机发现飞机飞行异常,飞行控制系统应转入无线电遥控飞行状态,地面综合控制计算机发送遥控指令; (d)垂直起飞达到预定起飞高度后,飞机应进入高度保持状态; (e)飞控计算机在收到地面综合控制计算机发送的目标高度后,飞机应进入垂直升降状态,接近目标高度;垂直升降过程中出现飞机飞行异常,控制系统应转入无线电遥控飞行; (f)飞机到达目标高度后,应进入高度保持状态,完成相应的任务; (g)飞机在接到地面综合控制计算机发送的任务执行结束指令后,进入飞机降落状态; (h)飞机降落过程中如果出现飞机飞行异常,控制系统应转入无线电遥控飞行; (i)飞机降落到指定着陆高度后,进入飞机着陆状态,应按照预定着陆算法,进行着陆; (j)无线电遥控飞行中,地面综合控制计算机发送着陆指令,飞机进入着陆状态,应按照预定着陆算法,进行着陆。
问答题阅读以下软件系统架构选择的问题,回答问题。希赛公司欲开发一个车辆定速巡航控制系统,以确保车辆在不断变化的地形中以固定的速度行驶。图给出了该系统的简化示意图。表描述了各种系统输入的说明。公司的领域专家对需求进行深入分析后,将系统需求认定为:任何时刻,只要定速巡航控制系统处于工作状态,就要有确定的期望速度,并通过调整引擎油门的设定值来维持期望速度。在对车辆定速巡航控制系统的架构进行设计时,公司的架构师王工提出采用面向对象的架构风格,而李工则主张采用控制环路的架构风格。在架构评估会议上,专家对这两种方案进行综合评价,最终采用了面向对象和控制环路相结合的混合架构风格。定速巡航控制系统各种输入的说明输入名称作用系统开关开启/关闭巡航控制系统引擎开关开启/关闭洗车引擎(引擎开启时,巡航控制系统处于就绪状态)车轮脉冲车轮每转一次,相应地发山一次脉冲刹车当刹车被踩下时,定速巡航控制系统会临时恢复到人工控制增/减速增加或减慢当前车速(仅在定速巡航控制系统处于开启的状态下可用)恢复速度恢复原来保持的车速(仅在定速巡航控制系统处于开启的状态下可用)时钟每毫秒定时脉冲
问答题论基于REST服务的Web应用系统设计 REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。基于REST服务(RESTfulService)的Web应用系统设计任务主要包括:识别并设计REST风格的服务,采用面向服务的思想进行REST J~务集成。采用这种方法设计的Web应用系统能够结合REST风格和面向服务思想的优点,近年来受到了广泛的关注。 请围绕“基于REST服务的Web应用系统设计”论题,依次从以下3个方面进行论述: ①概要叙述你参与实施的Web应用系统开发项目及你所承担的主要工作。 ②简要叙述与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。 ③阐述你在设计基于REST服务的Web应用系统时遇到了哪些问题,如何解决。
问答题电子商务是构建在Internet上的新商务模式。企业和个人使用电子商务来降低交易成本,提高商品和信息流的周转速度,提高客户服务水平,并且使得制造商、供应商和客户之间可以紧密合作。企业信息化是实施企业电子商务的基础,特别是在企业流程再造、供应链管理、客户关系管理等方面需要依托信息技术进行整合和优化。
问答题阅读以下关于嵌入式系统可靠性设计方面的描述,回答问题1至问题3。 【说明】 某宇航公司长期从事宇航装备的研制工作,嵌入式系统的可靠性分析与设计已成为该公司产品研制中的核心工作,随着宇航装备的综合化技术发展,嵌入式软件规模发生了巨大变化,代码规模已从原来的几十万扩展到上百万,从而带来了由于软件失效而引起系统可靠性降低的隐患。公司领导非常重视软件可靠性工作,决定抽调王工程师等5人组建可靠性研究团队,专门研究提高本公司宇航装备的系统可靠性和软件可靠性问题,并要求在三个月内,给出本公司在系统和软件设计方面如何考虑可靠性设计的方法和规范。可靠性研究团队很快拿出了系统及硬件的可靠性提高方案,但对于软件可靠性问题始终没有研究出一种普遍认同的方法。
问答题银行金融系统对数据库中的数据安全要求很高,必须在技术层面上采用必要的措施,以保证数据的有效和不丢失。数据库的备份与恢复是保证数据安全的一种基本方法,一般将数据库备份分为冷备份、热备份和数据导出,而数据导出根据导出数据的范围,又可以分为完全导出、增量导出和累计导出。
该金融系统上线初期,整个业务系统采用了内网方式运行,不与外网发生联系。为了保证数据库内部数据的安全,该银行信息中心的刘工提出的备份方案如表1所示。
{{B}}表1 备份方案{{/B}}
时间
星期一
星期二
星期三
星期四
星期五
星期六
星期日
备份方式
完全导出
增量导出
增量导出
增量导出
累计导出
增量导出
增量导出
信息中心的李工对刘工的方案提出了异议,认为数据库一旦发生故障,刘工的方案无法做到数据库的实时恢复,会导致业务数据的丢失,银行应该采用数据库冷备份和热备份相结合的方式来完成数据库的备份。
问答题论中间件技术在软件开发中的作用 随着软件应用越来越复杂,软件开发“一切从零开始”的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。 请围绕“中间件技术在软件开发中的作用”这个论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。 ③假如你在一个软件公司中能够起到影响公司决策的作用,请你结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。
问答题某软件公司开发一项基于数据流的软件,其系统的主要功能是对输入的数据进行多次分析、处理和加工,生成需要的输出数据。需求方对该系统的软件可靠性要求很高,要求系统能够长时间无故障运行。该公司将该系统设计交给王工负责。王工给出该系统的模块示意图如图所示。王工解释:只要各个模块的可靠度足够高,失效率足够低,则整个软件系统的可靠性是有保证的。图1李工建议的软件系统模块示意图李工对王工的方案提出了异议。李工认为王工的说法有两个问题:第一,即使每个模块的可靠度足够高,假设各个模块的可靠度均为0.99,但是整个软件系统模块之间全部采用串联,则整个软件系统的可靠度为0.994=0.96,即整个软件系统的可靠度下降明显;第二,软件系统模块全部采用串联结构,一旦某个模块失效,则意味着整个软件系统失效。李工认为,应该在软件系统中采用冗余技术中的动态冗余或者软件容错的N版本程序设计技术,对容易失效或者非常重要的模块进行冗余设计,将模块之间的串联结构部分变为并联结构,来提高整个软件系统的可靠性。同时,李工给出了采用动态冗余技术后的软件系统模块示意图,如图2所示。图2李工建议的软件系统模块示意图刘工建议,李工方案中M1和M4模块没有采用容错设计,但M1和M4发生故障有可能导致严重后果。因此,可以在M1和M4模块设计上采用检错技术,在软件出现故障后能及时发现并报警,提醒维护人员进行处理。注:假设各个模块的可靠度均为0.99
