问答题【问题3】(8分)
在图2-2中添加实体之间的联系后,该实体联系图是否满足第一范式、第二范式和第三范式中的要求(对于每种范式判定时,假定己满足低级别范式要求)。如果不满足,请用200字以内文字分别说明其原因。
问答题[问题1]
小规模分布(small release)是XP的基本元素之一。试用200字以内文字分别说明:
(1)原型系统和XP小规模发布的系统的主要差别是什么?
(2)为什么该项目组没有采用原型开发方法?
问答题大中型复杂软件系统开发所关注的问题之一是质量,在软件系统的早期设计阶段,选择合适的体系结构对系统许多关键质量属性(如性能、可靠性、可用性、可修改性、安全性和互操作性等)起着决定性的影响。不恰当的软件体系结构将给项目开发带来灾难。因此,尽早分析和评估一个系统的体系结构非常重要。 基于调查问卷或检查表的评估和基于场景(Scenarios)的评估是目前两类主要的软件架构评估方式。利用场景评估技术进行软件体系结构评估的主流方法包括SAAM (Scenario-based Architecture Analysis Method)、ATAM (Architecture Tradeoff Analysis Method)和CBAM (Cost Benefit Analysis Method)。SAAM方法最初用于比较不同的体系结构,后来用于指导对体系结构的检查,使其主要关注潜在的问题,如需求冲突,或仅从某一参与者观点出发的不全面的系统设计;ATAM方法在揭示出结构满足特定质量目标的同时,也能反映出质量目标之间的联系,从而权衡多个质量目标:CBAM方法可以看做是ATAM方法的补充,在其评估结果上对软件体系结构的经济性进行评估。 请围绕“基于场景的软件架构评估方法与应用”论题,依次从以下3个方面进行论述。 (1)概要叙述你参与管理和开发的软件项目及你所承担的主要工作,包括角色、工作内容等。 (2)请从评估目的、评估参与者、评估活动或过程,以及评估结果等几个方面对SAAM(或ATAM)评估方法进行分析。 (3)具体阐述你参与管理和开发的项目中在体系结构设计和评估时,采用了什么评估方法,如何具体实施,最终实际效果如何。
问答题[问题1]
请用300字以内文字分析,如果上述政府部门分别管理的企业信息不能整合、共享,对政府履行其职能存在哪些问题?
问答题阅读以下关于面向对象系统建模的叙述,根据要求回答下面问题。
[说明]
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目组经过讨论后决定采用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要求:
(1)W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类等),公司可以提供百分比折扣或现金减免等多种促销方式,以供提交订单的用户选择。实现每种促销活动的代码量很大,且会随促销策略的不同而经常修改。系统设计中需要考虑现有的促销和新的促销,而不用经常地重写控制器类代码。
(2)该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在系统中修改或创建新类。
项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前已经熟练掌握的设计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模式(Prototype)、代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。
问答题根据系统需求,请设计出系统的处理流程(按时序),说明所有任务的优先级分配策略,422、接口、双口存储器、离散量接口和A/D(D/A)的数据输入/输出方法(中断或查询驱动)及理由。请用350字以内文字简要说明。
问答题论软件可靠性评价
软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内的其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。
软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程中实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。
请围绕“软件可靠性评价”论题,依次从以下三个方面进行论述。
(1)简要概述你参与实施的软件开发项目以及你承担的主要工作。
(2)说明你在项目实施过程中所选择的软件可靠性模型,并论述在软件可靠性模型选择时应该考虑的主要因素。
(3)收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。
问答题阅读以下说明,在上回答问题1至问题6。某学校在原校园网的基础上进行网络改造,网络方案如图5-1所示。其中网管中心位于办公楼第三层,采用动态及静态结合的方式进行IP地址的管理和分配。
问答题实施软件复用的目的是要使软件开发工作进行得“更快、更好、更省”。“更快”是指在市场竞争的环境中,软件产品能够及时满足市场的要求;“更好”是指开发出来的软件产品具有更好的可靠的质量;“更省”是指在开发和维护过程中成本更低。换句话说,实施软件复用的目的是快速、可靠、低成本地完成客户合同。请根据你实际参与开发的经验,论述下列三个问题:[问题1] 简述你参与分析和开发的系统概要和你所承担的具体工作。[问题2] 具体叙述你在软件开发过程中是如何进行软件复用的,采取过哪些软件复用的技术和措施?解决过哪些相应的矛盾或问题?[问题3] 简要说明你在软件开发过程中实施软件复用的具体效果。你现在认为还有哪些可以改进的地方?如何加以改进?
问答题
随着技术的不断发展和用户对网站功能性的需求不断提高,如今,网站项目的设计已经不能再仅仅简单地利用静态HTML文件来实现,与前几年网站设计由一两名网页设计师自由的创作相比,网站项目的设计和开发越来越像一个软件工程,也越来越复杂,网站项目的设计和开发进入了需要强调流程和分工的时代,建立规范的、有效的、健壮的开发机制,才能适应用户不断变化的需要,达到预期的计划目标。
网站项目管理(WPM)的含义为Web- Based Project
Management,即以Web应用程序为主要表现方式的架构来进行的项目设计及管理,这样的架构中包含了浏览器、网络和Web服务器等关键主体,主要体现在网站设计、以浏览器为客户端的Web应用程序开发(例如信息类网站、网上商店、虚拟邮局、客户关系管理)等项目管理中。
问答题拟建设的某事务处理系统数据交换非常频繁。经过初步分析,存储子系统的I/O性能决定了整个系统的响应时间。目前主流磁盘的容量为40GB和80GB两种规格。采用不同规格的磁盘,存储子系统的I/O性能会有很大的不同,同时也产生不一样的成本。评价使用小容量或大容量磁盘每秒每个I/O操作的成本,对于选择恰当的设计方案意义重大。
经过调研,该项目的系统分析师小刘得到了以下与存储子系统有关的部件的性能和成本说明:
(1)CPU系统,成本是20000元,处理能力是2500MIPS。
(2)主存的带宽是16字节,访问周期是10ns。
(3)1000MB/s的I/O总线,可连接20个Ultra3 SCSI总线和控制器。
(4)Ultral3 SCSI总线,成本是500元,传输速度是160MB/s,每条总线最多可以支持15个磁盘,执行一个磁盘I/O操作平均增加0.3ms的开销。
(5)每个磁盘I/O操作需要使用50000条CPU指令。
(6)安装磁盘的驱动器盒,成本是每个驱动器盒1500元。为磁盘提供电力和降温,每个驱动器盒配置一条SCSI连接线,可以安放80GB磁盘8个或者40GB的磁盘12个。
(7)无论是大容量磁盘还是小容量磁盘,成本都是10元/GB,转速都是15 000RPM (每分钟15 000转),平均寻道时间是5ms,传输速率是40MB/s。
为了进一步进行定量评估,小刘假设磁盘存储容量必须是1920GB(大、小两种规格的磁盘不能混用),每次I/O的平均数据量是32KB,每次磁盘I/O操作时间=平均寻道时间+平均旋转延迟+传输时间,所有磁盘负载都是均衡的,而且所有设备的能力都可以得到100%的发挥。
说明:用IOPS表示每秒执行的I/O数量。
问答题试题二 论用例的获取方法
UP(Unified Process,统一开发过程)是一种软件开发过程,它的突出特点是:用例驱动;以构架为中心;迭代和增量式开发。用例(use case)是对一组动作序列的描述,系统通过执行该动作序列,为参与者(actors)产生可观察的结果。用例不仅可以描述系统的需求,而且能驱动系统的设计、实现和测试。
请围绕“用例的获取方法”论题,依次从以下三个方面进行论述。
1. 概要叙述你参与分析和开发的软件项目以及你所担任的主要工作。
2. 详细论述你在这个项目中获取系统的用例的基本步骤。
3. 分析并讨论获取用例的效果(是否获取了系统的所有用例或全部重要的用例),并进行评价。
问答题
甲公司是一个专业的航空软件开发公司,当前正在为某用户开发某航空嵌入式实时软件,王工是该软件开发项目的负责人。应用户要求,甲公司委托乙公司对其开发的航空软件进行第三方测试。张工是乙公司中该测试项目的负责人。
问答题 阅读以下关于某汽车制造厂财务软件方面的叙述,回答问题1,问题2和问题3。
某汽车制造厂是一个拥有1000名职工、1.2亿元资产的中型企业,主要生产轻型汽车、农用运输车和拖拉机。从1993年以来,该厂产品销售收入虽然逐年增加,但经济效益却大幅下滑,生产经营日趋困难。面对竞争日益激烈的市场环境,该企业感到原有的经验式管理模式、落后的管理手段和不透明的信息反馈机制已非常不适应新的形势,迫切需要应用现代计算机网络和统一的财务软件进行管理创新,体现在以下几个方面。
首先.成本核算与控制需要深化。
由于汽车产品结构复杂,零部件繁多,在产品开发过程中,会计人员连续几天几夜工作也只能算出大概的综合成本,难以及时准确地定出有市场竞争力的产品价格。企业曾多次出现新产品投产后,才发现设计成本过高、价格无法为市场接受而被迫停产的情况。
第二,资金核算与管理需要细化。
该厂销售环节占用的资金余额上亿元,大量的产品存放在全国各地的300多个经销商处,企业难以及时、准确掌握各销售点上的存货变动情况,账物不符、账账不符的问题时有发生,应收账款居高不下,坏账风险难以防范。1995年该厂曾组织十多名会计人员历时一年,与各经销商核对发出商品和应收账款,结果发现企业本身的账簿记录差错多达800笔,仅发出商品的损失即达数百万元之多。在储备资金的管理中,传统的手工操作只能提供库存材料、备件的账面价值总量,但具体材料、备件的存放时间、库存数量却没有,这使存货超储、积压、损坏等情况非常严重。企业盘点时曾发现仓库中的三角带可满足企业10余年的生产需要。
第三,基础管理需要强化。
从该企业的内部看,基础数据缺乏,材料消耗定额、工时消耗定额不准,谈不上精细生产,也无法对生产车间、销售部门、采购部门和仓储部门实施科学的考核。特别是财务信息滞后于物流信息和市场变化信息,再加上数据常常失真,决策者难以及时了解企业财务状况的变动情况和内部各种资源的配置情况,难以迅速对市场变化做出反应。
第四,企业各项规章制度需要硬化。
过去规章制度只是挂在墙上,写在书本中,缺乏强有力的手段来保证制度的有效执行,有章不循、有章难循的弊端难以克服,道德风险无法控制,科学规范的管理程序难以硬化。
问答题某大型企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。FT软件开发公司承接了某大型企业应用系统的集成任务。为了按时保质的完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。 (1)魏工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。 (2)陈工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用Web Service的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。 项目组仔细分析比较了两种方案的优点和不足后,认为魏工和陈工的建议都合理,但是结合当前项目的实际情况,最后决定采用陈工的建议。
问答题以图形的方式观察和认识事物,是人类最便捷的认知方式之一。实时控制系统的可视化技术,使得操控人员以更加易于理解的形式掌握被控对象和过程的状态,为操作与决策提供方便。但是,可视化的设计涉及许多相关技术,程序设计复杂,有时甚至比设计实时控制系统本身的工作量还大。 请围绕“可视化技术在实时控制系统的应用”论题,依次对以下3个方面进行论述。 (1)概要叙述你参与管理和开发的实时控制系统项目及你所担任的主要工作。 (2)论述你在实时控制系统可视化的设计中所涉及的基本概念和采用的技术、方法,详细叙述实现过程中所遇到的问题及解决办法。 (3)分析与评估可视化技术对改善系统操控性能的效果,简要展望可视化技术在未来实时控制系统的应用前景,以及你进一步应用可视化技术的有关设想。
问答题工程项目是一种一次性的、为实现某种目的的、相互关联的各项活动的整体,这些活动在完成整个项目工程中必须按一定的程序执行。项目计划的编制是一项整体工程,需要各方面人员的参与。工程项目进度计划方法包括甘特图法和网络计划技术。请根据你实际参与开发的经验,论述下列三个问题:[问题1] 简述你参加过软件应用开发项目的概要和你所担任的工作。[问题2] 具体叙述你在开发软件过程中是如何组织与实施项目计划控制的,采用了哪些主要的策略和技术?解决了哪些主要的矛盾和问题?[问题3] 讨论你组织与实施项目计划控制的效果。你现在认为应当做哪些方面的改进以及如何加以改进?
问答题分析你所采用的容错方法是否达到系统的可靠性和实时性要求。
问答题试题二 论敏捷开发在企业软件开发中的应用
敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。尽管目前敏捷开发的具体名称、理念、过程、术语尚不尽相同,但业界普遍认为:相对于“非敏捷”,敏捷开发更强调程序员团队与业务专家之间的紧密协作、面对面的沟通、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。
请围绕“敏捷开发在企业软件开发中的应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与实施的应用敏捷开发的软件项目以及你所担任的主要工作。
2.叙述你在软件项目实践过程中采用了怎样的敏捷开发基本原则并说明理由。
3.具体阐述该项目采用的敏捷开发方法,以及实施过程中存在问题和解决方法。
问答题试题四(共25分)阅读以下关于数据库设计的叙述,在答题纸上回答问题1至问题3。某航空公司要开发一个订票信息处理系统,以方便各个代理商销售机票。开发小组经过设计,给出该系统的部分关系模式如下:航班(航班编号,航空公司,起飞地,起飞时间,目的地,到达时间,剩余票数,票价)代理商(代理商编号,代理商名称,客服电话,地址,负责人)机票代理(代理商编号,航班编号,票价)旅客(身份证号,姓名,性别,出生日期,电话)购票(购票单号,身份证号,航班编号,搭乘日期,购票金额)在提供给用户的界面上,其核心功能是当用户查询某航班时,将该航班所有的代理商信息及其优惠票价信息,返回给用户,方便用户购买价格优惠的机票。在实现过程中发现,要实现此功能,需要在代理商和机票代理两个关系模式上进行连接操作,性能很差。为此开发小组将机票代理关系模式进行了扩充,结果为:机票代理(代理商编号,航班编号,代理商名称,客服电话,票价)这样,用户在查找信息时只需对机票代理关系模式进行查询即可,提高了查询效率。
