下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1、构件是核心和基础,重用是必需的手段。2、软件重用是指在两次或多次不同的软件软件开发过程中重复使用相同或相近软件元素的过程。3、软件元素包括程序代码、设计文档、设计过程、需求分析文档甚至领域知识。4、把可重用的元素称作软构件,简称为软构件。5、可重用软件元素越大,就说重用的粒度越大。6、构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和代码实现的复合体。7、面向对象技术达到类级重用,以类为封装的单位。8、构件模型是对构件本质特征的抽象描述。三个主要流派,分别是OMG(对象管理组织)的CORBA(通用对象请求代理结构卜Sun
2、的EJB和Microsoft的DOM(分布式构件对象模型)。9、获取构件的四个途径:(1)从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可重用构件。(2)通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用构件。(3)从市场上购买现成的商业构件,即COTS构件。(4)开发符合要求的构件。10、构件分类方法三大类:关键字分类、刻面分类法、超文本组织方法11、构件检索方法:基于关键字的检索、刻面检索法、超文本检索法和其他检索方法。12、减少构件修改的工作量,要求工作人员尽量使构件的功能、行为和接口设计更为抽象画、通用化和参数化。13、构件组装技术:基于功能的组装技术、基于数据的
3、组装技术和面向对象的组装技术。14、软件体系结构的定义:软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。软件体系结构的意义:(1)体系结构是风险承担者进行交流的手段;(2)体系结构是早期设计决策的体现-软件体系结构明确了对系统实现的约束条件软件体系结构决定了开发和维护组织的组织结构软件体系结构制约着系统的质量属性通过研究软件体系结构可能预测软件的质量软件体系结构使推理和控
4、制更改更简单软件体系结构有助于循序渐进的原型设计软件体系结构可以作为培训的基础;(3)软件体系结构是可传递和可重用的模型。软件体系结构发展的四个阶段:(1)无体系结构设计阶段。以汇编语言进行小规模应用程序开发为特征。(2)萌芽阶段。出现了程序结构设计主题,以控制流图和数据流图构成软件结构为特征。(3)初期阶段。出现了从不同侧面描述系统的结构模型,以UML为典型代表。(4)高级阶段。以描述系统的高层抽象结构为中心,不关心具体的建模细节,划分了体系结构与传统软件结构的界限,该阶段以Kruchten提出的“4+1”模型为标志。通用体系结构风格分类数据流风格:批处理序列、管道与过滤器。调用/返回风格:
5、主程序与子程序、面向对象风格、层次结构。独立构件风格:进程通信、事件系统。虚拟机风格:解释器、基于规则的系统。仓库风格:黑板系统、传统型数据库。管道与过滤器特点:(1)使得软构件具有良好的内聚、耦合的特点。(2)允许设计师将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成。(3)支持软件重用。(4)系统维护和增强系统性能简单。(5)允许对一些如吞吐量、死锁等属性的分析。(6)支持并行执行。缺点:(1)通常导致进程成为批处理的结构。(2)不适合处理交互的应用。(3)系统性能下降,并增加了编写过滤器的复杂性。结构示意图:面向对象系统优点:(1)因为对象对其他对象隐藏它的表示,所以可以改变一
6、个对象的表示,而不影响其它的对象。(2)设计师可将一些数据存取操作的问题分解成一些交互的代理程序的集合。缺点:(1)为了使一个对象和另一个对象通过过程调用等进行交互,必须知道对象的标识。只要一个对象的标识改变了,就必须修改所有其他明确调用它的对象。(2)必须修改所有显示调用它的其他对象,并消除由此带来的一些副作用。基于事件的隐式调用思想:构件不直接调用一个过程,而是出发或广播一个或多个事件。应用系统的例子:(1)在编程环境中用于集成各种工具,在数据库管理系统中确保数据的一致性约束,在用户界面系统中管理数据,以及在编辑器中支持语法检查。(2)某系统中,编辑器和变量监视器可以登记相应Debugge
7、r的断点事件。当Debugger在断点处停下时,它声明该事件,由系统自动调用处理程序,如编辑程序可以卷屏到断点,变量监视器刷新变量数值。优点:1、为软件重用提供了强大的支持。2、为改进系统带来了方便。缺点:(1)构件放弃了对系统计算的控制。(2)数据交换的问题。(3)既然过程的语义必须依赖于被触发事件的上下文约束,关于正确性的推理存在问题。分层系统举例:层次系统最广泛的应用是分层通信协议。在这一应用领域中,每一层提供一个抽象的功能,作为上层通信的基础。较低的层次定义低层的交互,最低层通常只定义硬件物理连接。优点:1、支持基于抽象程度递增的系统设计,使设计者可以把一个复杂的系统按照递增的顺序分解
8、。2、支持功能增强,因为每一层至多与相邻的上下层进行交互,因此功能改变最多影响相邻的上下层。3、支持重用。只要提供的服务接口定义不变,同一层的不同实现可以交换使用。缺点:(1)并不是每个系统都可以很容易地划分为分层的模式,甚至即使一个系统的逻辑结构是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来。(2)很难找到一个合适的、正确的层次抽象方法。仓库系统传统型数据库:输入流中某类时间触发进程执行的选择。黑板系统:中央数据结构的当前状态触发进程执行的选择。组成部分:(1)知识源(2)黑板数据结构(3)控制客户/服务器风格优点:(1)具有强大的数据操作和事务处理能力,模
9、型思想简单,易于人们理解和接受。(2)系统的客户应用程序和服务器构件分别运行在不同的计算机上,系统中每台服务器都可以适合各构件的要求,这对于硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。(3)系统中的功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中于数据的管理,不必在每一个新的应用程序中都要对一个DBMS进行编码。将大的应用处理任务分布到许多通过网络连接的低成本计算机上,以节约大量费用。缺点:(1)开发成本较高;(2)客户端程序设计复杂;(3)信息内容和形式单一;(4)用户界面风格不一,使用繁杂,不利于推广使用;(5)软件移植困
10、难;(6)软件维护和升级困难;(7)新技术不能轻易应用。集中式计算技术的缺点:(1)随着系统规模的扩大和功能的提高,集中式系统的复杂性迅速增长,给管理、维护带来困难;(2)对组织变革和技术发展的适应性差,应变能力弱;(3)不利于发挥用户在系统开发、维护、管理方面的积极性与主动精神;(4)系统比较脆弱。主机出现故障时可能使整个系统停止工作。服务器主要任务:(1)数据库安全性的要求;(2)数据库访问并发性的控制;(3)数据库前端的客户应用程序的全局数据完整性规则;(4)数据库的备份与恢复。客户应用程序主要任务:(1)提供用户与数据库交互的界面;(2)向数据库服务器提交用户请求并接收来自数据库服务器
11、的信息;(3)利用客户应用程序对存在于客户端的数据执行应用逻辑要求。三层C/S风格与二层C/S体系结构的不同:优点:1、允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统和软件的可维护性和可扩展性。2、允许更灵活有效地选用相应的平台和硬件系统,使之在处理负何能力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各个组成部分可以具有良好的可升级性和开放性。3、应用的各层可以并行开发,各层也可以选择各自最适合的开发语言,使之高效并行地开发,达到较高的性能价格比;对每一层的处理逻辑的开发和维护也会更容易些。4、允许充分利用功能层有效地隔离开表示
12、层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,为严格的安全管理奠定了坚实的基础;整个系统的管理层次也更加合理和可控制。表示层、功能层、数据层主要功能三层风格不同物理结构比较表示层:表示层是应用的用户接口部分,它担负着用户与应用间的对话功能功能层:功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序中数据层:数据层就是数据库管理系统,负责管理对数据库数据的读写服务器II功能层敏据鼠功能以襄示层客户机(1)将数据展和功能层放在同台服务器t将故据层和功能层放在不同的服务器上功能层表示层0)将功能层放在客户机上中间件概念:是一个用API定义的软件层,是具有强大
13、通信能力和良好可扩展性的分布式软件管理框架。功能:在客户机和服务器或者服务器和服务器之间传送数据,实现客户机群和服务器群之间的通信。浏览器/服务器风格模式结构示意图:7与c/s比较其优点:1、基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。2、B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。缺点:1、B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。2、B/S体系结构的系统扩展能力差,安全性难以控制。3、
14、采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地高于C/S体系结构。4、B/S体系结构的数据提交一般以页面为单位,数据的动态交互性强,有利于在线事务处理(OLTP)应用。公共对象请求代理结构CORBA:是由OMG制定的一个工业标准,其主要目标是提供一种机制,使得对象可以透明地发出请求和获得应答,从而建立起一个异质的分布式应用环境接口定义语言:CORBA的XML是一种说明性语言,描述面向对象系统开发所遵循的接口与实现相分离的基本原则。调用机制:把IDL说明编译成面向对象程序设计语言的实代码后,客户可以调用已知对象的操作。在某些应用中,用户并不了解应用接口编译信息,但也要求调用对象的
15、操作,这时就要动态调用接口来调用用户的操作了。异构结构风格不同的体系结构有不同的处理能力,面对具体问题,混合软件体系结构处理问题能够结合各自的优点,这种体系结构被称为异构结构。SOA定义:是一种在计算环境中设计、开发、部署和管理离散逻辑单元(服务)模型的方法。SOA建立在SML等新技术的基础上,通过使用基于SML的语言来描述接口,服务已经转到更动态且更灵活的接口系统中,CORBA中的XML无法与之相比。SOA的特征:松散耦合、粗粒度服务、标准化接口面向服务的分析与设计三个主要抽象级别:操作、服务、业务流程SOAD与OOAD的关系:(1)综合了面向对象的分子与设计(OOAD)、企业体系结构(EA
16、)、和业务流程建模(BPM)中的适当原理,将这些规则中的原理与许多独特的新原理组合起来,提出了面向服务的分析与设计(SOAD(2) OOAD从基础设计层为SOAD提供了理论支撑。(3) OOAD现有的开发流程和表示法仅涵盖支持SOA范式所需要的部分要求。SOA服务栈:发现服务层:SOAP、REST描述服务层:WSDL、XMLSchema消息格式层:UDDI、DISCO编码格式层:XML传输协议层:HTTP、TCP/IP、SMTP第9章RIA”富”的含义:1.丰富的数据模型:意味着客户端的用户界面能表现和应对更多更复杂的数据模式,这样才能处理客户端的运算以及异步发送,接收数据。2.丰富的用户界面
17、:RIA能提供更多改良界面,HTML只能为用户的界面控制提供有限的功能,RIA允许一些富有创造性的界面控制,巧妙地与数据模式相合。RIA客户端开发技术:I.MacromediaFlash/Flex2.AJAX3.Laszlo4.Avalon5.JavaEE6.XUL7.Bindows8.OracleFormsAJAX技术:是由几种蓬勃发展的技术以新的方式组合而成的,包含基于XHTML和CSS标准的表示;使用DOM进行动态显示和交互;使用XMLHttpRequest与服务器进行异步通信;使用JavaScript绑定一切。1.XML2.XHTML3.JavaScript4.XMLHttpReque
18、st5.DOM6.XSLT7.CSS借助于AJAX,可以在用户单击按钮时,使用JavaScript和XHTML立即更新用户界面,并向服务器发出异步请求,以执行更新或查询数据库。当请求返回时,就可以使用JavaScript和CSS来相应地更新用户界面,而不是刷新整个页面。更重要的是,用户甚至不知道浏览器正在与服务器通信,Web站点看起来是即时响应的。第12章设计模式是前人经验的总结,它使人们可以方便地复用成功的设计和体系结构。简单的理解,是一些设计面向对象的软件开发的经验总结。一个设计模式事实上是系统地命名,解释和评价某一个重要的可重现的面向对象的设计方案。受到普遍认可的设计模式定义:是由Dir
19、kRiehle和HeinzZullighoven于1996年在其论文UnderstandingandUsingPatternsinSoftwareDevelopment中给出的;”模式是指从某个具体的形式得到的一种抽象,在特殊的非任意性的环境中,该形式不断地重复出现MVC设计模式:把交互系统的组成分解成模型Model,视图View,控制Controller三种构件,是一种交互界面的结构组织模型。设计模型的基本成分:1.模式名称:通常用来描述一个设计问题,它的解法和效果,由一到两个词组成。模式名称的产生使人们在更高的抽象层次上进行设计并交流设计思想。2 .问题:告诉人们什么时候要使用设计模式,解
20、释问题及其背景。设计模式用术语”强制条件”来说明问题要解决时应该考虑的各个方面:(1)解决方案必须满足的需求(2)必须考虑的约束(3)解决方案必须具有期望的特性。如MVC模式指出了两个强制条件:必须易于修改用户界面,但软件的功能核心不能被修改所影响。3 .解决方案:解决方案描述设计的基本要素:它们的关系,各自的任务以及相互之间的合作。解决方案包括两个方面:第一,每个模式规定了一个特定的结构,即元素的一个空间配置。第二,每个模式规定了运行期间的行为。4 .效果:效果描述应用设计模式后的结果和权衡。5.设计模式的分类:1,创建型模式(1)工厂方法模式(2)抽象工厂模式(3)原型模式(4)单例模式(
21、5)建造者模式2,结构式模式(1)适配器模式(2)桥接模式(3)组合模式(4)装饰模式(5)外观模式(6)亨元模式(7)代理模式3,行为模式(1)职责链模式(2)命令模式(3)解释器模式(4)迭代器模式(5)中介者模式(6)备忘录模式(7)观察者模式(8)状态模式(9)策略模式(10)模板方法模式(11)访问者模式多项选择题1、青鸟构件库采用B.刻面一分类方法对构件进行分类。这些刻面包括:使用环境,应用领域,功能,层次,表示方法,2、软件体系结构是整个系统的骨架,在软件开发中起着非常重要的作用。下面关于关于软件体系结构作用的描述正确的有ABCD。A.体系结构是风险承担者进行交流的手段B.软件体
22、系结构决定了开发和维护组织的组织结构C.通过研究软件体系结构可能预测软件的质量D.软件体系结构有助于循序渐进的原型设计B3、客户/服务器风格的应用程序中客户应用程序的主要任务不包括:_B.数据库的备份与恢复。A4从概念上讲,SOA有三个主要的抽象级别,分别是操作、服务和业务流程。其中,SOA_操住可以直接与面向对象的方法相比,它们都有特定的结构化接口,并且返回结构化的响应,完全同方法一样。CD5、下列关于设计模式的叙述正确的有。C.模式不仅描述模块,它给出更深层的系统结构和机理D.模式通过记录得到解B6、根据目的和用途的不同,设计模式可分为创建型模式、结构型模式和行为型模式。下列模式中不属于创
23、建型模式的是B.桥接模式。判断题(F)传统型数据库是一种黑板系统,由中央数据库的当前状态触发进程执行的选择.(T)面向对象风格属于通用体系结构风格分类中的调用/返回风格.填空题1、在构件重用的过程中,为了减少构件修改的工作量,要求开发人员尽量使构件的功能、行为和接口设计更为抽象化、通用化和参数化。这样构件的用户即可通过对实参的选取来调整构件的功能或行为。?2、网络体系结构是一个典型的分层系统,这种风格的体系结构中,连接件通过算法(决定层间如何交互的协议)来定义。问答题1、简述构件分类方法中关键字分类法的基本思想及其相应检索方法。P7P10根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序
24、逐次分解为树状或有向无回路图结构。每个概念用一个描述性的关键字表示。不可分解的原子级关键字包含隶属于它的某些构件。基于关键字的检索:系统在图形用户界面上将构件库的关键字树状结构直观地展示给用户;用户通过对树状结构的逐级浏览寻找需要的关键字并提取相应地构件。当然,用户也可以直接给出关键字,由系统自动给出合适的候选构件清单。优点:简单,易于实现,但在某些场合没有应用价值,因为用户往往无法用构件库中已有的关键字描述期望的构功能或行为,对库的浏览也容易使用户迷失方向。2、简述基于事件系统的基本思想。P52构建不直接调用一个过程,而是触发或广播一个或多个事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。3、与两层C/S相比,三层C/S结构主要优点是什么?(1)允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统和软件的可维护性和可扩展性。(2)允许更灵活有效地选用相应的平台和硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各个组成部分可以具有良好的可升级性和开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 屈营学校2024年防溺水工作方案
- 物联网服务合同
- 2024八年级数学第一学期教学工作总结
- 纳税筹划协议
- 产品协议模板
- 业务进出口合同
- 纳税融资租赁协议
- 教育产业贷款服务合同模板
- 热力管道施工方案
- 合作伙伴协议
- 《新媒体导论》(第二版)课件 -第1、2章 理解新媒体:多重属性的复合、新媒体时代的传媒业:边界消融与版图重构
- 河北省唐山市迁安市六年级上册英语期中试题
- 细胞工程学:第9章 植物离体受精
- 山东省菏泽市2023年八年级上学期期中数学试题(附答案)
- 统编版高一语文必修上册主题写作:“生命的诗意”作文+课件19张
- 中餐菜单菜谱
- 二十四节气立冬
- MORA-Super技术与功能(完整版)
- 第一单元劳动编织美好生活(教案)四年级上册综合实践活动劳动教育通用版
- 外墙铝格栅施工方案
- 医院家庭病床工作流程及注意事项学习培训课件
评论
0/150
提交评论