第1章软件开发方法(三)软件开发技术

上传人:ldj****22 文档编号:52232619 上传时间:2018-08-19 格式:PPT 页数:47 大小:608.50KB
返回 下载 相关 举报
第1章软件开发方法(三)软件开发技术_第1页
第1页 / 共47页
第1章软件开发方法(三)软件开发技术_第2页
第2页 / 共47页
第1章软件开发方法(三)软件开发技术_第3页
第3页 / 共47页
第1章软件开发方法(三)软件开发技术_第4页
第4页 / 共47页
第1章软件开发方法(三)软件开发技术_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《第1章软件开发方法(三)软件开发技术》由会员分享,可在线阅读,更多相关《第1章软件开发方法(三)软件开发技术(47页珍藏版)》请在金锄头文库上搜索。

1、第1章 软件开发方法 (三)软件开发技术计算机教学实验中心1下一页上一页停止放映问题的提出什么是软件复用?构件、中间件?什么是CORBA、DOM和JEB?什么是C/S?B/S?C/S和B/S的区别?2下一页上一页停止放映1了解目前主要的软件开发技术 2了解构件技术 3了解软件复用技术 4了解CORBA、DCOM和J2EE技术 5了解C/S和B/S技术及开发基础3下一页上一页停止放映软件工程技术构件技术软件复用技术C/S技术B/S技术4下一页上一页停止放映1.3.1构件技术软件产业和软件工程技术正面临着新的挑战。而 传统的软件设计思想根本无法应对。在这一背景 下,构件技术应运而生。构件技术是基于

2、OO技术上的更高级的抽象。它 把底层的对象集合打成包,组成功能“插件”。基 于构件技术的软件生产就是把已存在的构件组装 (集成)到当前软件系统的框架结构中,从而生 产出新的软件产品。可以预见,构件技术是软件产业化革命的必然发 展趋势。5下一页上一页停止放映构件技术概述OO技术是在“数据十算法”的基础上提升了对事 物的认识方法。而构件技术则在“对象+算法”的 基础上将认识事物的角度从对象个体本身提升 到个体在群体中的作用。从抽象程度来看,OO技术已达到了类级重用( 以类为封装单位);而构件技术是对一组类的 组合进行封装,可以将底层的多个逻辑组合成 高层次上的粒度更大的新构件,甚至直接封装 到一个

3、系统,使模块的重用从代码级、对象级 、架构级到系统级都可能实现。显然,构件技 术将抽象的程度提到了一个更高的层次。6下一页上一页停止放映实现构件技术的必备条件有标准软件体系结构,保证构件间通信协议统一 ,实现同步和异步操作控制,突破本地空间限制 ,充分利用网络环境。构件有标准接口,保证系统可分解成多个功能独 立的单元,用构件组装而成。构件独立于编程语言。构件提供版本兼容,来实现应用系统的扩展和更 新。7下一页上一页停止放映构件设计构件依赖于平台环境,所以设计时有特殊要求: 以接口为核心,使用开放标准。 构件语义的描述要形式化。 提炼封装构件过程要严格记录。 设计模式可以重用。 利用开发工具。例

4、如,开放标准有:CORBA、DCOM、EJB等。例如,Jbuilder、EJBMaker等。优点;代码、设计、解决方案都能重用。要保证第三方用户能正确地理解、使用构件。如EJB中有会话Bean和实体Bean事务描述符等。8下一页上一页停止放映中间件构件是依赖于平台环境的。那么在分布式异构 环境中如何应用构件呢?中间件就是基于跨环境的构件应用而发展起来 的。中间件是介于应用层和网络层之间的一个 功能层次,是使应用系统独立于由异构操作环 境(操作系统、硬件平台及通信协议等)组成 的开发环境。中间件扩展了客户/服务器结构,形成了一个 包括客户、中间件和服务器在内的三层次结构 及多层次结构,为开发可靠

5、的、可扩展的、复 杂的事物密集型应用提供了有力的支持。9下一页上一页停止放映构件和中间件中间件是构件技术的一种实现,是构件存在 的基础,它的本质是对分布式应用的抽象, 应用是在中间件提供的环境中以构件的形式 存在。中间件将应用构件与系统资源隔离,使得构 件开发者不用考虑下层的系统平台。中间件提供了构件封装、构件交互规则、构 件与环境隔离等机制,为软件重用提供了解 决方案。中间件可实现互操作。10下一页上一页停止放映中间件分类 基于远程过程调用RPC(Remote Procedure Call)中间件被调用的对象可以在分布系统中的任何物理平台上。 SunSoft的ONC+属于这种中间件。 面向消

6、息的中间件支持基于消息机制的进程间通信方式。例如,SunSoft的 ToolTalk。 基于对象请求代理ORB(Object Request Brokers)中间件消息通过ORB进行路由选择,ORB同时处理集成和安全 方面问题。如Microsoft的COM、OMG的CORBA等。 数据库中间件支持对异构的关系数据库系统的透明访问。例如Sybase 的Open Server、Oracle的SQL Connect等。11下一页上一页停止放映J2EE技术简介 Java平台的第一个参考实现是 JDK(Java Development Kit),但JDK不支持服务器端构件开发。为提供服务器端 的企业级服

7、务,Sun公司开发了一些Enterprise API。Sun公司提出了三个不同的Java平台:J2ME(Java 2 Platform,Micro Edition)可用于Java设备(如呼机、手表等)的开发平台。J2SE(Java 2 Platform,Standard Edition)支持标准JDK编程,包含基本的Java语言支持、JFC库及其 对applet和application的支持。J2EE(Java 2 Platform,Enterprise Edition)一个基于Java的完整企业级应用开发平台,它与Java Enterprise API有机地结合、适合服务器端构件体系结构 的

8、开发。12下一页上一页停止放映J2EE的核心技术EJB(J2EE规约中最重要的部分)RMI-IIOPJava 名字及目录接口JNDI数据库访问接口JDBC消息服务JMSJava Server Papes(JSP)Java 接口定义语言IDLJava Mail基于Java的电子邮件API。通过建立远程接口支持Java和CORBA应用通信。用于编写动态网页。与消息驱动的中间件进行通信的API。实现跨平台访问各种DB。EJB提供了使客户端使用远程分布式对象的框架,规定了 EJB构件如何与EJB容器进行交互等服务。 用于实现Java和CORBA应用之间互操作。是客户端代码连接EJB构件必需的关键技术。

9、13下一页上一页停止放映J2EE的核心技术示意图14下一页上一页停止放映COM+技术简介MTS( Microsoft 事务服务器)为满足企业应用而提供 的基础设施。MTS可为分布式企业应用提供服务器端的构 件运行和部署环境,它把企业应用系统的客户程序、应用 构件和各种资源有机结合起来(而COMDCOM无法有 效地实现)。DCOM(分布构件对象模型)由于COM技术仅支持同一 台计算机上构件之间的互操作,DCOM用网络协议来代替 本地进程之间的通信,并针对分布环境提供了如网络安全 性、跨平台调用等新特性。COM(构件对象模型)是Microsoft提出的第一个构件 模型。起源于OLE(对象连接和嵌入

10、),OLE使用DDE( 动态数据交换)机制来支持程序间通信,由于DDE稳定性 和效率很差,由此诞生了COM。15下一页上一页停止放映Windows DNA为了使Windows真正成为企业应用平台,Microsof公司 又推出了Windows DNA(分布式互联网应用体系结构) 。它是一个完整的、多层的新一代企业应用体系结构及服 务器端的开发平台,它包含以下主要产品:Windows NT2000:DCOM:支持分布式构件的核心技术。MSMQ:消息队列产品,支持构件间的异步通信。MTS:管理构件的应用服务器。Microsoft Wolfpack:支持集群服务器的软件。Microsoft SQL S

11、erver:一种关系型数据库管理系统。Microsoft IIS:Web服务器。Microsoft Management Console:部署和管理工具。16下一页上一页停止放映COM+为了把COM、DCOM和MTS统一起来,形成真正 适合于企业级应用的构件技术,诞生了COM+。COM+是一种中间件技术的规约,其要点是提供 建立在操作系统上的、支持分布式企业级应用的“ 服务”。COM+与Windows DNA一起,使得用户 可以采用Microsoft公司的技术开发服务器端的构 件。COM+的核心是改进的COM/DCOM和MTS的集 成,但是COM+增加了一些非常重要的构件服务 ,比如负载平衡、

12、驻留内存数据库、事件模型、队 列服务等。17下一页上一页停止放映COM+主要特点真正的异步通信。COM+底层提供了队列构件服务 ,允许客户和构件进行异步通信。事件服务。新事件机制利用系统服务简化了事件模 型,避免了COM可连接对象机制的琐碎细节,使事 件源和事件接收方实现事件功能更加灵活。灵活性。动态负载平衡以及驻留内存数据库、对象 池等系统服务为COM+的灵活性提供了技术基础。可管理和可部署性易于开发 COM+以前的COM构件开发更为简化。支持应用系统在开发完成后的管理和部署。18下一页上一页停止放映COM+的基本结构 COM+目录负载平衡驻留内存数据库对象池新的事件模型构件管理和部署JIT

13、激活MTS事务支持资源分发管理安全模式易于管理远程支持 DCOM分布式构件服务COM+COM基于接口的编程模式基本的构件服务19下一页上一页停止放映CORBA技术简介CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)是OMG制定 的、体系结构最完整、最清晰、跨越平台最多的分布对象模 型。通过CORBA接口定义语言IDL 定义接口,使用不同编 程语言、不同编译器实现的构件,可以通过对象请求代理 ORB进行连接,形成一个跨平台的应用。CORBA一般有两层意思:一是指对象管理组织OMG提出的 分布式对象体系结构标准;另一层意思是

14、按这种体系结构开 发的中间件产品。CORBA作为一种应用级的互联标准得到 了广泛的认同和应用。CORBA是一套规约,而不是一个产品,开发商可以开发不 同的产品来实现 CORBA规约。例如,IBM公司的 ComponentBroker等。20下一页上一页停止放映1.3.2 软件复用技术软件复用是指在软件开发过程中重复使用相同或相似软件 元素的过程。软件复用是在软件开发中避免重复劳动的解 决方案,它使得应用系统的开发不再采用一切从零开始的 模式,而是以已有的工作模式为基础,充分利用过去应用 系统开发中积累的知识和经验,从而将开发的重点集中于 应用的特有构成成分。为了能够在软件开发过程中重用已有的复

15、用件,必须不断 地进行复用件的积累,并将它们组织成复用件库。因此, 软件复用不仅要解决如何检索所需的复用件,还要解决如 何选取复用件、如何组织复用件库等问题。这类项目通常 称为软件复用项目。软件重用过程可借助于支持软件重用的CASE工具,其主 要任务是:用某种组织结构实现复用件库的存储,提供友 好的人机界面,帮助用户浏览、检索和修改复用件库,并 且对用户感兴趣的复用件进行解释。21下一页上一页停止放映软件复用方式分类 依据复用的对象分类;可以分为:产品复用指复用已有的软件构件,通过构件集成 得到新系统。产品复用是目前现实的、主流的途 径。过程复用指复用已有的软件开发过程,过程复用 依赖于软件自

16、动化技术的发展。 依据对可复用信息进行复用的方式分类,可分为:白盒复用 指已有构件并不能完全符合用户要求, 需要根据用户需求进行适应性修改后才能使用。黑盒复用 指对已有构件不需作任何修改,通过构 件组装的方式直接进行复用。这是目前的研究热 点,也是将来的发展趋势。22下一页上一页停止放映可复用的复用件Caper Jones定义了可候选的十种复用件: 项目计划:计划的基本结构和内容(如,SQA计划)。 成本估计:有可能复用对某个功能的成本估计。 体系结构:可能创建一组类属的体系结构模板(例如,事务处理体系结 构),并将模板作为可复用的设计框架。 需求模型和规约:类和对象的模型和规约是可复用的,用传统软件工程 方法开发的分析模型(例如,数据流图)也是可复用的。 设计:用传统方法开发的体系结构、数据、接口和过程化设计是复用的 候选者,更常见的是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号