您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 软件技术的发展与创新
1软件技术的发展与创新蔡希尧2009.052内容一.认识软件二.软件技术的发展和创新三.方法论的创新四.操作系统和中间件的新发展五.虚拟计算及其应用的创新六.数据集成、安全、存储和管理的发展七.软件安全性八.多核处理器适用软件的发展九.软件即服务的冲击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.数据联网存储近几年,数字数据迅速增加,操作维护的费用急剧上升,对存储系统的关
本文标题:软件技术的发展与创新
链接地址:https://www.777doc.com/doc-2011686 .html