问答题甲公司承担了一项为宇航系统酉己套生产高性能嵌入式计算机系统的任务,用户要求该系统要具有高速并发处理能力、低功耗、高可靠性,并可以有效地防止系统故障的蔓延。根据用户对本项目的要求,甲公司成立了软/硬件两个项目组,总体设计由硬件组承担,负责高性能嵌入式计算机系统体系结构设计,软件组负责确定软件的技术需求和应用软件开发平台的软件设计工作。在处理器选型方面,硬件组王工与软件组张工在讨论采用哪种CPU体系结构方面发生争议。目前,流行的处理器结构包括单核结构、多处理器结构、超线程结构、多核结构、共享Cache的多核结构和超线程技术的多核结构共6种,如图12—20所示。
问答题论模型驱动架构在系统开发中的应用
问答题阅读以下Web应用系统架构设计的说明,回答问题。
某公司拟开发一个市场策略跟踪与分析系统,根据互联网上用户对公司产品信息的访问情况和产品实际销售情况来追踪各种市场策略的效果。其中互联网上用户对公司产品信息的访问情况需要借助两种不同的第三方Web分析软件进行数据采集与统计,并生成不同格式的数据报表;公司产品的实际销售情况则需要通过各个分公司的产品销售电子表格或数据库进行采集与汇总。得到相关数据后,还要对数据进行分析与统计,并通过浏览器以在线的方式向市场策略制定者展示最终的市场策略效果。
在对市场策略跟踪与分析系统的架构进行设计时,公司的架构师王工提出采用面向服务的系统架构,首先将各种待集成的第三方软件和异构数据源统一进行包装,然后将数据访问功能以标准Web服务接口的形式对外暴露,从而支持系统进行数据的分析与处理,前端则采CSS等技术实现浏览器数据的渲染与展示。架构师李工则认为该系统的核心在于数据的定位、汇聚与转换,更适合采用面向资源的架构,即首先为每种数据元素确定地址,然后将各种数据格式统一转换为JSON格式,通过对JSON数据的组合支持数据的分析与处理任务,处理结果经过渲染后在浏览器的环境中进行展示。在架构评估会议上,专家对这两种方案进行综合评价,最终采用了李工的方案。
问答题论数据挖掘技术的应用
问答题TeleDev是一个大型的电信软件开发公司,公司内部采用多种商业/开源的工具进行软件系统设计与开发工作。为了提高系统开发效率,公司管理层决定开发一个分布式的系统设计与开发工具集成框架,将现有的系统设计与开发工具有效集成在一起。集成框架开发小组经过广泛调研,得到了如下核心需求:
①目前使用的系统设计与开发工具的运行平台和开发语言差异较大,集成框架应无缝集成各个工具的功能。
②目前使用的系统设计与开发工具所支持的通信协议和数据格式各不相同,集成框架应实现工具之间的灵活通信和数据格式转换。
③集成框架需要根据实际的开发流程灵活、动态地定义系统工具之间的协作关系。
④集成框架应能集成一些常用的第三方实用工具,如即时通信,邮件系统等。
集成框架开发小组经过分析与讨论,最终决定采用企业服务总线(ESB)作为集成框架的基础架构。
问答题某软件公司接受A公司委托开发一个软件任务,该任务由张工负责。张工预计在4周内完成对系统的需求分析,并形成需求规格说明书。张工委派了项目组的小刘来负责需求信息的获取。两周后,小刘向张工汇报了他进行需求分析的过程及结果。小刘采用问卷调查的方式向A公司的50名工作人员搜集信息。他首先准备了问卷的初稿,并请A公司的相关管理人员进行了测试和修正;然后将问卷分发给A公司的每位工作人员,并要求他们在一周内返还问卷。但到目前为止,小刘只收回了7份问卷。小刘认为自己是完全按照问卷调查的步骤和要求实施的,而问卷的返还率仍然很低。张工听完后,给小刘分析了失败的原因,并提出了一些能够提高问卷返还率的建议。但是为了不耽误项目的进度,张工决定采用JRP(JointRequirementsPlanning)的方法再次进行需求调查,张工作为JRP的主持人。最终在第4周完成了需求规格说明书,并决定了系统后续阶段的开发计划,如图所示。该项目组除了张工之外,还有2名全职的开发人员,可以承担项目中的任何任务,并且承担同一任务的开发人员总是在一起工作。预计的开发时间中已经包含了编写文档的时间。张工决定采用迭代模型,在160天内完成这3个模块的设计、实现与测试。
问答题希赛公司欲针对Linux操作系统开发一个KWIC(Key Word In Context)检索系统。该系统接收用户输入的查询关键字,依据字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其他方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其他的方法实现这一功能。 在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道一过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、功能变更、数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。
问答题阅读以下信息系统可靠性问题的说明,回答问题。某软件公司开发一项基于数据流的软件,其系统的主要功能是对输入数据进行多次分析、处理和加工,生成需要的输出数据。需求方对该系统的软件可靠性要求很高,要求系统能够长时间无故障运行。该公司将该系统设计交给王工负责。王工给出该系统的模块示意图如图所示。王工解释:只要各个模块的可靠度足够高,失效率足够低,则整个软件系统的可靠性是有保证的。李工对王工的方案提出了异议。李工认为王工的说法有两个问题:第一,即使每个模块的可靠度足够高,但是整个软件系统模块之间全部采用串联,则整个软件系统的可靠度明显下降。假设各个模块的可靠度均为0.99则整个软件系统的可靠度为0.994≈0.96:第二,软件系统模块全部采用串联结构时,一旦某个模块失效,则意味着整个软件系统失效。李工认为,应该在软件系统中采用冗余技术中的动态冗余或者软件容错的N版本程序设计技术,对容易失效或者非常重要的模块进行冗余设计,将模块之间的串联结构部分变为并联结构,来提高整个软件系统的可靠性。同时,李工给出了采用动态冗余技术后的软件系统模块示意图,如图所示。刘工建议,李工方案中M1和M4模块没有采用容错设计,但M1和M4发生故障有可能导致严重后果。因此,可以在M1和M4模块设计上采用检错技术,在软件出现故障后能及时发现并报警,提醒维护人员进行处理。注:假设各个模块的可靠度均为0.99。
问答题某软件公司承担了某中小型企业应用软件开发任务,进度要求紧迫。为了按时完成任务,选择合适的企业应用系统开发架构非常重要。项目组在进行方案论证时,项目组成员提出了两种开发思路。
①刘工建议采用J2EE 5.0和EJB
3.0进行开发。理由是J2EE定义了标准的应用开发体系结构和部署环境,EJB是J2EE的基础和核心。J2EE 5.0的主要目标是简化开发,相比EJB
2.1,EJB 3.0具有很多改进和提高。
②杜工建议采用Struts、Spring和Hibernate轻量级开源框架相结合的方式。理由是随着Java开源项目阵营的发展壮大,一些基于POJO(Plan
Old Java Objects)的开源框架被广泛地引入到Java企业应用开发中来,与重量级的EJB框架相比,这些轻量级的框架有很多优点。
项目组仔细比较分析了两种方案的特点、优点和不足之处。认为杜工和刘工的建议都合理,但是从结合当前项目实际情况出发,最后决定采用杜工的建议。
问答题试题三(共25分)请详细阅读有关嵌入式软件架构设计方面的描述,回答问题l和问题2。[说明]在嵌入式系统中,软件采用开放式架构己成为新的发展趋势。软件架构设计的优劣将直接影响软件的重用和移植能力。某软件公司主要从事宇航领域的嵌入式软件研发工作。经二十多年的发展,其软件产品己被广泛应用于各种航天飞行器中。该公司积累了众多成熟软件,但由于当初没有充分考虑软件的架构,原有软件无法被再利用,为适应嵌入式软件技术发展需要,该公司决策层决定成立宇航嵌入式软件开放式架构研究小组,为公司完成开放式架构的定义与设计,确保公司软件资源能得到充分利用。研究小组查阅了大量的国外资料和标准,最终将研究重点集中在了SAEAS4893《通用开放式架构(GOA)框架》标准,图3-1给出了GOA定义的架构图。
问答题阅读以下关于汽车电子基础软件架构的说明,回答问题。某软件公司承担了某项国家重点项目的研制工作,任务重点是参考国外汽车电子发展趋势,开发某汽车公司的企业汽车电子基础软件的架构,逐步实现汽车企业未来的技术发展规划。该软件公司接收此项任务后,调动全体技术人员深入收集国外相关技术资料,经过多方调研和分析,公司提出遵照国际组织最新推出的AUTOSAR规范,按统筹规划、分步骤实施的原则,实现汽车公司的基础软件架构设计。图中给出了AUTOSAR规范所定义的工作包,图中灰色部分代表本项日工作所包含的内容,即软件架构和基础软件。
问答题论软件可靠性评价 软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。 软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。 请围绕“软件可靠性评价”论题,依次从以下3个方面进行论述: ①简要概述你参与实施的软件开发项目及你承担的主要工作。 ②说明你在项目实施过程中所选择的软件可靠性模型,并论述在软件可靠性模型选择时应该考虑的主要因素。 ③收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。
问答题TeleDev是一个大型的电信软件开发公司,公司内部采用多种商业/开源的工具进行软件系统设计与开发工作。为了提高系统开发效率,公司管理层决定开发一个分布式的系统设计与开发工具集成框架,将现有的系统设计与开发工具有效集成在一起。集成框架开发小组经过广泛调研,得到了如下核心需求:①目前使用的系统设计与开发工具的运行平台和开发语言差异较大,集成框架应无缝集成各个工具的功能。②目前使用的系统设计与开发工具所支持的通信协议和数据格式各不相同,集成框架应实现工具之间的灵活通信和数据格式转换。③集成框架需要根据实际的开发流程灵活、动态地定义系统工具之间的协作关系。④集成框架应能集成一些常用的第三方实用工具,如即时通信,邮件系统等。集成框架开发小组经过分析与讨论,最终决定采用企业服务总线(ESB)作为集成框架的基础架构。
问答题阅读以下关于信息系统安全性的叙述,回答问题。
某企业根据业务扩张的要求,需要将原有的业务系统扩展到互联网上,建立自己的B2C业务系统,此时系统的安全性成为一个非常重要的设计需求。为此,该企业向软件开发商提出如下要求。
①合法用户可以安全地使用该系统完成业务。 ②灵活的用户权限管理。
③保护系统数据的安全,不会发生信息泄露和数据损坏。 ④防止来自于互联网上的各种恶意攻击。
⑤业务系统涉及各种订单和资金的管理,需要防止授权侵犯。
⑥业务系统直接面向最终用户,需要在系统中保留用户使用痕迹,以应对可能的商业诉讼。
该软件开发商接受任务后,成立方案设计小组,提出的设计方案是:在原有业务系统的基础上,保留了原业务系统中的认证和访问控制模块;为了防止来自互联网的威胁,增加了防火墙和入侵检测系统。
企业和软件开发商共同组成方案评审会,对该方案进行了评审,各位专家对该方案提出了多条不同意见。李工认为,原业务系统只针对企业内部员工,采用了用户名/密码方式是可以的,但扩展为基于互联网的B2C业务系统后,认证方式过于简单,很可能造成用户身份被盗取:王工认为,防止授权侵犯和保留用户痕迹的要求在方案中没有体现。而刘工则认为,即使是在原有业务系统上的扩展与改造,也必须全面考虑信息系统面临的各种威胁,设计完整的系统安全架构,而不是修修补补。
问答题随着传统的数据库技术的成熟和计算机网络技术的发展,分布式数据库系统的研究与开发受到人们越来越多的关注。分布式数据库支持数据独立性和分布透明性。用户不必关心数据的逻辑分区,不必关心数据物理位置分布的细节,也不必关心副本的一致性问题。
问答题阅读以下关于软件系统建模的叙述,在答题纸上回答问题1至问题3。[说明]某软件公司计划开发一套教学管理系统,用于为高校提供教学管理服务。该教学管理系统基本的需求包括:(1)系统用户必须成功登录到系统后才能使用系统的各项功能服务;(2)管理员(Registrar)使用该系统管理学校(University)、系(Department)、教师(Lecturer)、学生(Student)和课程(Course)等教学基础信息;(3)学生使用系统选择并注册课程,必须通过所选课程的考试才能获得学分;如果考试不及格,必须参加补考,通过后才能获得课程学分;(4)教师使用该系统选择所要教的课程,并从系统获得选择该课程的学生名单;(5)管理员使用系统生成课程课表,维护系统所需的有关课程、学生和教师的信息;(6)每个月到了月底系统会通过打印机打印学生的考勤信息。项目组经过分析和讨论,决定采用面向对象开发技术对系统各项需求建模。
问答题RMO是一家运动服装制造销售公司,计划在5年时间内将销售区域从华南地区扩展至全国范围。为了扩大信息技术对于未来业务发展的价值,公司邀请咨询顾问帮助他们制订战略信息系统规划。经过评审,咨询顾问给出的战略规划要点之一是建立客户关系支持系统(CRSS)。RMO公司决定由其技术部成立专门的项目组负责CRSS的开发和维护工作。项目组在仔细调研和分析了系统需求的基础上,确定了基于互联网的CRSS系统架构。但在确定系统数据架构时,张工认为应该采用集中式的数据架构,给出的理由是结构简单、易维护且开发及运行成本低;而刘工建议采用分布式的数据架构,并提出在开发中通过“局部数据库+缓存”的读写分离结构实现,具有较好的运行性能和可扩展性。项目组经过集体讨论,考虑到公司的未来发展规划,最终采用了刘工的建议。
问答题论软件的静态演化和动态演化及其应用
问答题阅读以下关于面向对象系统建模的叙述,回答问题。
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目组经过讨沦后决定采用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要求。
(1)W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类等),公司可以提供百分比折扣或现金减免等多种促销方式供提交订单的用户选择。实现每种促销活动的代码量很大,且会随促销策略的不同经常修改。系统设汁中需要考虑现有的促销和新的促销,而不用经常重写控制器类代码。
(2)该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在系统中修改或创建新类。
项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前已经熟练掌握的设计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模式(Prototype)、代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。
问答题电子政务是指政府机构利用信息化手段来实现政府职能。
某市房地产交易网站是市建设委员会实施电子政务的门户,网站包括以下栏目:项目公示、业务办理、信息发布、通知公告、政策法规、房地产经纪、在线答疑等,其中业务办理栏目中又包括申办预售许可、期房网上签约、申请预售登记、权属登记申请、现房网上签约、经纪机构管理、评估行业管理等项目,多数的业务办理项目需要管理部门多级审批。