1、EECS , Peking University全国第八届操作系统课程教学暨学术交流会 Internet环境下的操作系统发展 (节选 )北京大学信息科学技术学院杨芙清2005年 10月EECS , Peking University全国第八届操作系统课程教学暨学术交流会 下一代软件技术发展趋势EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软件 是客观世界中问题空间与解空间的 具体描述追求 表达能力强、更符合人类思维模式具有易构造性和易演化性的 计算模型软件工程 应用 计算机科学理论和技术 以及 工程管理原则和方法,按预算和进度,实现 满足用户要求的软件
2、产品的定义、开发、发布和维护的工程或以之为研究对象的学科。(计算机大百科全书 )EECS , Peking University全国第八届操作系统课程教学暨学术交流会 构造性软件 是 典型的知识产品 是 客观世界中 问题空间与解空间的 具体描述 软件 是有结构的 构造性 是软件的本质特性传统的软件开发 是 个体作坊式 的主要 解决 功能问题较少 考虑 结构问题造成 软件 复杂度 高维护难度 大可靠性 差 软件的本质特性构造性和演化性EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软件 是 客观事物的一种反映是 知识的提炼知识的体现知识的固化演化性客观世界
3、 不断 发展不断 发生变化软件系统 不可能一成不变新需求、新技术 不断出现软件系统要 不断升级不断演化EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软件构件技术集中体现了软件的构造性随着软件规模及复杂性的增加算法 + 数据结构 的描述方式逐渐变得不足人们需要从整体上、从体系结构高度把握软件构件 + 构件之间的关系是软件体系结构的具体内容EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软件构件技术有力地支持软件的演化性软件的演化涉及软件系统在功能、性能、易用性等方面的改进对于大型软件系统的维护(演化)工作占据开发单
4、位总开销 的 50-75%目前 “打补丁 ”( patched)式的 “演化 ”方式限制了软件的演化能力基于构件技术开发软件采用构件的集成组装方式生成软件易描述、易配置、易演化提高了软件的演化能力EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软硬件之间的异构性 促进 软件技术的发展为屏蔽计算机硬件的异构性,发展了操作系统.NET/COMWeb ServicesJ2EE/EJBWindows操作系统 LinuxC/C+语言支撑软件 中间件为屏蔽操作系统和编程语言的异构性,发展了支撑软件和中间件Fortran语言为了弥补应用软件与开发平台之间的距离,发展了
5、软件框架、设计模式等技术应用系统体系结构 软件框架 设计模式为屏蔽中间件的多样性和异构性,发展了 Web 技术实质上,解决概念和处理逻辑之间的映射问题软件技术的发展不断产生更新的、更复杂的异构性问题,如流程、安全、事务等方面的异构性,要求软件能够适应外部环境,从而促进软件技术的不断发展Java语言UNIXEECS , Peking University全国第八届操作系统课程教学暨学术交流会 无需掌握复杂的编程语言 /过多的技术细节,就可以开发出满足需求的软件用户只需关注高层建模、复用包含复杂技术细节的低层模型即可自动生成代码 软件生产方式的变革促进 软件技术的发展手工作坊式软件开发 软件工业化
6、生产软件构件技术终端用户编程随需即取 模型驱动开发裸机应 用系 统应 用系 统裸机操作系统应 用系 统裸机中间件网络操作系统由服务提供商,根据用户需求,快速正确地构造出相应服务尽可能多地凝练共性并复用 降低开发应用软件的复杂度 以提高软件开发效率和质量EECS , Peking University全国第八届操作系统课程教学暨学术交流会 软硬结合是发展的趋势信息技术中微电子是基础软件是核心通信网络与计算机是载体SOC与嵌入式系统 是 软硬结合的典型例子 政策: 关于鼓励软件和集成电路产业发展的若干政策 (国发 200018号文件) 振兴软件产业行动纲要 ( 2002至 2005) 国办发 200247号文件