课件—UML系统建模与分析设计(9).ppt_第1页
课件—UML系统建模与分析设计(9).ppt_第2页
课件—UML系统建模与分析设计(9).ppt_第3页
课件—UML系统建模与分析设计(9).ppt_第4页
课件—UML系统建模与分析设计(9).ppt_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020/5/16,UML系统建模与设计,1,UML系统建模与分析设计,第九章软件复用与构件接口技术,本章目的:了解软件复用技术的组织和实施了解CORBA、COM+、EJB模型的特点和使用方法了解集成化CASE工具开发环境的特点和用途了解和掌握持久对象的存储、管理特点和使用方法了解和掌握客户/服务器(C/S)、浏览器/服务器(B/S)、分布式体系结构设计的特点,2020/5/16,UML系统建模与设计,2,UML系统建模与分析设计,9.1面向对象技术的发展与技术支持,2020/5/16,UML系统建模与设计,3,UML系统建模与分析设计,9.2软件复用技术的发展与应用9.2.1软件复用的形式与过程1可复用的软件制品种类凯波.琼斯(CaperJones)提出可以复用的软件制品有:项目计划:书写格式结构及进度表、风险分析等内容;成本估算:各种项目相似的功能模块成本大体相当;体系结构:应用系统的体系结构非常相似,可建立模版进行复用;需求模型:需求分析中的对象类模型及规约等分析模型;设计模型:系统设计、对象设计及体系结构、数据、接口等设计;,2020/5/16,UML系统建模与设计,4,UML系统建模与分析设计,设计模式:各种经过验证、已经在使用的设计模式。程序代码:经过实际运行检验过的程序代码;文档资料:用户文档资料和技术文档资料;用户界面:图形用户界面复用率达60%;数据构成:数据存储结构、文件、完整的数据库及内部表等;测试案例:与被复用的设计和代码相应的测试案例。,2020/5/16,UML系统建模与设计,5,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,6,UML系统建模与分析设计,2软件复用的过程抽象:描述该软件制品的功能、使用范围和特点;存储:以关键字作为索引,放置在“可复用软件制品库”中备用;检索:利用关键字,从可复用软件制品库检索挑选适合新系统功能要求的软件制品;实例化:对选取的软件制品进行简单修改调试,变成能适合新系统要求的软件制品;系统集成:最后进行系统集成,完成新系统的组建。,2020/5/16,UML系统建模与设计,7,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,8,UML系统建模与分析设计,3软件复用的形式(1)根据复用跨越的问题领域划分1)垂直式复用:在同一应用领域中的复用。2)水平式复用:在不同应用领域中复用通用的软件元素。(2)根据实现复用的途径划分1)组装(集成)式复用:2)生成式复用:(3)根据复用方式划分1)黑盒复用:对可复用构件不加任何修改,原封不动地复用。2)白盒复用:对可复用构件进行部分修改,以便适应新系统的要求。,2020/5/16,UML系统建模与设计,9,UML系统建模与分析设计,9.2.2软件复用的类型与特点(1)代码和设计复制特点:简单复制、稍加修改、简单集成和版权所有。优点:省时省力、适用于简单系统的制作。缺点:受源系统设计风格影响较大、不适用复杂系统的制作。(2)软件构件复用特点:专为复用开发、功能特征描述、通过过程调用、商业化购买。优点:调用方便、可靠性高。缺点:构件库庞大臃肿、开发费用高。,2020/5/16,UML系统建模与设计,10,UML系统建模与分析设计,(3)已有软件系统体系结构复用特点:支持高、低层次层次复用、体系结构和设计有简洁、通过接口进行集成。优点:可以复用规模较大的软件制品、只需要进行局部修改。缺点:抽象出简明的描述困难、存放体系结构的数据库难以管理。(4)应用程序自动生成器特点:自动生成可执行系统、可以填充原先没有的细节、适用成熟的领域。优点:自动化程度高、可以获得某些特定领域的标准、用黑盒形式生成程序。缺点:设计和构造通用的应用程序生成器非常困难。,2020/5/16,UML系统建模与设计,11,UML系统建模与分析设计,(5)特定领域软件体系结构复用特点:对该领域必须有深刻透彻的了解、有一个专用支持库、随时修正模型、基准体系结构和支持库;通过标准接口进行集成。优点:对可复用构件的组合提供了一个通用框架。复用程度高。缺点:前期开发投入费用庞大。,2020/5/16,UML系统建模与设计,12,UML系统建模与分析设计,9.2.3可复用软件构件的生产与使用过程(1)软件构件的生产领域分析、基准模型、寻找构件、性能分析、创建构件、构件测试、商业包装。(2)软件构件的使用体系结构、寻找构件、筛选构件、修改构件、软件开发、组装构件、集成测试和评价。,2020/5/16,UML系统建模与设计,13,UML系统建模与分析设计,9.2.4软件复用的基础可复用构件系统(1)可复用构件的标准通用性、可变性、易组装、检索性、可靠性。(2)构件模型COM+、EJB/J2EE、CORBA等。(3)构件系统系统化、关联化、集成化。(4)构件系统与应用系统的差别(5)构件系统的体系结构(6)构件库的管理构件的检索、删除和评估。一般常用的构件检索方法有:规约匹配、特征匹配、轮廓匹配和采样匹配。,2020/5/16,UML系统建模与设计,14,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,15,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,16,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,17,UML系统建模与分析设计,9.2.5可复用软件的系统化生产与复用(1)创建过程:标识和提供可复用资产。(2)支持过程:对可复用资产的获取、管理和维护提供全面支持。(3)复用过程:利用可复用资产生产应用软件产品。(4)管理过程:对系统地软件复用全过程进行统筹、计划和协调。,2020/5/16,UML系统建模与设计,18,UML系统建模与分析设计,各部门职责:(1)系统开发部门:可复用构件创建者。(2)应用开发部门:可复用构件使用者。(3)支持部门:完成前两个部门不能涉及而又必须做的工作。(4)高层经理:在3个职能部门之上。,2020/5/16,UML系统建模与设计,19,UML系统建模与分析设计,9.3构件接口技术9.3.1COM+构件模型的系统体系结构COM+是Microsoft公司推出的适用于Windows系统操作平台的一种构件接口技术。1COM+的基本结构与特点(1)COM+的基本结构(2)COM+的基本特点:异步通讯、事件服务、灵活、可管理和部署、易开发。,2020/5/16,UML系统建模与设计,20,UML系统建模与分析设计,2COM+构件的特征(1)COM+编程模型:由COM+构件建成;要符合基本规则并与COM+交互。(2)代理进程和对象描述表(3)即时激活机制(4)COM+构件的I/O对象控制接口(5)COM+目录(6)事务管理(7)安全模型,2020/5/16,UML系统建模与设计,21,UML系统建模与分析设计,3COM+系统组成,2020/5/16,UML系统建模与设计,22,UML系统建模与分析设计,(1)运行环境。COM+运行环境是构件容器(2)构件服务管理系统。构件服务管理系统是Windows2000管理工具的一部分;(3)COM+应用。每个COM+对应于MTS中的一个包;(4)资源分配系统。分配数据库连接、网络连接、对象和内存块等资源;(5)分布式事务协调系统。,2020/5/16,UML系统建模与设计,23,UML系统建模与分析设计,4COM+系统服务(1)负载平衡应用模型,2020/5/16,UML系统建模与设计,24,UML系统建模与分析设计,(2)COM+事件模型,2020/5/16,UML系统建模与设计,25,UML系统建模与分析设计,(3)COM+队列化构件COM+的关键特性,提供了一种基于消息的异步运行方式。图9-13队列化构件的基本模型响应队列:采用响应队列方法回送返回信息;队列方式:构件对象以异步方式通知客户的应用系统。,2020/5/16,UML系统建模与设计,26,UML系统建模与分析设计,(4)COM+对象池(5)驻留内存数据库,2020/5/16,UML系统建模与设计,27,UML系统建模与分析设计,9.3.2EJB构件模型的系统体系结构Sun公司提出的基于Java的、适合服务器端构件体系结构的、完整的企业级应用开发平台和技术规约。1EJB系统和体系结构(1)EJB的体系结构1)EJB客户机2)EJB服务器3)EJB容器:EJB容器管理EJB构件。,2020/5/16,UML系统建模与设计,28,UML系统建模与分析设计,(2)EJB的特点:层次清晰、编程简单、通用编程模型、完全OO。(3)EJB构件的基本类型:有/无状态会话型、实体型和信息驱动型。,2020/5/16,UML系统建模与设计,29,UML系统建模与分析设计,(4)EJB构件的应用过程1)为每个EJB构件设置本机接口和远程接口及其实现类的方法;2)定义远程接口的实现类;3)设置EJB构件的控制信息;4)EJB构件的归档文件;5)部署EJB构件:6)EJB构件的应用客户端编程。,2020/5/16,UML系统建模与设计,30,UML系统建模与分析设计,2J2EE系统体系结构(1)EJB:J2EE规约中最重要的技术。(2)RMI(RemoteMethodInvocation):是EJB构件和客户端的通信应用编程接口。(3)JNID(JavaNamingandDirectoryInterface,命名和目录接口)。(4)JDBC(JavaDataBaseConnectivity):跨平台访问各种数据库。(5)JMS(JavaMessagingService):实现消息驱动EJB构件的基础。,2020/5/16,UML系统建模与设计,31,UML系统建模与分析设计,(6)JTA(JavaTransactionAPI):高层次事务处理应用编程接口。(7)JSP(JavaServerPages):用HTML书写,可夹杂Java语言。(8)JIDL(Java接口定义语言):JavaIDL是CORBA规约的Java实现。(9)JavaMail:允许在Java程序中发送电子邮件,与工作平台和协议无关。(10)XML(可扩展标记语言):J2EE技术靠XML作为元标记语言描述。,2020/5/16,UML系统建模与设计,32,UML系统建模与分析设计,2020/5/16,UML系统建模与设计,33,UML系统建模与分析设计,9.3.3CORBA模型的系统体系结构CORBA(CommonObjectRequestBrokerArchitecture,通用对象请求代理体系结构)由对象管理组织OMG制定的,是体系结构最完整、最清晰、跨越平台最多的分布式对象模型,CORBA是一套规约。1CORBA模型(1)对象管理模型:应用对象、公共服务、对象请求代理(ORB)和对象服务。图9-17CORBA对象管理模型,2020/5/16,UML系统建模与设计,34,UML系统建模与分析设计,(2)ORB的体系结构:分布式、跨平台操作、不依赖特定语言。1)客户机:通过CORBA对象的引址向其发送消息。2)客户桩:由IDL编译而成的客户端代码段。3)ORB:根据对象引用,定位相应的远程对象实现。4)对象适配器:把CORBA对象概念适配为编程语言的服务体概念5)实现骨架:由IDL编译而成的服务器端代码框架。6)服务器对象:服务器端远程对象实现。,2020/5/16,UML系统建模与设计,35,UML系统建模与分析设计,2OMG接口定义语言IDL是CORBA的重要组成部分,是一种严格定义的接口定义语言,是定义接口的公认标准。3CORBA系统的对象调用过程(1)对象调用过程,2020/5/16,UML系统建模与设计,36,UML系统建模与分析设计,(2)对象引址的获取:调用连接操作、命名服务、CORBA互操作对象引址。(3)CORBA接口调用:静态方法和动态调用接口,2020/5/16,UML系统建模与设计,37,UML系统建模与分析设计,9.4面向对象数据库管理系统持久对象是独立于其构造过程的对象。一般由面向对象数据库管理系统负责管理。9.4.1持久对象的完整性和安全性面向对象数据库管理系统设计时必须保证持久对象的完整性和安全性:(1)完整性。(2)可靠性。(3)隔离性。(4)持久性。,2020/5/16,UML系统建模与设计,38,UML系统建模与分析设计,9.4.2面向对象数据库与持久对象1持久对象的存取1)暂时对象通过数据库根(对象引址)直接存储到面向对象数据库中;2)存储的对象和实际使用的暂时对象完全一致,不用进行任何转换。3)从数据库中检索、查询和修改对象,也要通过数据库根进行。,2020/5/16,UML系统建模与设计,39,UML系统建模与分析设计,2持久对象的生成与清除,2020/5/16,UML系统建模与设计,40,UML系统建模与分析设计,9.4.3关系数据库与持久对象关系数据库由一系列关系二维表格组成。表间通过关键字进行连接。1持久对象到表格的转换一个持久对象类映射为一个关系表格时,表格的列或字段对应类的属性,而行或记录对应类的实例(对象)。,2020/5/16,UML系统建模与设计,41,UML系统建模与分析设计,2持久对象的存取必须经过转换成才能使用。转换系统是一个专用转换程序构件。图9-22关系数据库中持久对象的存取必须经过转换,2020/5/16,UML系统建模与设计,42,UML系统建模与分析设计,9.3.4关系数据库与面向对象数据库比较表9-1对象数据库与关系数据库之比较,2020/5/16,UML系统建模与设计,43,UML系统建模与分析设计,9.5分布式系统体系结构模型9.5.1客户机/服务器模型客户机:负责向用户展示工作内容,向服务器发送消息并接收返回消息;服务器:负责协调网络上各个客户机的通信及处理底层工作,如数据库的运作等。图9-23简单客户机/服务器模型,2020/5/16,UML系统建模与设计,44,UML系统建模与分析设计,客户机/服务器模型的优点:客户机与服务器分离,允许长距离连线运作。两者可同时开发,也可分别进行;一个服务器可以服务于多个客户机。该模型的不足之处:客户机与服务器通过网络进行通信,服务器忙时,可能成为通信制约瓶颈;务器及接口定义发生改变时,则客户机也要作出相应的修改,当客户机数量多(近千台)时,每个客户机都要求有最新软件版本,工作量极大。,2020/5/16,UML系统建模与设计,45,UML系统建模与分析设计,为避免该模型的不足,可以采用以下方法解决:(1)通信制约瓶颈减少对服务接口的启始连接;减少远程调用;减少排队等待;利用网络动态等待时间差。(2)众多客户机软件版本更新,2020/5/16,UML系统建模与设计,46,UML系统建模与分析设计,9.5.2浏览器/服务器模型B/S结构优点是安装和维护方便(仅仅对服务器进行安装和维护),系统扩展也比较简单。鉴于C/S和B/S模式的各自特点,不可能一刀切的说哪个好还是哪个坏,需要根据应用环境的不同采取不同的软件结构模式。主要有两者的混合模式和在两层C/S基础上发展起来的多层C/S模式。混合模式是利用C/S、B/S模式不同的优点来构架应用系统。,2020/5/16,UML系统建模与设计,47,UML系统建模与分析设计,图9-24B/S结构示意图,2020/5/16,UML系统建模与设计,48,UML系统建模与分析设计,9.5.3分布式网络计算技术与模型分布计算环境的特点:提供了统一的分布式软件框架和基本的分布式服务支持;简化了分布式应用的开发;提高了可重用性、可移植性和分布式应用之间的互操作性;比网络计算环境具有更好的灵活性,支持信息共享和协同工作;消除了操作平台之间的限制;远程调用消除了客户间地理距离的间隔;用户在进行网络计算时不必关心网络传输过程。,2020/5/16,UML系统建模与设计,49,UML系统建模与分析设计,主要分布计算技术有:(1)跨平台互操作技术(2)远程过程调用技术(3)分布式持久数据(对象)支持技术(4)并发运行机制(5)分布式计算环境的基本服务技术,2020/5/16,UML系统建模与设计,50,UML系统建模与分析设计,9.6集成化CASE工具软件开发环境9.6.1CASE工具的种类及其特征1CASE工具的分类(1)用于需求分析的CASE工具(2)用于系统分析和设计的CASE工具(3)用于系统实现的CASE工具(4)用于系统测试的CASE工具(5)用于系统维护的CASE工具(6)用于项目管理的CASE工具(7)用于框架支撑CASE工具(8)用于智能化原型建模的CASE工具,2020/5/16,UML系统建模与设计,51,UML系统建模与分析设计,2CASE工具的集成化(1)第一代:建立在操作系统之上(如VMS和UNIX等)。(2)第二代:具有真正的数据库(如INGRES),而不是文件库,有时称为信息库,多数采用E-R模式或E-R-A模式。(3)第三代:建立在知识库系统上。现代的集成化环境的具体特点:(1)集成化的CASE环境应达到的功能要求1)共享软件工程信息库:环境下所有工具都可访问,是集成化环境的核心2)风格一致的界面和方便、安全、可靠的操作管理机制3)任务分解与软件质量控制,2020/5/16,UML系统建模与设计,52,UML系统建模与分析设计,(2)集成化CASE环境的系统层次结构1)系统支持层。提供对环境的硬件和操作系统等底层支持。2)系统服务层。提供对连接系统支持层与通用层之间的可移植性的服务。3)系统集成框架层。该层为通用系统层,功能构件有:4)CASE工具层。通用系统层,包含多种专用功能CASE工具。,2020/5/16,UML系统建模与设计,53,UML系统建模与分析设计,3集成化CASE环境的优点(1)信息共享:以工程开发信息数据库为核心共享全部软件开发数据。(2)提高软件生产率:大量减少开发人员工作量,加快开发速度。(3)保证软件质量:协调一致的模型和自动程序生成系统可有效地保证软件质量。(4)降低大型软件项目的开发费用:大型项目开发团队可能各组分散在不同区域,同时对各自负责的子系统进行开发。各开发小组要靠信息进行沟通来协调相互之间的工作。,2020/5/16,UML系统建模与设计,54,UML系统建模与分析设计,9.6.2集成化CASE环境系统体系结构1CASE工具集成环境的演变(1)文件格式转换的简单集成方式优点:免除信息重复录入和校对工作;实现CASE工具点对点的信息交换。缺点:耗费时间:每次修改后的信息格式都需要转换;格式零乱:易导致各开发阶段信息版本不一致;逆向工程:无法实现跨阶段逆向检查。,2020/5/16,UML系统建模与设计,55,UML系统建模与分析设计,(2)协调一致的公共界面集成方式优点:菜单选择:提供格式一致的功能菜单,方便用户选择使用;多任务方式:用户可同时操作多个CASE工具,对不同开发阶段信息进行编辑;私有信息库:各CASE工具有自己的私有信息库,存储各自的软件开发信息;信息自动转换:用户使用菜单或工具,对各私有信息库之间自动进行格式转换;缺点:CASE工具之间基本上还是点对点的信息交换;逆向工程:无法实现跨阶段逆向检查。,2020/5/16,UML系统建模与设计,56,UML系统建模与分析设计,(3)信息共享集成方式优点:分布式体系结构:适用于大的软件项目,便于团队分组在不同地域同步开发;信息共享:各CASE工具对软件工程信息库共享,不用进行格式转换;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论