软件体系结构课后习题第三章作业

合集下载

软件体系结构作业完整版

软件体系结构作业完整版

软件体系结构作业完整版第一章:1.根据自己的经验,谈谈对软件危机的看法。

软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。

以下几个原因导致:(1)软件自身特点(2)开发人员的弱点(3)用户需求不明(4)缺乏正确理论指导(5)开发规模越来越大(6)开发复杂度越来越高可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。

软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。

2.什么是软件重用,软件重用的层次可以分为哪几个级别软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。

可以分为三个层次:(1)代码重用(2)设计结果重用(3)分析结果重用3.什么是可重用构件相对于普通的软件产品,对可重用构件有何特殊要求可充用构件表示软件重用过程中,可重用的软件构件元素。

可重用构件的特殊要求:(1)可重用构件应该具有功能上的独立性与完整性;(2)可重用构件应该具有较高的通用性;(3)可重用构件应该具有较高的灵活;(4)可重用构件应该具有严格的质量保证;(5)可重用构件应该具有较高的标准化程。

4.基于构件的软件开发的优势是什么基于构件的软件开发面临哪些挑战和困难优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题挑战和困难:(1)在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题;(2)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场上的竞争力;(3)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。

软件体系结构课后习题第三章作业

软件体系结构课后习题第三章作业

软件体系结构课后习题第三章作业软件体系结构课后习题第三章作业题1.层次系统结构和基于消息的层次系统结构有什么区别?答:层次系统组织成一个层次结构,每一层为上层服务,并作为下层客户。

在一些层次系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。

这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层是部分不透明的)。

连接件经过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。

这种风格支持基于可增加抽象层的设计。

允许将一个复杂问题分解成一个增量步骤序列的实现。

由于每一层最多只影响两层,同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同样为软件重用提供了强大的支持。

而在基于消息的层次系统结构中构件不直接调用一个过程,而是触发或广播一个或多个事件。

系统中的其它构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。

这种风格的构件是一些模块,模块既能够是一些过程,又能够是一些事件的集合。

过程能够用通用的方式调用,也能够在系统事件中注册一些过程,当发生这些事件时,过程被调用。

这种风格的主要特点是事件的触发者并不知道哪些构件会被这些事件影响。

这样不能假定构件的处理顺序,甚至不知道哪些过程会被调用,因此,许多隐式调用的系统也包含显式调用作为构件交互的补充形式。

题2.分析比较B/S、二层C/S和三层C/S,指出各自的优点和缺点。

二层C/S结构的优点:◆C/S 体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。

◆系统的客户应用程序和服务器构件分别运行在不同的计算机上,系统中每台服务器都能够适合各构件的要求,这对于硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。

◆在C/S体系结构中,系统中的功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中于数据的管理,不必在每一个新的应用程序中都要对一个DBMS进行编码。

软件体系结构课后作业及参考答案

软件体系结构课后作业及参考答案

1、就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。

答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。

同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。

2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。

在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。

3、为什么要研究软件体系结构?答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。

2.软件体系结构代表了早期的设计决策成果。

3.软件体系结构可以作为一种可变换的模型。

4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成?答:构件(component)可以是一组代码,如程序的模块;也可以是一个独立的程序(如数据库的SQL服务器);连接件(connector)是关系的抽象,用以表示构件之间的相互作用。

如过程调用、管道、远程过程调用等;限制(constrain):用于对构件和连接件的语义说明。

5、在软件体系结构的研究和应用中,你认为还有哪些不足之处?答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。

(2)ADL繁多,缺乏同意的ADL的支持。

(3)软件体系结构研究缺乏统一的理论模型支持。

(4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。

(5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。

(6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。

计算机0软件工程第三章课后答案

计算机0软件工程第三章课后答案

第三章习题1.为什么要进行需求分析?通常软件工程系统有哪些需求?答:因为信息收集不安全,功能不明确,需求文档不完善,开发者急于求成,通常软件工程系统有功能需求,性能需求,环境需求,界面需求,用户或人的因素需求,文档需求,数据需求,资源需求,安全保密需求软件成本消耗与开发进行需求,质量保证需求。

2.怎样与用户有效地沟通以获取用户的真实需求?答:一.要处处为对方考虑,站在对方的角度去看自己,俗话说知己知彼,百战不殆嘛。

二.就是要自信。

与对方谈话时要特别注意对方的一举一动,抓住对方的弱点,抢攻。

三.因人而定。

要看对方是什么样类型的人,不要千篇一律,要见什么人,说什么话。

四.要诚实可信。

对自己说的每句话都要负责,做到诚实守信,才能得到对方的信赖。

五.不要直言不讳。

先和对方谈点别的,等慢慢找机会切入正题,这样才会给对方一个缓冲的机会。

3.银行计算机储系统的工作过程如下:储户填写存款单或业务员输入系统,如果是存款则系统记录存款人姓名,住址,身份证号,存款类型,存款日期,到日期,利率及密码等信息并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,如密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。

答:5.分析习题2第4题所需的患者监护系统。

试用实体-联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能,画出本系统的顶层IPO图。

3-6 复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。

请用状态转换图描绘复印机的行为。

从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。

计算机系统结构 第三章练习 答案

计算机系统结构   第三章练习 答案

计算机系统结构第三章练习答案计算机系统结构-第三章练习答案第三章练习(1)一、单项选择题以下问题的四个备选答案中,只有一个是正确的。

请在问题后面的括号中填写正确答案的标签(a~d)。

1.程序员编写程序时使用的访存地址是()。

a、物理地址B.有效地址C.逻辑地址D.主存地址2.虚拟存储器通常采用的地址映像是(d)。

a、完全关联、组关联和直接图像B.直接图像C.组关联图像D.完全关联图像3.不属于堆栈型替换算法是()。

a、最近使用最少的替换算法B.先进先出替换算法C.最优替换算法d.近期最久未使用替换算法4.提高虚拟内存主存命中率的方法是()。

a.采用lfu替换算法并增大页面数b.采用fifo替换算法并增大页面c.采用fifo 替换算法并增大页面数d.采用lru替换算法并增大页面5.虚拟内存主要用于解决()问题。

a.便于程序的“访存操作”b.扩大存储系统的容量和提高存储系统的速度c.提高存储系统的速度d.扩大存储系统的容量6.独立于虚拟内存的等效访问速度为()。

a.辅存的容量b.主存的容量c.页面替换算法d.访存页地址流二、填空1.使二级存储系统的等效访问速度接近于第一级存储器访问速度的依据是程序的(局部它包括两个方面(时间局部性)和(空间局部性)。

2.程序的空间局部性意味着程序通常是(按顺序)存储和执行的,程序使用的数据通常是(群集)聚或集中)存储的。

3.假设T1和T2分别是CPU访问M1和M2中的信息所需的时间,H是命中M1的概率,则由m1和m2构成的二级存储系统的等效访问时间应当表示为(h*t1+(1-h)*t2)。

4.存储器速度性能可以采用存储器的(频宽)衡量,它是存储器单位时间能够访问的信息量5.虚拟存储器的存储管理方式有(页式)、(段式)和(段页式)三种。

6.页式虚拟存储器把(程序“虚拟”)空间和(主存储器“物理实”)空间都分成相同样大小的页面。

7.当两个虚拟空间的页面需要加载相同的主存页面时,称之为(实页面冲突或页面争用)。

软件设计与体系结构课后习题答案(秦航)

软件设计与体系结构课后习题答案(秦航)
2
牡丹江师范学院--软件工程--朱有富 2015 年 6 月整理
4.一个图书管理系统中有书目、书籍、读者、图书管理员等数据对象,根据你对这些数据 对象的理解给出 ER 图。 5.一个人带着一头狼、一头羊和一颗青菜,处于河的左岸。请用状态-迁移图来描绘这一过 程。 第八章…………………………………………………………………………………………..17 1.简述设计良好界面的主要途径。 2.简述用户界面分析包含的内容。 3.简述用户界面设计过程及所要考虑的主要问题。 4.简述用户界面原型的实施。 5.简述用户界面设计评估。 7.举一到两个由于界面设计缺陷而可能导致非常严重后果的例子。 第九章…………………………………………………………………………………………..19 1.什么是设计模式?设计模式的目标是什么? 2.设计模式具有哪三大特点? 3.简述单例模式的两种实现方法,并说明其优缺点。 4.常用的 GOF 设计模式有几种?GOF 设计模式按照目的可分为哪三类? 5.MVC 模式是一个复合模式,请写出两种你知道的 MVC 中使用的模式。 6.简述面向对象程序设计的六大基本原则 7.在面向对象程序设计中,经常需要避免过多地使用 case 语句或者 if 语句 8.某房地产公司准备开发一套房产信息管理系统,如果对上述场景编程,那么上述(1) 和(2)可能会用到哪些设计模式?
4
牡丹江师范学院--软件工程--朱有富 2015 年 6 月整理
4.软件设计和软件体系结构有何关系?软件体系结构的出现有何必然性和重要意义? 1)体系结构是系统设计的一部分,突出了某些细节,并通过抽象省略掉另一些细节。 所以体系结构是设计的一个子集。 2)必然性和重要意义:
软件体系结构作为控制软件复杂性、提高软件系统质量、支持软件开发和复用的重要 手段之一,自提出以来就受到软件研究者和实践者的关注,有了软件体系结构,设计 人员或者项目管理者就能在一个比较高的层次上俯瞰软件的整体状况。同时,软件体 系结构可以复用,减少开发成本,降低软件的开发风险。

计算机系统结构课后答案unit3

计算机系统结构课后答案unit3

计算机系统结构课后答案unit3第一篇:计算机系统结构课后答案unit3第3章总线、中断与输入输出系统3.1.简要举出集中式串行链接,定时查询和独立请求3种总线控制方式的优缺点。

同时分析硬件产生故障时通讯的可靠性。

答:集中式串行链连接方式。

其过程为:①所有部件都经公共的“总线请求”线向总线控制器发使用总线申请。

②当“总线忙”信号未建立时,“总线请求”才被总线控制器响应,送出“总线可用”信号,它串行地通过每个部件。

③如果某部件未发过“总线请求”,则它将“总线可用”信号往下一部件转,如果某部件发过“总线请求”,则停止“总线可用”信号的传送。

④该部件建立“总线忙”,并除去“总线请求”,此时该部件获得总线使用权,准备传送数据。

⑤数据传送期间,“总线忙”维持“总线可用”的建立。

⑥传送完成后,该部件去除“总线忙”信号和“总线可用”信号。

⑦当“总线请求”再次建立时,就开始新的总线分配过程。

优点:①选择算法简单;②控制总线数少;③可扩充性好;④可靠性高。

缺点:①对“总线可用”线及其有关电路失效敏感,②不灵活;③总线中信号传送速度慢。

集中式定时查询方式,过程:①总线上每个部件通过“总线请求”发请求。

②若“总线忙”信号未建立,则计数器开始计数,定时查询个部件,以确定是谁发的请求。

③当查询线上的计数值与发出请求的部件号一致时,该部件建立“总线忙”,计数停止,查询也停止。

除去“总线请求”,该部件获得总线使用权。

④“总线忙”维持到数据传送完毕。

⑤数据传送完,去除“总线忙”。

⑥当“总线请求”线上有新的请求,就开始下一个总线分配过程。

优点:①优先次序灵活性强;②可靠性高。

缺点:①控制线数较多;②扩展性较差;③控制较为复杂;④总线分配受限于计数信号,不能很高。

集中式独立请求方式,过程:①每个部件有一对“总线请求”和“总线准许”线。

②每个部件使用“总线请求”发中请,当“总线已分配”无信号时,总线控制器根据某种算法对同时送来的多个请求进行仲裁,以确定哪个部件使用总线,信号从“总线准许”送回该部件,去除该部件的“总线请求”,建立总线已分配”。

软件工程第三章习题及参考答案

软件工程第三章习题及参考答案

第三章习题及参考答案1、用逐步求精方法解决下述得更新顺序主文件得问题。

美国某杂志社需要一个软件,以更新存有该杂志订户姓名、地址等数据得顺序主文件。

共有插入、修改与删除等3种类型得事务,分别对应于事务代码1、2与3。

也就就是说,事务类型如下:类型1:INSERT(插入一个新订户到主文件中)类型2:MODIFY(修改一个已有得订户记录)类型3:DELETE(删除一个已有得订户记录)事务就是按订户名字得字母顺序排序得。

如果对一个订户既有修改事务又有删除事务,则已对那个订户得事务排好次序了,以便使修改发生在删除之前。

2.分析图3、1所示得层次图,确定每个模块得内聚类型。

3.分析图3、2,确定模块之间得耦合类型。

在图3、2中已经给模块之间得接口编了号码,表3、1描述了模块间得接口。

4、假设您在一所职业高中工作,负责该校信息系统得建设与维护。

财务科长请您研究用学校拥有得微型计算机生成工资明细表与各种财务报表得可能性。

请详细描述您用结构化分析方法分析上述问题得过程。

用面向数据流方法设计工资支付系统得软件结构。

5.用3种方法计算图3、3所示流图得环形复杂度。

6、图3、4就是用程序流程图描绘得程序算法,请把它改画为等价得盒图。

7、某交易所规定给经纪人得手续费计算方法如下:总手续费等于基本手续费加上与交易中得每股价格与股数有关得附加手续费。

如果交易总金额少于1000元,则基本手续费为交易金额得8、4%;如果交易总金额在1000元到10000元之间,则基本手续费为交易金额得5%,再加34元;如果交易总金额超过10000元,则基本手续费为交易金额得4%加上134元。

当每股售价低于14元时,附加手续费为基本手续费得5%,除非买进、卖出得股数不就是100得倍数,在这种情况下附加手续费为基本手续费得9%。

当每股售价在14元到25元之间时,附加手续费为基本手续费得2%,除非交易得股数不就是100得倍数,在这种情况下附加手续费为基本手续费得6%。

计算机体系结构第三章答案

计算机体系结构第三章答案

第三章答案三、流水线技术(80空)1、对阶尾数相加2、求阶差规格化3、时间流水线的各段4、尽量相等流水线的瓶颈5、通过时间大量重复的时序输入端能连续地提供任务6、静态动态7、部件级处理机级8、标量流水处理机向量流水处理机9、线性流水线非线性流水线10、执行/有效地址计算周期存储器访问/分支完成周期11、译码读寄存器12、ALUoutput←A op B ALUoutput←NPC + Imm13、分支 STORE指令14、ALU指令 LOAD指令15、单周期多周期16、重复设置指令执行功能部件流水17、吞吐率等功能非流水线18、通过时间排空时间19、流水线寄存器的延迟时钟扭曲20、数据相关控制相关21、结构相关数据相关22、结构数据23、硬件开销功能单元的延迟24、写后读读后写写后读25、写后读读后写26、PC值改变为分支转移的目标地址 PC值保持正常(等于当前值加4)27、目标地址分支转移条件不成立28、8 存储器29、多功能线性 830、水平处理方式垂直处理方式31、纵向处理方式纵横处理方式32、存储器向量寄存器33、访问存储器的次数对存储器带宽的要求34、每秒执行多少指令(MIPS)每秒取得多少个浮点运算结果(MFLOPS)35、512 836、链接技术向量循环或分段开采技术37、源向量结果向量38、向量功能部件标量寄存器向量寄存器块39、向量寄存器向量功能部件3.1 流水线的基本概念1、流水线:将一个重复的时序过程,分解为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其他子过程同时执行。

2、单功能流水线:只能完成一种固定功能的流水线。

3、多功能流水线:流水线的各段可以进行不同的连接,从而使流水线在不同的时间,或者在同一时间完成不同的功能。

4、静态流水线:同一时间内,流水线的各段只能按同一种功能的连接方式工作。

5、动态流水线:同一时间内,当某些段正在实现某种运算时,另一些段却在实现另一种运算。

计算机系统结构三四章作业及答案知识分享

计算机系统结构三四章作业及答案知识分享

计算机系统结构三四章作业及答案3.1 简述流水线技术的特点。

(1) 流水线把一个处理过程分解为若干个子过程,每个子过程由一个专门的功能部件来实现。

因此,流水线实际上是把一个大的处理功能部件分解为多个独立的功能部件,并依靠它们的并行工作来提高吞吐率。

(2) 流水线中各段的时间应尽可能相等,否则将引起流水线堵塞和断流。

(3) 流水线每一个功能部件的前面都要有一个缓冲寄存器,称为流水寄存器。

(4) 流水技术适合于大量重复的时序过程,只有在输入端不断地提供任务,才能充分发挥流水线的效率。

(5) 流水线需要有通过时间和排空时间。

在这两个时间段中,流水线都不是满负荷工作。

3.2 解决流水线瓶颈问题有哪两种常用方法?答:细分瓶颈段与重复设置瓶颈段 3.3 有一条指令流水线如下所示:(1)求连续输入10条指令的情况下,该流水线的实际吞吐率和效率。

(2)该流水线的瓶颈在哪一段?请采用两种不同的措施消除此瓶颈。

对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少?解:(1)2200(ns)2009200)10050(50t )1n (t T maxm1i i pipeline =⨯++++=∆-+∆=∑= )(ns 2201T nTP 1pipeline-==45.45%1154400TP mtTP E m1i i≈=⋅=∆⋅=∑= (2)瓶颈在3、4段。

⏹ 变成八级流水线(细分)850(ns)509850t 1)(n t T maxm1i i pipeline =⨯+⨯=∆-+∆=∑=)(ns 851T nTP 1pipeline-== 58.82%17108400TP mtiTP E m1i ≈=⋅=∆⋅=∑= ⏹ 重复设置部件)(ns 851T nTP 1pipeline-==58.82%1710885010400E ≈=⨯⨯=3.4 有一个流水线由4段组成,其中每当流过第三段时,总要在该段循环一次,然后才能流到第4段。

软件工程第三章习题及参考答案

软件工程第三章习题及参考答案

第三章习题及参考答案1、用逐步求精方法解决下述得更新顺序主文件得问题。

美国某杂志社需要一个软件,以更新存有该杂志订户姓名、地址等数据得顺序主文件。

共有插入、修改与删除等3种类型得事务,分别对应于事务代码1、2与3。

也就就是说,事务类型如下:类型1:INSERT(插入一个新订户到主文件中)类型2:MODIFY(修改一个已有得订户记录)类型3:DELETE(删除一个已有得订户记录)事务就是按订户名字得字母顺序排序得。

如果对一个订户既有修改事务又有删除事务,则已对那个订户得事务排好次序了,以便使修改发生在删除之前。

2.分析图3、1所示得层次图,确定每个模块得内聚类型。

3.分析图3、2,确定模块之间得耦合类型。

在图3、2中已经给模块之间得接口编了号码,表3、1描述了模块间得接口。

4、假设您在一所职业高中工作,负责该校信息系统得建设与维护。

财务科长请您研究用学校拥有得微型计算机生成工资明细表与各种财务报表得可能性。

请详细描述您用结构化分析方法分析上述问题得过程。

用面向数据流方法设计工资支付系统得软件结构。

5.用3种方法计算图3、3所示流图得环形复杂度。

6、图3、4就是用程序流程图描绘得程序算法,请把它改画为等价得盒图。

7、某交易所规定给经纪人得手续费计算方法如下:总手续费等于基本手续费加上与交易中得每股价格与股数有关得附加手续费。

如果交易总金额少于1000元,则基本手续费为交易金额得8、4%;如果交易总金额在1000元到10000元之间,则基本手续费为交易金额得5%,再加34元;如果交易总金额超过10000元,则基本手续费为交易金额得4%加上134元。

当每股售价低于14元时,附加手续费为基本手续费得5%,除非买进、卖出得股数不就是100得倍数,在这种情况下附加手续费为基本手续费得9%。

当每股售价在14元到25元之间时,附加手续费为基本手续费得2%,除非交易得股数不就是100得倍数,在这种情况下附加手续费为基本手续费得6%。

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

软件体系结构课后习题第三章作业
题1.层次系统结构和基于消息的层次系统结构有什么区别?
答:层次系统组织成一个层次结构,每一层为上层服务,并作为下层客户。

在一些层次系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。

这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层是部分不透明的)。

连接件经过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。

这种风格支持基于可增加抽象层的设计。

允许将一个复杂问题分解成一个增量步骤序列的实现。

由于每一层最多只影响两层,同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同样为软件重用提供了强大的支持。

而在基于消息的层次系统结构中构件不直接调用一个过程,而是触发或广播一个或多个事件。

系统中的其它构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。

这种风格的构件是一些模块,模块既能够是一些过程,又能够是一些事件的集合。

过程能够用通用的方式调用,也能够在系统事件中注册一些过程,当发生这些事件时,过程被调用。

这种风格的主要特点是事件的触发者并不知道哪些构件会被这些事件影响。

这样不能假定构件的处理顺序,甚至不知道哪些过程会被调用,因此,许多隐式调用的系统也包含显式调用作为构件交互的补充形式。

题2.分析比较B/S、二层C/S和三层C/S,指出各自的优点和缺点。

二层C/S结构的优点:
◆C/S 体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。

◆系统的客户应用程序和服务器构件分别运行在不同的计算机上,系统中每台服务器都能够适合各构件的要求,这对于硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。

◆在C/S体系结构中,系统中的功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中于数据的管理,不必在每一个新的应用程序中都要对一个DBMS进行编码。

将大的应用处理任务分布到许多经过网络连接的低成本计算机上,以节约大量费用
二层C/S结构的缺点:
◆开发成本较高
◆客户端程序设计复杂
◆信息内容和形式单一
◆用户界面风格不一,使用繁杂,不利于推广使用
◆软件移植困难
◆软件维护和升级困难
◆新技术不能轻易应用
三层C/S结构的优点:
◆允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,能提高系统和软件的可维护性和可扩展性。

◆允许更灵活有效地选用相应的平台和硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层;而且这些平台和各个组成部分能够具有良好的可升级性和开放性。

◆应用的各层能够并行开发,能够选择各自最适合的开发语言。

◆利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,为严格的安全管理奠定了坚实的基础。

三层C/S结构的缺点:
◆三层C/S结构各层间的通信效率若不高,即使分配给各层的硬件能力很强,其作为整体来说也达不到所要求的性能。

◆设计时必须慎重考虑三层间的通信方法、通信频度及数据量。

这和提高各层的独立性一样是三层C/S结构的关键问题。

B/S体系结构的优点:
◆基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。

用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。

◆B/S体系结构还提供了异种机、异种网、异种应用服务的联
机、联网、统一服务的最现实的开放性基础。

B/S体系结构的缺点:
◆B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。

◆B/S体系结构的系统扩展能力差,安全性难以控制。

◆采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。

◆B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。

题3.组织或参与一个采用B/S和C/S混合体系结构的软件项目的开发,总结开发经验。

首先,开发者根据一定的原则,将系统的所有子功能分类,决定哪些子功能适合采用C/S,哪些适合采用B/S。

适合采用C/S的子功能应具备以下特点:1安全性要求高;2要求具有较强的交互性;3使用范围小,地点固定;4要求处理大量数据。

例如,仓库管理系统中的入库单、领料单的输入功能,财务系统中的凭证输入功能等等。

而适合采用B/S的子功能应具备以下特点:1使用范围广,地点灵活;2功能变动频繁;3安全性、交互性要求不同。

例如:企业内部信息发布功能,意见箱输入功能,公司财务分析表的查询功能,总裁决策。

相关文档
最新文档