题目
阅读以下关于软件架构的叙述,回答问题1至问题3。
软件架构是指大型、复杂软件的系统结构的设计、规格说明和实施。它以规范的形式装配若干结构元素,从而描述出系统的主要功能和性能需求,同时表述其他非功能性需求(如可靠性、可扩展性、可移植性和可用性等)。软件架构为软件系统提供了一个结构、行为和属性的高级抽象模式,可以使用一个公式来表达:
软件架构={构成系统的元素,指导元素集成的形式,关系和约束}
“4+1”视图模型用五个视图组成的模型来描述软件架构。该模型包含五个主要的视图。
.逻辑视图(Logical View),描述了设计的对象模型,支持系统的功能需求。
.进程视图(Process View),描述了设计的并发和同步特征,支持系统的运行特性。
.物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性,支持系统的拓扑、安装和通信需求。
.开发视图(Development View),描述了在开发环境中软件的静态组织结构,支持软件开发的内部需求。
.场景(Scenario),用来说明重要的系统活动,是其他四个视图在用例(Use Case)驱动下的综合。
软件架构在软件需求与设计之间架起一座桥梁,也是风险承担者进行交流的手段,允许不同的风险承担者找出他们所关心的软件架构问题。假设采用面向对象的设计方法,各个视图涉及的组件(元素)包括:任务、类、模块、节点、步骤等,风险承担者包括最终用户、系统设计师、程序员、经理、项目管理师等。请在下表中的(1)到(7)处填入恰当的内容(空白处不用填)。
第1题
阅读以下关于嵌入式软件测试的叙述,回答问题1至问题3,将解答填入对应栏内。
【说明】
某嵌入式软件主要用于控制飞机起落架。飞机起落架的可靠性直接关系着机载人员的人身安全。根据载机设备对软件可靠性要求,一般将软件分为3级:关键级软件,主要级软件和一般软件。由于该嵌入式软件被定义为关键软件,要求按关键级软件进行测试。
请根据测试要求,简要说明语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖的含义。
第2题
阅读以下关于软件开发方面的叙述,回答问题1至问题4。
当前企业中的业务都是在全球化、快速变化的环境中运营的,传统的软件开发过程无法适应由此产生的快速软件开发需求。20世纪90年代后期,一些软件开发人员在Agile Allicance 2001中系统地阐述了敏捷开发的原则,试图强调灵活性在快速且有效地生产软件中所发挥的作用。目前,众多的软件生产企业已经在实际的软件开发过程中接纳并实践了敏捷开发方法中的基本原则。
敏捷开发有许多典型方法,包括极限编程(eXtreme Programming)、Scrum、Crystal和DSDM等。请问这些方法共同的基本原则是什么?
第3题
试题三(共25分)
阅读以下关于汽车电子基础软件架构的说明,在答题纸上回答问题1至问题 3。
【说明】
某软件公司承担了某项国家重点项目的研制工作,任务重点是参考国外汽车电子发展趋势,开发某汽车公司的企业汽车电子基础软件的架构,逐步实现汽车企业未来技术发展规划。
该软件公司接收此项任务后,调动全体技术人员深入收集国外相关技术资料,经过多方调研和分析,公司提出遵照国际组织最新推出的AUTOSAR规范,按统筹规划、分步骤实施的原则,实现汽车公司的基础软件架构设计。图 3-1给出了 AUTOSAR规范所定义的工作包,图中灰色部分代表本项目工作所包含的内容,即软件架构和基础软件。
【问题1】 (7分)
AUTOSAR规范中要求,汽车电子软件开发流程应尽量满足并发、可多次迭代的特性。 为了定义汽车电子的软件开发过程,公司李工和王工分别提出了两种软件开发流程,其开发流程见图 3-2 和 3-3(图中 ECU 是指汽车电子中的电子控制单元)。请说明李工和王工谁定义的流程更符合AUTOSAR的规定,并说明理由。
【问题2】 (10分)
图3-1中的II-1.1.1项中定义了软件架构和操作系统的要求, 图3-4是满足AUTOSAR定义的操作系统各功能模块的层次结构,请说明(1)~(5)箭头所标的具体操作含义。
【问题3】 (8分)
AUTOSAR是一种开放式架构,用150字以内的文字,说明采用 AUTOSAR架构的主要优点,并说明汽车电子ECU覆盖汽车的哪三个领域。
第4题
试题一(共25分)
阅读以下关于软件系统架构选择的说明,在答题纸上回答问题1至问题 3。
【说明】
某公司欲针对 Linux操作系统开发一个KWIC(Key Word in Context)检索系统。该系统接收用户输入的查询关键字,依据字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其它方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其它的方法实现这一功能。
在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道-过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、 功能变更、 数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。
【问题 1】(7分)
在实际的软件项目开发中,采用恰当的架构风格是项目成功的保证。请用 200 字以内的文字说明什么是软件架构风格,并对主程序-子程序和管道-过滤器这两种架构风格的特点进行描述。
【问题 2】(12分)
请完成表1-1 中的空白部分(用+表示优、-表示差),对王工和李工提出的架构风格进行评价,并指出采用李工方案的原因。
【问题 3】(6分)
图1-1 是李工给出的架构设计示意图, 请将恰当的功能描述填入图中的(1)~(4)。
第5题
阅读以下关于某软件系统开发项目的叙述,回答问题1至问题4。
W公司的主要业务是利用网络进行音像制品的管理和销售,以提高其物流配送的效率。随着业务范围的扩展和业务过程的改进,公司CIO发现现有信息系统业务过程过于僵化、维护困难,不能真正地为企业贡献价值,已经不能满足公司长久发展的战略。在该公司CIO的建议下,W公司在三月初委托某软件企业为其开发出一套新的音像制品管理及销售系统AVMSS,要求新系统能够对其现有系统业务过程进行重新设计,以提高公司业务的执行效率并降低维护成本。
该软件企业成立了项目组来开发AVMSS,在对开发任务进行了初步的了解之后,项目组认为W公司原有系统的数据架构稳定,没有必要对原有关系数据模式进行重新设计:新系统应着眼于对系统控制流的改造,通过系统业务流程再造以应对公司的发展需要。但在选择系统开发方法时出现了分歧,张工认为应该采用流行的面向对象开发方法,而李工则认为应该采用成熟的结构化开发方法,项目组经过讨论最终确定在AVMSS系统分析与设计过程中采用李工的建议。
请对张工和李工所提出的两种系统开发方法进行比较,结合AVMSS系统说明为什么项目组最终采用了李工的建议。
第6题
试题二(共25分)
阅读以下关于分布式存储系统设计的叙述,回答问题1至问题3。
某软件公司开发基于云计算的分布式文档协作平台(DDCP),系统部分需求如下所示:
(1)实现文档的分布式存储,客户端可随时随地上传和下载文档;
(2)支持多客户端并发编辑同一文档,某个客户端所做修改会实时显示在其他客户端;
(3)要求系统具有自我修复机制,当系统中某个节点失效时,无需人工干预能够自动实现节点替换并恢复到一致状态。
项目组经过讨论,决定采用现有的分布式文件系统作为基础架构,但在具体选用哪种设计方案时产生了分歧。王工建议采用Hadoop分布式文件系统HDFS作为系统参考架构,但张工认为Google分布式文件系统GFS更适合该系统需求。最后经过更为详细
的分析和讨论,同意了张工的建议,采用GFS作为分布式文档协作平台的文件系统架构。
【问题1】(12分)
请用300字以内的文字说明GFS和HDFS有何异同,并针对系统需求,用200字以内的文字说明选择GFS的原因。
【问题2】(8分)
针对图2-1所示DDCP基础架构,请分别说明一次数据读操作和一次并发写操作的过程。
【问题3】(5分)
请分别叙述采用GFS和HDFS架构,单点失效问题是如何解决的。
第7题
阅读以下说明,回答问题1至问题3,将解答填入对应栏内。
【说明】
腾飞公司是一家对外贸易企业,腾飞公司要向英国的哈特公司提供一批冰箱配件,需要通过EDI交换系统进行信息传递。腾飞公司的EDI软硬件架构如下图所示。
请根据描述回答下列问题。
1.腾飞公司的EDI软件系统必须包含(1)和(2)子系统。
2.如果两个公司采取的都是现行的联合国制定的EDI国际标准,该标准的英文缩写是(3)。
第8题
基线是软件生存期各个开发阶段末尾的特定点,不同于里程碑。()
A.错误
B.正确
第9题
试题四(共25分)
阅读以下关于数据库架构设计的叙述,回答问题1至问题3。
某软件公司欲开发一个社交网络系统,该系统能够接收多个不同种类客户端发送的信息,并将这些信息实时显示在每个客户端的页面上供客户阅读。该系统将为数以百万计的用户服务,因此,要求采用的数据库能够支持大量信息存储,能够满足并发读写要求,并要求随着数据规模的扩大,数据库系统要易于进行扩充。关于数据库架构的设计,王工和张工提出了两种模式:王工提出基于传统的关系型数据库模式,通过向上扩展(Scale-up)以满足数据库的可扩展性要求;李工提出利用新兴的NoSQL数据库模式,通过向外扩展(Scale-out)以满足数据库的可扩展性要求。项目组经过讨论,决定采用李工提出的设计方案。
【问题1】(11分)
请指出关系数据库模式和NoSQL模式在并发支持、存储与查询、扩展方式、索引方式和应用领域五个方面各自的特点,结果填入表4-1中(1)~(10);并针对应用需求,说明项目组选择李工提出的设计方案的原因。
【问题2】(8分)
与传统的关系型数据库相比,NoSQL数据库所支持的典型数据存储类型有哪些?
【问题3】(6分)
在实际应用中,NoSQL数据库存在的问题有哪些?
第10题
配置识别、变更控制、状态报告、配置审计是软件配置管理包含的主要活动。()
A.错误
B.正确
为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!