



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、网络软件网络软件 1/42软件构件与中间件技术软件构件与中间件技术网络软件网络软件 2/42软件构件与中间件技术软件构件与中间件技术网络软件的复杂性网络软件的复杂性是其自身所固有的是其自身所固有的抽象、分治、分类等思想将在抽象、分治、分类等思想将在其中发挥极为关键的作用其中发挥极为关键的作用网络软件网络软件 3/42软件构件与中间件技术软件构件与中间件技术内内 容容 一、软件一、软件二、软件开发二、软件开发 三、网络环境三、网络环境四、网络环境给应用系统带来的挑战四、网络环境给应用系统带来的挑战五、来自用户需求的挑战五、来自用户需求的挑战六、对策六、对策网络软件网络软件 4/42软件构件与中间
2、件技术软件构件与中间件技术一、软件一、软件什么是软件什么是软件软件发展现状软件发展现状软件发展特点软件发展特点软件开发特点软件开发特点软件的本质特性软件的本质特性软件的发展趋势软件的发展趋势网络软件网络软件 5/42软件构件与中间件技术软件构件与中间件技术什么是软件什么是软件计算机软件一般指计算机软件一般指计算机系统中的计算机系统中的程序程序 及及 文档文档程序是程序是以以计算机语言计算机语言表达的软件系统表达的软件系统文档是文档是以以人类语言人类语言表达的软件系统表达的软件系统二者互相配合二者互相配合 共同构成了完整的软件系统共同构成了完整的软件系统软件软件 是是系统逻辑系统逻辑的体现的体现
3、 必须依附于一定的载体必须依附于一定的载体例如:纸张、软盘、硬盘、光盘等例如:纸张、软盘、硬盘、光盘等人类抽象的经验、知识正逐步由软件予以精确地体现人类抽象的经验、知识正逐步由软件予以精确地体现网络软件网络软件 6/42软件构件与中间件技术软件构件与中间件技术老老 子子: 道德经道德经: 第十一章:第十一章: 三十辐共一毂三十辐共一毂(g) ,当其无,有车之用。,当其无,有车之用。 埏埏(shn)埴埴(zh)以为器,当其无,有器之用。以为器,当其无,有器之用。 凿户牖凿户牖(yu )以为室,当其无,有室之用。以为室,当其无,有室之用。 故有之以为利,无之以为用。故有之以为利,无之以为用。解读的
4、力量!解读的力量! 鲜花与饲料鲜花与饲料软件软件 是脑力劳动的产物是脑力劳动的产物是系统是系统逻辑逻辑的体现的体现 必须依附于一定的载体必须依附于一定的载体例如:纸张、软盘、硬盘、光盘等例如:纸张、软盘、硬盘、光盘等其它的物品呢?不需要载体?其它的物品呢?不需要载体?网络软件网络软件 7/42软件构件与中间件技术软件构件与中间件技术软件到底有什么奥妙?软件到底有什么奥妙?人类自身的人类自身的感官感官不能直接确定它的存在:不能直接确定它的存在:分子、原子分子、原子 等对于人们总有一定的神秘性:感官距离很等对于人们总有一定的神秘性:感官距离很“遥远遥远”软件:软件:通常通常 存在于纸带、磁带、光盘
5、等之中存在于纸带、磁带、光盘等之中运行起来运行起来 靠:靠:集成电路集成电路 发挥作用发挥作用显示器显示器 显示状态显示状态竟然还可以在竟然还可以在 不同的载体不同的载体 之间十分方便地跳跃!之间十分方便地跳跃!显示出来后离我们又这么显示出来后离我们又这么“近近”!如此有用!如此有用!“万物皆数万物皆数”? ! 我们可以对认识的任何一种东西进行编码我们可以对认识的任何一种东西进行编码 以产生它的一个具体以产生它的一个具体“实例实例” 网络软件网络软件 8/42软件构件与中间件技术软件构件与中间件技术软件作为逻辑产品的特点:软件作为逻辑产品的特点:劣势:劣势:不易被理解不易被理解容易出错容易出错
6、找错、排错困难找错、排错困难优势:优势:易于变化,适应性强易于变化,适应性强复制成本低,适合规模经济复制成本低,适合规模经济给我们的生活、学习等带来了巨大的变化给我们的生活、学习等带来了巨大的变化The Second Life网络软件网络软件 9/42软件构件与中间件技术软件构件与中间件技术软件发展现状软件发展现状 (1)已经存在大量正在运行的软件)已经存在大量正在运行的软件 金融、电信、航空航天等金融、电信、航空航天等 (2)软件的应用范围不断扩大)软件的应用范围不断扩大商务、交通、家电等,商务、交通、家电等,“无处不在的软件无处不在的软件” (3)软件的规模与复杂性持续增加)软件的规模与复
7、杂性持续增加越来越多的知识正在由软件进行显式表达越来越多的知识正在由软件进行显式表达 (4)出现了大量与软件相关的标准)出现了大量与软件相关的标准(3)的需求)的需求 (5)软件危机仍然存在(软件脱节)软件危机仍然存在(软件脱节)1968-2003网络软件网络软件 10/42软件构件与中间件技术软件构件与中间件技术软件发展特点软件发展特点(1)软件应用范围将继续扩大,成为信息社会的物理设施)软件应用范围将继续扩大,成为信息社会的物理设施(2)遗留软件将继续发挥作用)遗留软件将继续发挥作用(3)软件的可靠性与安全性日趋重要)软件的可靠性与安全性日趋重要(4)网络化软件将是发展重点)网络化软件将是
8、发展重点网络软件网络软件 11/42软件构件与中间件技术软件构件与中间件技术软件的本质特性软件的本质特性构造性构造性演化性演化性其它特点:其它特点:知识密集知识密集逻辑产物逻辑产物网络软件网络软件 12/42软件构件与中间件技术软件构件与中间件技术软件的构造性软件的构造性软件软件 是是 典型的知识产品典型的知识产品 是是 客观世界中客观世界中 问题空间的具体描述问题空间的具体描述 软件软件 是有结构的是有结构的 构造性构造性 是软件的本质特性是软件的本质特性传统的软件开发传统的软件开发 是是 个体作坊式的个体作坊式的只只 解决功能问题解决功能问题未未 考虑结构问题考虑结构问题造成造成 软件软件
9、 复杂度复杂度高高 维护难度维护难度大大网络软件网络软件 13/42软件构件与中间件技术软件构件与中间件技术软件软件 是是 客观事物的一种反映客观事物的一种反映 是是 知识的提炼知识的提炼 知识的体现知识的体现知识的固化知识的固化软件的演化性软件的演化性客观世界客观世界不断发展不断发展不断发生变化不断发生变化软件系统软件系统不可能一成不变不可能一成不变 新需求、新技术不断出现新需求、新技术不断出现 软件系统要不断升级软件系统要不断升级网络软件网络软件 14/42软件构件与中间件技术软件构件与中间件技术软件发展趋势软件发展趋势 软件运行平台正在软件运行平台正在 从从 单机环境单机环境 发展到发展
10、到 网络环境网络环境这这 将导致软件在将导致软件在 反映对象反映对象 开发基础开发基础 关注内容关注内容运行方式运行方式 提交形式提交形式 开销比重开销比重等等 方面的重要发展方面的重要发展网络软件网络软件 15/42软件构件与中间件技术软件构件与中间件技术从 以 个体计算过程个体计算过程 为反映对象向 以 群体合作过程群体合作过程 为反映对象的发展人们的合作过程是丰富多样的、不断调整的 因此,网络环境下的软件 更加 复杂、易变 构造性、演化性 更加突出例如:例如: 电子商务电子商务 电子政务电子政务 电子服务电子服务 虚拟企业虚拟企业 网络软件网络软件 16/42软件构件与中间件技术软件构件
11、与中间件技术例如:例如:业务流程重组业务流程重组(BPR:Business Process Reengineering)企业应用集成企业应用集成(EAI:Enterprise Application Integration) 等等都需要开发组织具有都需要开发组织具有 “继往开来继往开来” 的能力的能力在这样的背景下在这样的背景下符合标准规范的软件将更加受欢迎符合标准规范的软件将更加受欢迎从从 以单个软件开发为主以单个软件开发为主向向 以集成式开发为主以集成式开发为主 的发展的发展网络软件网络软件 17/42软件构件与中间件技术软件构件与中间件技术从 以正面功能为核心以正面功能为核心向 兼顾侧面
12、约束兼顾侧面约束 的发展近期出现的近期出现的 面向面向 侧面侧面 的编程的编程 (AOP: Aspect Oriented Programming) 特征交互(特征交互(FI: Feature Interaction) 等等与经典的与经典的 问题分离(问题分离(SOC: Separation Of Concerns ) 等相呼应等相呼应 有效地处理有效地处理 交叉交叉(cross cutting)特征)特征 例如:例如: 安全性、可靠性、安全性、可靠性、 同步性同步性 等等 这一发展这一发展 将使将使 软件工程师容易地软件工程师容易地开发开发、维护维护应用系统应用系统网络软件网络软件 18/4
13、2软件构件与中间件技术软件构件与中间件技术从 纯被动式的纯被动式的方式向 部分主动式部分主动式的方式 发展主动对象主动对象(Active Object)类真体(类真体(Agent)等等具有的具有的 独立性、自治性和自适应性独立性、自治性和自适应性 能够很好地适应能够很好地适应从从 封闭、静态、稳定的封闭、静态、稳定的单机环境单机环境 到到 开放、动态、多变的开放、动态、多变的网络环境网络环境 的转变的转变这一发展这一发展 将将 有利于有利于 减轻人的负担减轻人的负担 促进促进 人机和谐环境的人机和谐环境的 建立建立网络软件网络软件 19/42软件构件与中间件技术软件构件与中间件技术从 以 产品
14、产品 为中心向 以 服务服务 为中心 的发展例如:例如:应用服务提供商应用服务提供商 (ASP: Application Service Provider)“Web服务服务”(Web Service) 等等 皆体现了软件向服务发展的趋势皆体现了软件向服务发展的趋势这一发展这一发展 将使将使 软件在软件在 方便使用、安全可靠方便使用、安全可靠 等方面等方面更加人性化更加人性化网络软件网络软件 20/42软件构件与中间件技术软件构件与中间件技术从从 开发为主要开销开发为主要开销向向 开发、演化开销并重开发、演化开销并重 的发展的发展最近一段时间最近一段时间延长软件生命延长软件生命维护、演化软件维护
15、、演化软件 等问题等问题同时受到了同时受到了 学术界与产业界的双重关注学术界与产业界的双重关注诸如诸如 柔性结构技术、远程维护技术、自适应技术柔性结构技术、远程维护技术、自适应技术 等等 将得到重视将得到重视网络软件网络软件 21/42软件构件与中间件技术软件构件与中间件技术二、软件开发二、软件开发1、软件开发特点、软件开发特点2、软件开发模型、软件开发模型3、开发过程新进展、开发过程新进展4、如何理解软件开发的困难、如何理解软件开发的困难网络软件网络软件 22/42软件构件与中间件技术软件构件与中间件技术 软件开发是典型的知识密集型活动软件开发是典型的知识密集型活动复杂度高复杂度高开发周期长
16、开发周期长可靠性保证难可靠性保证难 随着随着 软件应用范围的快速扩大软件应用范围的快速扩大 以及软件运行平台从单机向网络的转变以及软件运行平台从单机向网络的转变软件的软件的规模规模越来越大越来越大复杂度复杂度越来越高越来越高 软件开发的软件开发的 高、高、 长、长、 难难 愈益突出愈益突出1、软件开发特点、软件开发特点网络软件网络软件 23/42软件构件与中间件技术软件构件与中间件技术瀑布模型瀑布模型 (waterfall model)螺旋模型螺旋模型 (spiral model)喷泉模型喷泉模型 (fountain model) 演化模型演化模型 (evolutionary model)2、
17、软件开发模型、软件开发模型各自特点回顾:画图说明!各自特点回顾:画图说明!网络软件网络软件 24/42软件构件与中间件技术软件构件与中间件技术RUP敏捷开发方法敏捷开发方法从从 CMM 到到 CMMI基于构件的软件开发基于构件的软件开发基于侧面的软件开发基于侧面的软件开发测试驱动的软件开发测试驱动的软件开发用例驱动的软件开发用例驱动的软件开发3、开发过程新进展、开发过程新进展网络软件网络软件 25/42软件构件与中间件技术软件构件与中间件技术l写小说?写小说?l生产生产PC?搭积木?搭积木?l演节目?演节目?l拍电影拍电影/电视?!电视?!4、如何理解软件开发的困难、如何理解软件开发的困难网络
18、软件网络软件 26/42软件构件与中间件技术软件构件与中间件技术l前期:剧本创作、投资前期:剧本创作、投资l拍摄:场地、演员、道具拍摄:场地、演员、道具l后期:剪接、音效后期:剪接、音效l分析:需求、用户分析:需求、用户l设计实现:结构、编码设计实现:结构、编码l测试:减少缺陷测试:减少缺陷其他共性:拷贝、版本、版权;美国、印度其他共性:拷贝、版本、版权;美国、印度网络软件网络软件 27/42软件构件与中间件技术软件构件与中间件技术三、网络环境三、网络环境什么是网络?什么是网络?硬件厂商的观点硬件厂商的观点软件厂商的观点软件厂商的观点用户的观点用户的观点Network is computer?
19、网络软件网络软件 28/42软件构件与中间件技术软件构件与中间件技术网络环境(从各个个体角度)网络环境(从各个个体角度) 分布式系统(从整体角度)分布式系统(从整体角度)什么是网络环境(什么是网络环境(Network Environment)?)?通过网络相互连接、相互协作,共同执行任务通过网络相互连接、相互协作,共同执行任务的一组计算机系统的一组计算机系统包括:连接设备、计算机硬件、包括:连接设备、计算机硬件、 支持网络的操作系统等系统软件支持网络的操作系统等系统软件与单机环境相对与单机环境相对网络软件网络软件 29/42软件构件与中间件技术软件构件与中间件技术从不同角度划分网络:从不同角度
20、划分网络:从规模上:从规模上:LAN、WAN从行业上:从行业上:银行网络(银行网络(ATM)电信网络(电信网络(IP Phone)从技术上:从技术上:WWW、WAP、宽带网、宽带网从边界上:从边界上: Internet、Intranet从协议上:从协议上:TCP/IP、DECNET目前需要特别关注以目前需要特别关注以IP为核心实现的网络环境为核心实现的网络环境网络软件网络软件 30/42软件构件与中间件技术软件构件与中间件技术网络环境自身的特点:网络环境自身的特点:(1)分布性)分布性(2)复杂性)复杂性(3)增长性)增长性(4)异构性)异构性(5)持续演化性)持续演化性网络软件网络软件 31
21、/42软件构件与中间件技术软件构件与中间件技术网络环境为应用系统提供的支持网络环境为应用系统提供的支持共享性共享性开放性开放性并发性并发性可伸缩性可伸缩性容错性容错性透明性透明性网络软件网络软件 32/42软件构件与中间件技术软件构件与中间件技术(1)共享性)共享性一旦授权,可以访问环境中的任何资源:一旦授权,可以访问环境中的任何资源:硬件、软件、数据硬件、软件、数据资源管理器控制资源的访问资源管理器控制资源的访问 提供命名机制提供命名机制 并并 控制并发访问控制并发访问资源共享模型(例如客户资源共享模型(例如客户/服务器、基于对象)描述:服务器、基于对象)描述:如何提供资源如何提供资源它们如
22、何被使用它们如何被使用用户与提供者如何交互用户与提供者如何交互网络软件网络软件 33/42软件构件与中间件技术软件构件与中间件技术(2)开放性)开放性环境扩展与改进的需要环境扩展与改进的需要需要发布构件之间的接口细节需要发布构件之间的接口细节新构件需要能够与已存在的构件进行集成新构件需要能够与已存在的构件进行集成网络软件网络软件 34/42软件构件与中间件技术软件构件与中间件技术(3)并发性)并发性网络环境中的构件可以在并发的过程中被执行网络环境中的构件可以在并发的过程中被执行构件可以访问、更新共享的资源构件可以访问、更新共享的资源如果不对并发的更新进行协调如果不对并发的更新进行协调无法保持环
23、境的完整性无法保持环境的完整性网络软件网络软件 35/42软件构件与中间件技术软件构件与中间件技术(4)可伸缩性)可伸缩性利用网络环境可以:利用网络环境可以:为更多的用户服务为更多的用户服务响应更快响应更快通常通过增加通常通过增加 更多更多/更快的处理机更快的处理机 更可靠、更完善的服务实现更可靠、更完善的服务实现当环境增长时,构件不必改变当环境增长时,构件不必改变所设计的构件应当便于系统的伸缩所设计的构件应当便于系统的伸缩网络软件网络软件 36/42软件构件与中间件技术软件构件与中间件技术(5)容错性容错性硬件、软件、网络发生错误的不可避免性硬件、软件、网络发生错误的不可避免性网络环境必须维护可用性网络环境必须维护可用性容错的实现途径:容错的实现途径:恢复(恢复(recovery)冗余(冗余(redundancy)网络软件网络软件 37/42软件构件与中间件技术软件构件与中间件技术(6)透明性透明性网络环境对于用户与应用程序而言网络环境对于用户与应用程序而言应当是一个整体应当是一个整体而不是一个相互协作的简单的构件集合而不是一个相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 博士创新站申请书
- 岗位竟聘申请书
- 单独二胎生育申请书
- 车辆诉前财产保全申请书
- 湖北足协申请书
- 配偶撤销合同申请书
- 医生申请学校补助申请书
- 社团学会申请书
- 大学保留学籍申请书
- 新农村买房申请书
- 《国庆假期安全教育》课件
- 2025年辅警招聘考试试题库及完整答案(历年真题)
- 2025湖北宜昌市不动产交易和登记中心招聘编外聘用人员17人考试参考题库及答案解析
- 2025下半年四川内江市隆昌诚信农业产业化融资担保有限责任公司招聘4人考试参考题库及答案解析
- 疼痛介入治疗的护理
- DB44-T 2542-2024 自然教育基地建设规范
- 《拒绝努力羞耻症》学习动力主题班会课件
- 2025AICon全球人工智能开发与应用大会-上海站:昇腾推理技术的优化实践
- 《春江花月夜》课件+2025-2026学年统编版高二语文选择性必修上册
- 广州中侨置业投资控股集团有限公司债权资产评估报告
- 第2课 信息技术伴成长教学设计-2025-2026学年小学信息技术(信息科技)第八册(2019)电子工业版(安徽)
评论
0/150
提交评论