软件技术的发展与创新.ppt_第1页
软件技术的发展与创新.ppt_第2页
软件技术的发展与创新.ppt_第3页
软件技术的发展与创新.ppt_第4页
软件技术的发展与创新.ppt_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

1 软件技术的发展与创新 蔡希尧2009 05 2 内容 一 认识软件二 软件技术的发展和创新三 方法论的创新四 操作系统和中间件的新发展五 虚拟计算及其应用的创新六 数据集成 安全 存储和管理的发展七 软件安全性八 多核处理器适用软件的发展九 软件即服务的冲击 3 一 认识软件 软件的重要性和巨大的影响力并没有得到应有的认识 妨碍了它的作用的发挥 软件能够起什么作用 重要性表现在哪里 以下的事实可以很好地说明 4 一 认识软件 1 软件存在于信息系统的各个层次 从基础设施到高层应用 都有软件 信息系统是软件密集的系统 2 系统是由实体组成的 实体具有某种功能 功能的执行表现为系统的行为 计算机信息系统中功能的实现可以用硬件 也可以用软件 而以软件为主 5 一 认识软件 3 环境和应用的需求经常变更 硬件对需求变更的适应性差 变更硬件的代价高 软件可以灵活地适应各种变更 而且可以反复重用 可以移植 变更的成本低 6 一 认识软件 4 每一个应用都有自己的特殊要求 传统的解决办法是生产专用设备来实现这些特定的应用要求 例如电话交换机是专门用于电话系统的设备 可以利用计算机硬件的通用性 根据应用需求 用软件在通用的计算机硬件上实现各种应用 使执行特定应用软件的通用计算机成为一种专用机 更换软件而保持硬件不变 就成为另外一种专用机 7 一 认识软件 5 信息系统的安全性是关键的性能 传统的解决方案是采用密码加密 保护信息的安全 使存储的信息或传输中的信息不会被未经授权者使用 篡改或删除 但是 信息系统不仅仅只是存储信息或传输信息 更加重要的是执行功能 以达到应用的目的 而功能的执行依靠的是软件 软件必须安全可靠 功能才能得到正确的执行 8 一 认识软件 密码算法要编成程序才能够在计算机上执行 可见利用密码保护信息系统的安全性要依靠软件的正确性 密码算法不能消除病毒和木马 而软件能够 例如各种反病毒软件 所以 信息系统的安全性 既有信息的安全性 也有软件的安全性 自身安全的软件 能够保护信息的安全 软件的安全性更加重要 9 一 认识软件 6 软件正在不断地扩充它的应用领域 兴起新的革命浪潮 以各种价值链联系在一起的信息系统 如电子商务系统 支持的基础是工作流技术 工作流的核心是服务引擎 服务引擎之间的互动形成价值链的运行 而服务引擎是一组软件 10 一 认识软件 7 软件正在进入人们的日常社会生活 社会软件 Socialsoftware 或称 社交软件 在兴起 社会软件是基于Web的软件 用户可以用来进行互动 建立关系 组织团体 共享数据 人际间的交往方式和社会的组织结构因此正在发生深刻的变化 11 一 认识软件 8 软件是绿色环境的重要支柱 创建绿色环境需要节能减排 依靠软件的虚拟化技术 可以大幅度地减少信息基础设施的设备数量 降低能耗 提高利用率 改善能源分配和调度 提高管理能力和效率 12 一 认识软件 9 软件是各种管理工作所依靠的基本技术 是提高各级领导治理能力的技术 是科学研究必备的工作手段 是促进经济发展和社会进步的技术力量 13 一 认识软件 10 软件是信息技术今后发展的主要依靠力量 正在进行中的电信和计算的大融合 以软件为主导 引领这一潮流的是软件产业及其大企业 14 二 软件技术的发展和创新 近几年 软件技术发展迅速 有许多创新 1 工程方法论的创新 包括 功能抽取技术 模型驱动体系结构 基于模型的软件工程 基于搜索的软件工程 面向方面的软件开发等 15 二 软件技术的发展和创新 2 操作系统的新发展 中间件被认定是一类系统软件 3 虚拟计算及其应用的创新 4 数据集成 安全 管理和联网存储的发展 5 肯定了软件安全性是必要的软件需求 16 二 软件技术的发展和创新 6 多核处理器适用软件的发展 7 软件即服务观念的树立及其巨大影响 这些发展与创新 开辟了新的软件发展的道路 大大地改变了软件工程的面貌 17 三 方法论的创新 1 功能抽取技术卡内基 梅隆大学软件工程研究院所倡导的 功能抽取 FunctionExtraction 技术 具有自动计算全部程序行为的能力 是一项具有革命性的新技术 能够用更快和更正确的方法取代传统检查编码的人工方法 将大幅度地改变软件开发的过程和方法 增强软件系统的可信度 18 三 方法论的创新 功能抽取技术以函数理论作为基础 把程序看作是数学函数或关系的规则 以实现功能行为的自动化计算 它主要关注通用控制结构所产生的数据的净效果 与计算的过程无关 通用的控制结构有三种 组合 序列 控制结构 选择控制结构和迭代 循环 控制结构 19 三 方法论的创新 2 模型驱动体系结构模型驱动体系结构 Model drivenarchitecture MDA 是对象管理集团 OMG 于2001年发布的一种新的软件开发方法 模型驱动 的意思是软件开发用模型指导系统的理解 设计 实现 部署 操作 维护和修改 改变了长期以来软件开发的道路 20 三 方法论的创新 MDA把软件和系统的模型以所选择的平台来分类 因为在所有的软件和系统的开发中 都存在对基础设施 语言 硬件 网络拓扑 通信协议等 平台元素 的选择问题 21 三 方法论的创新 MDA把工作的重点从程序设计转移到建立模型 有三个核心模型 计算无关模型 描述系统的问题域及需求 平台无关模型 描述与平台无关的系统功能和操作 平台专用模型 描述系统使用一个或多个特定平台的操作 22 三 方法论的创新 MDA的软件开发使用传统的瀑布模型 它的生命周期如下图所示 23 三 方法论的创新 图中 域和环境用圆表示 圆中的方框表示问题和目标系统 求解过程由实线表示 从问题指向系统 虚线表示行动或结果 CIM 计算无关模型 PIM 平台无关模型 PSM 平台专用模型 ISM 实现专用模型 可有可无 24 三 方法论的创新 3 基于模型的软件工程基于模型的软件工程 ModelBasedSoftwareEngineering MBSE 使用建模技术 把软件的生产过程分成两个平行的工程过程 即域工程和应用工程 通过对产品族的属性和结构的形式理解 简化新产品族开发的可重用软件资源的开发 达到码的重用 改善产品质量和产品可维护性 缩短产品开发时间 25 三 方法论的创新 一个MBSE系统的主要组成成分是软件资产 域工程和应用工程 它们的关系如下图所示 26 三 方法论的创新 4 基于搜索的软件工程基于搜索的软件工程 Search basedsoftwareengineering SBSE 把软件工程的问题当做搜索问题处理 所使用的搜索技术取自元启发式 Metaheuristic 搜索 运筹学和进化计算等领域的通用算法 如遗传算法 模拟退火算法等 27 三 方法论的创新 利用搜索算法 可以达到自动计算的目的 把软件工程从基于人的智力转移到基于机器的搜索 28 三 方法论的创新 5 面向方面软件开发 面向方面软件开发 Aspect orientedsoftwaredevelopment AOSD 与 面向方面程序设计 AOP 的概念是在软件模块化的研究中逐步形成的 AOSD能够在软件开发的需求 体系结构 分析 设计 实现 测试 维护的整个生命周期中 支持软件系统的 穿插关注点 CrosscuttingConcerns 的模块化 29 三 方法论的创新 一个关注点 Concerns 就是一个特定的目标 一个需要关心的问题或区域 在多个模块中出现的关注点 叫做 穿插关注点 穿插关注点使软件的理解 设计 实现和演化变得困难 方面 Aspect 就是把多个穿插关注点加以分离 实现关注点的功能所得到的模块 30 三 方法论的创新 面向方面程序设计 AOP 能够把穿插关注点局部化 成为分离的 封装的模块 对穿插关注点的模块化实现能够提供显式的抽象 可以通过代码库提供自动组合模块 方面 的机制 31 四 操作系统和中间件的新发展 操作系统近几年来有许多新的改进 以WindowsVista为例 重大的改变有 1 提高了安全性Microsoft在开发Vista时 使用安全性开发生命周期 开发更安全的软件 通过平台技术的革新来提供层次化的防御 增加了许多安全属性以保护客户的计算机 32 四 操作系统和中间件的新发展 WindowsVista现在能够提供的安全功能包括 用户账号控制 内置口令和智能卡的认证功能 能够清除病毒 蠕虫 间谍软件等的入侵 网络接入保护 内置个人防火墙 33 四 操作系统和中间件的新发展 强化了Windows服务 在文件系统 注册处 网络 以及其他容易被恶意攻击所利用的资源中 限制关键性服务的不正常活动 强化了Windows浏览器 通过用户账号控制 限制浏览器除了浏览Web以外 不能修改用户的文件 或者加入某些默认的设置 34 四 操作系统和中间件的新发展 数据保护 集成的权力管理客户软件 允许一个组织可以执行文档使用策略 用户可以对文件和目录加密 在智能卡上存储密钥 使用BitLocker驱动器加密 提供机器级的数据保护 利用可信平台模块 TPM 芯片存储硬盘加密密钥 35 四 操作系统和中间件的新发展 2 加强了搜索功能 便于文件的定位和组织 3 有32位和64位两种版本 可以选择使用 36 四 操作系统和中间件的新发展 中间件的地位得到提高 成为新的一类系统软件 是操作系统 程序设计语言 和数据库管理系统等系统软件的重要补充 37 四 操作系统和中间件的新发展 基于分布对象计算 DOC 的中间件是使用最多的中间件 它的体系结构由具有一定自治能力的软件对象组成 对象可以在大范围互联的网络上分布配置 客户可以调用施加于目标对象的操作以实现互动 或者调用需要完成应用目标的功能 38 四 操作系统和中间件的新发展 DOC中间件可以分成多个层次 包括特定域中间件 通用中间件 分布中间件和主机基础设施中间件 主机基础设施中间件 和操作系统及通信协议紧密关联 其主要功能是为更高层次及应用生成一个网络环境 39 四 操作系统和中间件的新发展 40 五 虚拟计算及其应用的创新 虚拟化是为真实资源创建替代品的过程 这些替代品与真实资源具有等效的功能和外部接口 但它们的属性 例如尺寸 性能和成本 不同 这些替代品被称为虚拟资源 而它们的用户通常不会察觉到替代过程 41 五 虚拟计算及其应用的创新 虚拟化具有很强的通用性 是赋予能力的技术 不论机构大小 都能适用 而得益巨大 据IBM公布的数据 基础设施的虚拟化 可以节省80 的能量和85 的机房空间 大幅度地提高了服务器的利用率 42 五 虚拟计算及其应用的创新 企业面临的许多问题 如服务器的低利用率 扩充基础设施但缺乏场地 缺乏资金购买新的硬件 缺乏备份和恢复能力 控制能耗和冷却费用等等 虚拟化都可以解决或者缓解这些问题 43 五 虚拟计算及其应用的创新 典型的应用领域 信息资源优化 存储虚拟化 应用虚拟化 业务的连续性和灾难恢复 测试和开发 44 六 数据集成 安全 存储和管理的发展 1 数据集成数据集成是把不同来源的数据聚集在一起 以便于数据共享 支持一个组织全局的信息管理 对于合作的信息系统 必须对应用加以集成 应用集成的重点是业务过程的集成 业务过程的集成的主要工作是数据集成 没有数据集成 就没有过程集成 也没有应用集成 45 六 数据集成 安全 存储和管理的发展 使用中间件集成是主要的集成模式 中间件有以下几种形式 远程过程调用 RPC 交易处理 TP 监控器 面向消息的中间件 MOM 对象请求中介 ORB 数据请求中介 DRB 包装集成 46 六 数据集成 安全 存储和管理的发展 2 数据安全保护数据安全保护的范围很广 抵制形形色色的数据泄漏事件 都属于数据保护工作 缓解和预防数据泄漏的技术措施 数据加密 加密数据的监控 密钥的存储和管理 存储数据的保护 47 六 数据集成 安全 存储和管理的发展 数据备份和恢复 数据匹配 反病毒 反间谍 反钓鱼 保护等级标记 应用代理防火墙 建立SSL隧道 建立信誉系统 托管服务 48 六 数据集成 安全 存储和管理的发展 3 数据联网存储近几年 数字数据迅速增加 操作维护的费用急剧上升 对存储系统的关注重点在转移 IDC于2008年发布的一份研究报告指出 包括图像 视频 电子邮件 Web页面 即时消息 电话呼叫等的数字数据 每天都在增加 49 六 数据集成 安全 存储和管理的发展 IDC估计 2007年全球生成的数字信息达到161exabytes 2007年整个数字世界的容量估计为281exabytes 平均每人42gigabytes 联网存储是适应当前的发展情况的数据存储的主要发展方向 50 六 数据集成 安全 存储和管理的发展 有两种主要的联网存储 NetworkedStorage 类型 1 存储区网络 SAN 是连接存储设备和服务器的专用网络 存储设备包括磁盘阵列 磁带库等 联网的存储设备可以共享 集中管理控制 不属于某个服务器 存储设备和服务器是SAN的节点 连接方式可以是网状的 或任意两者的连接 51 六 数据集成 安全 存储和管理的发展 2 网络连接存储 NAS 使用特殊设备把存储设备直接连接到网络 这些设备有指定的IP地址 客户可以通过服务器接入 有的场合 客户可以直接接入设备 不需要经过中介 NAS和SAN不同 NAS是连接到网络的文件级存储 使用基于文件的协议 52 六 数据集成 安全 存储和管理的发展 NAS具有可扩充性 可以加入另外的NAS设备 扩充有效存储空间 NAS为网络增加了容错的层次 在通常的情况下 当服务器不工作时 这个服务器所持有的数据不能再使用 但在NAS中 数据是联网的 客户仍然可以使用 53 六 数据集成 安全 存储和管理的发展 3 IP存储 IP是使用最普遍的网络 存储系统自然可以考虑利用IP联网 IETF的存储工作组定义了一个IP存储 SoIP 框架 它是一个开放的 基于标准的体系结构 用于部署IP存储解决方案 使用的存储标准包括iSCSI iFCP InternetFibreChannelProtocol 和iSNS InternetStorageNameService 等 54 六 数据集成 安全 存储和管理的发展 4 数据管理数据管理是对计划 策略 程序开发 执行和监管 以控制 保护 发放及加强数据和信息资产的价值 数据管理的工作是多方面的 包括 设计数据体系结构 保证数据和信息的兼容性 文档和记录管理 数据库管理 55 六 数据集成 安全 存储和管理的发展 主数据和数据引用管理 数据安全管理 数据质量管理 数据仓库和业务智能管理 元数据管理 数据查询和接入管理 多源分布数据 多媒体数据和网络环境下使用数据的管理 56 七 软件安全性 信息系统安全的重要性及其格局的变化 把软件安全性推到关键位置 当代信息系统都是软件密集系统 一个可以共享的关键性元素是软件 它决定系统的运作行为 软件问题常常会导致现实世界中许多不同类型的失败 甚至可能导致一个企业的死亡 57 七 软件安全性 因为不论用什么方法 软件总存在着缺陷和漏洞 自身的缺陷在某种执行条件下将引发失效 无法提供正确的功能 恶意攻击者可以利用软件的漏洞入侵系统 而软件复杂度的不断增长进一步加剧了这种入侵的可能性 恶意的入侵可能引发系统的灾难性的失效 以至于整个企业运行的中断 58 七 软件安全性 信息安全性的风险从网络转移到应用 又从应用转移到软件 正在引起业务思路和技术的变更 许多组织和个人开始认识到信息系统的安全性风险大部分来自软件 如果业务所运行的软件缺乏安全性 也就不能保护企业的安全性 59 七 软件安全性 软件自身安全性现在被称为 软件系统安全性 SoftwareSystemSafety 是指在软件系统的需求规范 设计 实现中存在的漏洞可能引发的安全问题 60 七 软件安全性 由于软件的自然特性不同于硬件 有许多独特的不安全的原因 如数学模型应用的困难 事故模型和失效模式的特殊性 系统行为的突发性 实体之间的互动引发不安全问题 软件质量难以测量等 实现软件系统安全性的难度大 需要有良好的安全性管理 开发过程中要做好软件安全性分析 形式方法的应用 良好的安全性设计 包括危险处理的设计 最后要做好安全性验证 61 七 软件安全性 软件在使用过程中 会受到恶意的攻击 因此要设法保护软件的安全性 抵制外来攻击 在发生事故以后能够恢复 或者在恶意攻击下仍然能够保持正常的工作 62 七 软件安全性 软件容易被攻击主要原因是由于存在可以被攻击者利用的漏洞 因此 除了在设计和实现中尽可能避免漏洞的存在以外 还要求能够抵制利用漏洞所实施的大多数攻击 或者在被攻击时能容忍差错 并且迅速恢复 保持系统的正常运作 63 七 软件安全性 经验表明 增强对软件安全性的保护 需要在软件开发生命周期中的各个阶段加以考虑 懂得常见的威胁 包括基于语言的缺陷 把安全性列入设计的必须内容 对软件成品进行客观的风险分析和测试 64 七 软件安全性 要做好漏洞管理工作 必须完成三项基本的任务 连续地评估信息系统的安全状况 以认定威胁和不服从策略的事件 自动补救所发生的问题 生成适当的报告 65 八 多核处理器适用软件的发展 多核处理器是两个或更多个独立的核 通常是处理器 组合在一个芯片上 在单一包装的芯片上 多个处理器可以共享一个高速缓存 或者各自有高速缓存 66 八 多核处理器适用软件的发展 过去 处理器生产商一直认为只有通过主频的提高才能提高处理器的性能 但是 Intel奔腾系列的主频达到4G以后 再也无法提高了 于是不得不另外寻找其他的途径 来提高CPU的性能 多核就是找到的解决方案 67 八 多核处理器适用软件的发展 AMD AdvancedMicroDevices 在2005年首先推出双核处理器 Intel在2006年推出双核和四核处理器 2009年2月9日 在 国际固态电路会议 InternationalSolid StateCircuitsConference ISSCC 上 Intel宣布新的8核 16线程 45纳米线宽的Xeon处理器 68 八 多核处理器适用软件的发展 下图是AMD双核处理器的结构 69 八 多核处理器适用软件的发展 多核处理器需要多线程的程序 操作系统也必须把多线程运行作为正规的模式 一个具有n个核的系统必须有n个或更多个线程才发挥其效能 大多数应用软件不使用并发多线程 因为多线程程序设计比较困难 常见的多线程应用设计模式以一个线程为主 其他线程为辅 这样 使用多核体系结构的应用就没有多少好处 70 八 多核处理器适用软件的发展 真正的多线程程序设计需要对多个线程进行复杂的协调 但由于处理多个线程共享数据的互相交织 使得这种多线程的程序排错很困难 71 八 多核处理器适用软件的发展 多核芯片的性能与工作负载的类型相关 据IDC的统计 与单核芯片相比 最好可提高80 有的应用只能提高30 许多服务器已经使用多核芯片 PC机和笔记本计算机也将大量使用多核处理器 72 九 软件即服务的冲击 软件即服务 Software as a Service SaaS 是一种新的软件部署模式 在互联网上以托管的方式给客户提供应用服务 客户可以预定 而不是买许可证的方式 得到基于Web的应用服务 73 九 软件即服务的冲击 这种新的业务模式 改变了软件供应商 服务提供商和最终用户的角色和责任 SaaS要求传统的软件和服务商家改变它们

温馨提示

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

评论

0/150

提交评论