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

上传人:bin****86 文档编号:55078108 上传时间:2018-09-24 格式:PPT 页数:27 大小:208.50KB
返回 下载 相关 举报
(课件)第1章软件开发方法(三)软件工程技术_第1页
第1页 / 共27页
(课件)第1章软件开发方法(三)软件工程技术_第2页
第2页 / 共27页
(课件)第1章软件开发方法(三)软件工程技术_第3页
第3页 / 共27页
(课件)第1章软件开发方法(三)软件工程技术_第4页
第4页 / 共27页
(课件)第1章软件开发方法(三)软件工程技术_第5页
第5页 / 共27页
点击查看更多>>
资源描述

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

1、,第1章 软件开发方法 (三)软件工程技术,计算机教学实验中心,第2|25页,主要内容,构件 软件复用 C/S系统技术 基于Web工程设计,第3|25页,构件技术,软件产业和软件工程技术正面临着新的挑战。而传统的软件设计思想根本无法应对。构件技术应运而生。构件技术是基于OO技术上的更高级的抽象。它把底层的对象集合打成包,组成功能“插件”。基于构件技术的软件生产就是把已存在的构件组装(集成)到当前软件系统的框架结构中,从而生产出新的软件产品。构件技术是软件产业化革命的必然发展趋势。,第4|25页,构件的属性,构件是可独立配置的单元,因此构件必须自包容。 构件强调与环境和其他构件的分离,因此构件的

2、实现是严格封装的,外界没机会或没必要知道构件内部的实现细节。 构件可以在适当的环境中被复合使用,因此构件需要提供清楚的接口规范,可以与环境交互。 可以看出,构件沿袭了对象的封装特性,但同时并不局限于一个对象,其内部可以封装一个或多个类、原型对象甚至过程,结构是灵活的。,第5|25页,构件的使用,每个构件都需要先注册才能使用。构件是通过它们的接口特征来标识的,它们所提供的服务与访问方式是接口特征的一部分内容。要考虑的因素包括: 应用编程接口(API)。 构件所需的开发和集成。 运行需求,例如资源的使用(内存和硬盘),时间或速度以及网络协议。 服务需求,例如操作系统的接口,或需要其他构件的支持等。

3、 安全特征,例如访问控制和身份验证协议等。 嵌入式设计假定,有特定的数值/非数值算法使用。 异常处理。,第6|25页,实现构件技术的必备条件,有标准软件体系结构,保证构件间通信协议统一,实现同步和异步操作控制,突破本地空间限制,充分利用网络环境。 构件有标准接口,保证系统可分解成多个功能独立的单元,用构件组装而成。 构件独立于编程语言。 构件提供版本兼容,来实现应用系统的扩展和更新。,第7|25页,中间件,构件是依赖于平台环境的。那么在分布式异构环境中如何应用构件呢? 中间件就是基于跨环境的构件应用而发展起来的。中间件是介于应用层和网络层之间的一个功能层次,是使应用系统独立于由异构操作环境(操

4、作系统、硬件平台及通信协议等)组成的开发环境。 中间件扩展了客户/服务器结构,形成了一个包括客户、中间件和服务器在内的三层次结构及多层次结构,为开发可靠的、可扩展的、复杂的事物密集型应用提供了有力的支持。,第8|25页,构件和中间件,中间件是构件技术的一种实现,是构件存在的基础,它的本质是对分布式应用的抽象,应用是在中间件提供的环境中以构件的形式存在。 基于中间件开发的应用是面向需求的构件应用;构件专门用于处理应用的业务逻辑,而中间件负责解决与业务无直接关系的分布式应用中的支撑环境问题(例如,通信、互操作、可靠性、容错性等)。 构件的封装、设计与实现隔离,构件间的交互通过规范定义的接口进行;中

5、间件在分布式交互模式上都规定了接口机制,可以解决构件间的交互问题。 中间件将应用构件与系统资源隔离,使得构件开发者不用考虑下层的系统平台。 中间件提供了构件封装、构件交互规则、构件与环境隔离等机制,为软件重用提供了解决方案。 中间件可实现互操作。,第9|25页,J2EE的核心技术,第10|25页,COM+技术,COM(构件对象模型)是Microsoft提出的第一个构件模型。它起源于OLE,当时的OLE使用DDE(动态数据交换)机制来支持程序之间的通信,由于DDE建立在Windows消息机制基础上,稳定性和效率都很差,由此诞生了COM。 DCOM(分布构件对象模型)是COM技术在分布式环境中的延

6、伸(COM仅支持同一台计算机上构件之间的互操作)。DCOM用网络协议来代替本地进程之间的通信,并针对分布环境提供了一些新的特性,如网络安全性、跨平台调用等。 MTS( Microsoft 事务服务器)是为满足企业应用而提供的基础设施。MTS可以为分布式企业应用提供服务器端的构件运行和部署环境,它把企业应用系统的客户程序、应用构件和各种资源有机结合起来(而COMDCOM无法有效地实现)。,第11|25页,Windows DNA,为了使Windows真正成为企业应用平台,Microsof公司又推出了Windows DNA(分布式互联网应用体系结构)。它是一个完整的、多层的新一代企业应用体系结构,也

7、是一个服务器端的开发平台,它包含以下主要产品: Windows NT2000:操作系统。 DCOM:支持分布式构件的核心技术。 MSMQ:消息队列产品,支持构件间的异步通信。 MTS:管理构件的应用服务器。 Microsoft Wolfpack:支持集群服务器的软件。 Microsoft SQL Server:一种关系型数据库管理系统。 Microsoft IIS:Web服务器。 Microsoft Management Console:部署和管理工具。 工具、数据库、操作系统、编程模型和应用服务等。,第12|25页,CORBA技术简介,CORBA(Common Object Request

8、Broker Architecture,公共对象请求代理体系结构)是OMG制定的、体系结构最完整、最清晰、跨越平台最多的分布对象模型。通过CORBA接口定义语言IDL 定义接口,使用不同编程语言、不同编译器实现的构件,可以通过对象请求代理ORB进行连接,形成一个跨平台的应用。 CORBA一般有两层意思:一是指对象管理组织OMG提出的分布式对象体系结构标准;另一层意思是按这种体系结构开发的中间件产品。CORBA作为一种应用级的互联标准得到了广泛的认同和应用。 CORBA是一套规约,而不是一个产品,开发商可以开发不同的产品来实现 CORBA规约。例如,IBM公司的ComponentBroker等。

9、,第13|25页,软件复用技术,软件复用是指在软件开发过程中重复使用相同或相似软件元素的过程。软件复用是在软件开发中避免重复劳动的解决方案,它使得应用系统的开发不再采用一切从零开始的模式,而是以已有的工作模式为基础,充分利用过去应用系统开发中积累的知识和经验,从而将开发的重点集中于应用的特有构成成分。 为了能够在软件开发过程中重用已有的复用件,必须不断地进行复用件的积累,并将它们组织成复用件库。因此,软件复用不仅要解决如何检索所需的复用件,还要解决如何选取复用件、如何组织复用件库等问题。这类项目通常称为软件复用项目。 软件重用过程可借助于支持软件重用的CASE工具,其主要任务是:用某种组织结构

10、实现复用件库的存储,提供友好的人机界面,帮助用户浏览、检索和修改复用件库,并且对用户感兴趣的复用件进行解释。,第14|25页,软件复用方式分类, 依据复用的对象分类;可以分为: 产品复用指复用已有的软件构件,通过构件集成得到新系统。产品复用是目前现实的、主流的途径。 过程复用指复用已有的软件开发过程,过程复用依赖于软件自动化技术的发展。 依据对可复用信息进行复用的方式分类,可分为: 白盒复用 指已有构件并不能完全符合用户要求,需要根据用户需求进行适应性修改后才能使用。 黑盒复用 指对已有构件不需作任何修改,通过构件组装的方式直接进行复用。这是目前的研究热点,也是将来的发展趋势。,第15|25页

11、,软件复用面临的问题, 管理问题。没有相应的鼓励机制等。 复用的障碍。 技术方面的问题 法律问题 显然,很多其他相关问题对复用也有影响,政治的、文化的、财政的、市场的、以及产品化等方面的问题也必须考虑。,第16|25页,C/S技术,客户机/服务器系统也称C/S(Client/Server)系统,它是基于局域网广域网的系统。 在C/S中存在着服务器和客户端。为了充分利用客户机的计算能力,计算和事务处理在服务器和客户机之间分配。 服务器承担数据的集中管理、通信和客户管理的任务,因为数据在服务器端,对数据的处理和计算都在服务器端执行。 而人机界面和一些需要实时响应的事件或人机交互的处理等在客户端进行

12、,这些程序都运行在客户端。 C/S系统往往需要数据库服务器。,第17|25页,两层结构C/S系统,第一层是客户端软件,由应用程序和相应的数据库链接程序组成,企业的业务过程都在程序中表现。 第二层包括数据库服务器,根据客户端软件的请求进行数据库操作,然后将结果传送给客户端软件。 两层应用软件的开发工作主要集中在客户端,客户端软件不但要完成用户界面和数据显示的工作,还要完成一部分对商业和应用逻辑的处理工作。 两层结构的C/S系统仅能在各自的客户机和数据库服务器之间使用,分割了界面和数据,使得客户机要管理复杂的软件,导致“肥胖”客户机的产生。 两层 C/S系统不能进行有效的扩展,使这些系统不能支持大

13、量用户的访问和高容量事务处理的应用。,第18|25页,三(多)层结构C/S系统,客户机上只安装具有用户界面和简单的数据处理功能的应用程序,负责处理与用户的交互和与应用服务器的交互。 而将商业和应用逻辑的处理功能移到中间层应用服务器上。应用服务器负责处理商业和应用逻辑,接受客户端应用程序的请求,然后根据商业和应用逻辑将这个请求转化为数据库请求后与数据库服务器交互,并将与数据库服务器交互的结果传送给客户端应用程序。 数据库服务器软件根据应用服务器发送的请求进行数据库操作,并将操作的结果传送给应用服务器。,第19|25页,基于Web工程设计基础,基于 Web技术的 Intranet近年来正受到广泛的

14、关注,这种以TCP/IP协议为基础、以Web技术为中心的应用正吸引着越来越多的企业以更快的速度、更低的费用去创建企业的应用系统。 Web技术吸引人的地方是采用超链接和多媒体信息。Web服务器使用HTML描述网络的资源,创建网页,并以HTML数据文件的形式保存,以供Web浏览器阅读。 Web 浏览器是一个用于文档检索和显示的客户应用程序,并通过HTTP协议与Web服务器相连。 目前,流行的IE和Netscape Navigator除提供基本的文档检索、显示和导航特性外,还支持HTML的高级显示(如表和帧)以及Active X、Java、JavaScript等特性。,第20|25页,B/S技术,浏

15、览器服务器系统也称B/S(Browser/Server)系统,它也是基于局域网广域网的系统。它的客户端是标准的浏览器(如IE等),服务器端为标准的Web服务器,可协同应用服务器响应浏览器的请求。 B/S是一种三层结构的系统: 第一层客户机是用户与整个系统的接口。客户应用程序就是一个通用的浏览器。 第二层是Web服务器,它负责启动相应的进程来响应处理请求,并动态生成一串嵌入了处理结果的HTML代码,并返回给客户端的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与DB服务器协同完成这一处理工作。 第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQL请求,管

16、理数据库。,第21|25页,B/S 和C/S的比较,近年来,对于B/S、C/S两种结构软件的优劣,国内基本已经达成共识,普遍认为B/S结构软件将全面取代C/S结构软件。 下面从技术特性和商业特性两个方面进行比较。,第22|25页,技术特性比较,1、数据安全性比较。 由于C/S结构的数据分布特性,客户端的数据易攻击。对大型企业的异地软件应用,数据要在多个服务器之间进行数据同步,每个数据点上的数据安全都影响整个应用的数据安全。 对于B/S结构的软件来讲,由于其数据集中存放在数据库服务器,客户端不保存任何业务数据和数据库连接信息,安全问题好多了。 2、数据一致性比较。 在C/S结构的解决方案中,在异地经营点都采用区域级服务器,进行数据同步操作。由于局部网络故障造成个别数据库不能同步,或即使可同步,各服务器数据也有时差,数据无法一致,不能用于决策。 对于B/S结构来讲,其数据是集中存放的,客户端发生的每一笔业务单据都直接进入到中央数据库,不存在数据一致性的问题。 3、数据实时性比较。 C/S结构不随时随地看到当前业务的情况,看到的都是事后数据; 而B/S结构可以实时看到当前发生的所有业务,方便了快速决策,有效地避免了企业损失。,

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

当前位置:首页 > 医学/心理学 > 基础医学

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