software-strategy-book/Ch3-1.tex

56 lines
14 KiB
TeX
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

% !TEX root = main.tex
%\chapter{政策建议}
软件因可编程通用计算机的发明而生,并逐步发展演化为信息化时代人类文明的新载体。人类社会的信息化从基于计算机的数字化起步,当计算机融入数字化设备,``软件定义设备''成为趋势。伴随信息化进入网络化阶段,软件发展、积累、演变成为当今社会基础设施的灵魂,人类文明已经运行在软件之上,进而推动人类社会的信息化进入智能化的新阶段。人机物融合泛在计算时代正在开启,计算无处不在,软件定义一切、赋智万物。面向新时代,\textbf{我们比任何时候都需要更加重视软件学科建设,牢固确立软件学科的优先发展地位,准确把握新时代软件学科的发展方向}
新时代软件的系统观、形态观、价值观和生态观为软件学科发展标定了方向。软件学科和软件产业的紧密互动关系需要我们统筹推进科研、教育和产业的协调发展。建议从加强软件基础前沿研究、升级软件高等教育体系和构建软件产业良性发展环境等维度规划我国的软件学科发展战略。
\section{加强软件基础前沿研究}
正如本报告第一部分所述,传统的软件学科源于并主要关注以计算机为中心的软件,而当今的软件学科必须高度关注以网络为平台的软件带来的挑战。本报告第二部分指出,新时代软件学科面对的\textbf{软件是人机物融合、泛在、可演化的复杂系统},这样的系统已经超出传统软件学科关注的以计算机为中心的软件范畴。面对新时代的软件系统,软件学科在理论、方法、技术、工具等方面都显得滞后,不能满足要求,加强新时代软件基础前沿研究是现实而紧迫的。
\begin{enumerate}
\item \textbf{加强面向人机物融合泛在计算模式的软件理论研究。} 经典软件理论针对以计算机为中心的确定性封闭场景。例如,支撑其构建的早期算法理论要求算法具有表示(编码)的有限性、行为的确定性和执行终止性。但新时代软件系统是持续演化、人机物融合、泛在的开放复杂系统。以互联网(物联网)上大量涌现的人机物融合的智能云服务系统为例,软件系统需要处理持续增长的网络大数据,融合离散计算与连续的物理空间,服务行为具有不确定性和持续演化性。此类软件系统已经超出了当前算法和程序理论的研究范畴。需要借鉴复杂系统思想、理论和方法,拓展与控制理论的交叉,研究开放的新型软件理论,为新时代软件学科提供理论支持。
%
\item \textbf{加强面向泛在计算的程序设计语言及其支撑环境研究。} 传统程序设计语言研究一直是走通用路线,强调表达能力的完备性,支持软件专业人员开发软件。随着计算向各个领域的渗透,网络化、泛在化、人机物融合化要求提供领域化的程序设计语言及其支撑环境,降低普通用户学习门槛以及方便普通用户使用成为面向泛在计算的程序设计语言关注的重点。需要结合各个行业领域的软件定义需求,以领域特定的程序设计语言设计原理和高效实现为目标,研究面向领域应用的新型程序设计语言理论、程序设计语言的演化和互操作性机理、程序设计语言的支撑环境和工具链等,为高效而深入地满足各个行业领域定制计算的多样性需求,提供共性和个性兼顾的编程支撑。
%
\item \textbf{布局基于软件定义方法的泛在操作系统原理和技术研究。} 传统操作系统发展是以围绕CPU为主线、以拓展网络通信能力为辅线难以应对人机物融合泛在计算所带来的海量异构``物''、``人''资源的管理需求,难以支撑复杂、多样、多变的各类应用。需要研究以``连接协调''为核心的新型软件体系结构下泛在操作系统模型和机理、各类新型异构资源的抽象机制及其虚拟化技术、应用需求导向的按需高效资源调度、内生可信安全机制等,以及研究如何充分发挥泛在操作系统的``元层''共性基础支撑作用,有效驱动和实现``信息-物理-社会''空间的协同持续演化。
%
\item \textbf{探索以数据为中心的新型应用开发运行模式及其平台支撑。} 传统的应用开发运行是以计算资源为中心,通过处理输入数据获得输出结果。随着大数据应用的繁荣和数据作为主要资产定位的确立,围绕数据部署应用将成为一种主要的应用模式。需要研究异构海量数据的抽象和建模、多元(源)数据资源的互操作和调度管理技术及平台、以多元(源)数据为中心的应用快速开发和高效运行技术、以及相应的数据安全和隐私保护技术等。
%
\item \textbf{加强对大规模代码和项目的供应链和生态行为研究。} 开源、众包等软件开发社区模式已成为传统组织型软件开发模式之外的重要模式,因此带来开源闭源交织的复杂软件供应链和生态,同时也在互联网上积累了丰富的软件工程大数据资源。需要以刻画和分析复杂的软件供应链模型为基础,研究个体如何高效认知复杂项目和生态、群体如何高效高质地协作完成各类软件开发相关的任务、软件涉众如何围绕软件构建可持续性演化的生态系统等。基于互联网群体智能的软件开发方法和支撑平台研究、基于软件工程大数据的软件自动化方法和技术研究、以及软件知识产权的甄别和保护技术也是值得关注的重点。
%
\item \textbf{重视软件技术研究和应用的价值取向和管理。} 软件的基础设施化使得社会经济运行、社会治理等均与软件密不可分,软件承载的价值观与社会经济价值观的符合度将成为重要的挑战。特别需要加强软件安全和质量,尤其是复杂人机物融合系统安全可靠确保、机器学习赋能软件的质量评估和风险防控等,同步发展软件确保工具环境、软件基础设施以及软件生态治理。需要推进以人为中心的软件价值观研究和规范,研究各种社会因素带来的超越软件使用质量的新型软件价值及其约束和规范、可能风险的防护和提示机制等,软件技术及其应用的伦理研究也应受到关注。
\end{enumerate}
\section{升级完善软件学科高等教育体系}
软件定义一切将带来软件定义的世界,无处不在的软件不仅成为社会经济活动的基础设施,还将重塑人们的思维模式。面向未来,每一个接受高等教育的成年人不仅应该是现代信息化社会的直接受益者,更应该是现代软件文明的直接创造者,软件技能不再仅仅是大学软件专业人才的专业技能,还将成为所有大学生必备的工作生活技能。因此在现代高等教育体系中,\textbf{软件教育不仅仅是面向软件专门人才的专业教育,还应该成为覆盖全体大学生的通识教育}。软件教育要注重专业教育与通识教育并重,领域学科知识与软件学科知识结合,原理讲授与动手实践融合。
\begin{enumerate}
\item \textbf{布局面向全体大学生的软件通识教育。} 当今的大学软件通识教育隐含在计算机通识教育之中,缺少系统性设计。未来大学软件通识教育要从两个能力入手,实现三个衔接,延伸并拓展现有国民教育体系。两个能力一是认知能力,通过以``算法抽象+编程思维''为核心的认知教育,帮助学生形成用算法和编程理解数字空间的认知能力;二是实践能力,通过以``语言案例+编程案例''为核心的实践案例教育,帮助学生形成自主学习编程工具、解决现实计算问题的实践能力。三个衔接一是衔接过去,即与中小学的计算机基础教育相衔接;二是衔接当下,即与当下大学开设的``大学计算机基础''通识课程融合衔接;三是衔接未来,即与大学各类专业教育和未来终身学习相衔接。
%
\item \textbf{重构软件学科专业人才培养体系。} 当今主导软件学科专业教育的知识体系是以计算机为中心的软件知识体系。面向新时代软件新``四观''标定的软件未来走向,需将以计算机为核心的软件学科知识体系拓展为以网络为平台的软件学科知识体系,系统能力培养标准也要由计算机空间拓展到网络空间,建立与软件新``四观''相适应的高层次研究型专门人才培养方法,强化解决以网络为平台的复杂系统问题的能力,造就勇于开拓新时代软件学科``无人区''的探索者,为中国引领新时代软件学科发展培养领军人才。
%
\item \textbf{开展面向其他学科专业的软件工程教育。} 目前各专业领域的应用软件开发由于专业知识与软件知识之间的鸿沟而经常发生需求沟通、软件理解等方面的困难,迫切需要加强各专业领域中的软件工程能力培养。为了适应``软件定义一切''的时代特点,结合各行业领域信息化转型发展需求,需构建面向其他学科专业的软件工程课程体系,实现复合型、创新型和跨界人才培养,有效提升行业领域应用专门人才与软件专业人才合作开发复杂应用软件的能力,为各行业领域提供高端软件开发人才,提高基于计算机和网络开发仿真、设计、分析、制造、测试等工具软件的能力和水平。
%
\item \textbf{构建并开放软件教育支撑平台。} 软件学科是实践动手能力要求很高的学科专业软件开发环境是软件学科人才培养的基础支撑。要把握软件学科实践性的特点坚持以泛在化的计算机和网络为支撑工具支持软件人才实践能力培养研发支持软件人才培养的支撑软件和大规模开放在线课程Massive Open Online CourseMOOC与开源软件资源以及开源软件开发部署云平台对接构建开放共享的软件开发、部署、维护、升级和演化的实训平台推广大规模开放在线实践Massive Open Online PracticeMOOP教学对接软件产业环境形成支撑大学教育和终身教育的开放平台。
\end{enumerate}
\section{构建软件产业良性发展环境}
软件学科总体而言是一个以解决问题为目标的技术学科,支撑产业发展是其使命,产业需求反过来又为其发现研究问题提供了源头。过去,软件学科的战略地位通过其支撑的战略性新兴产业—软件产业—得到强化。今天,在软件定义一切、成为经济社会基础设施的时代背景下,软件产业与软件学科的战略意义将进一步彰显。\textbf{一个强大的软件产业需要强大的软件学科支撑,同时也提供了软件学科发展的沃土。} 我国软件产业基础还相对薄弱,还处于产业链的中低端,需要把握住新时代软件带来的颠覆式发展机遇期,实现创新发展和跨越发展。
\begin{enumerate}
\item \textbf{完善知识产权保护。} 我国软件产业还处于产业链的中低端的一个重要原因,是全社会对软件知识产权保护的认识和手段严重缺失。需加强软件知识产权保护的宣传,加强各个领域、各种形态、各种应用场景下的软件技术知识产权保护方法和措施研究以及法规制定,完善健全软件知识产权保护体系并建立严格的实施机制,切实保护软件技术和应用创新。
%
\item \textbf{布局新基础设施建设。} 结合数字中国建设和数字经济发展新需求打造新一代信息技术主导的社会经济活动的新型基础设施如5G通信网、物联网、人工智能开放平台和大型数据中心等。同时加快推动传统物理基础设施的软件定义改造和升级如电力传输网、交通路网等。以此为基础面向传统行业领域数字化转型、网络化重构和智能化提升的迫切需求大力推进软件定义方法在各行业的推广应用推进工业互联网技术研发和平台构建按需打造各行业特定的泛在操作系统。
%
\item \textbf{大力发展新型应用。} 新一代基础设施必将孕育人机物融合的新型应用。需面向智慧城市、社会治理、敏捷物流、信息消费等重点领域,加强投入和引导,构建相应的大数据互操作平台和应用开发工具,支撑高附加值软件产品和服务的技术创新和应用。
%
\item \textbf{积极培育开源生态。} 开源生态是新时代软件发展的重要时代特征。需培育基于开源模式的公益性生态环境建设,采取``参与融入、蓄势引领''的开源策略(``参与融入''针对国际成熟开源社区,``蓄势引领''则从中文开源社区建设切入),发展开源软件生态,探索开源生态下的新型商业模式,并以其为抓手提升我国在信息技术领域的核心竞争力和国际影响力,特别是通过中文开源平台的建设构建国家软件资产托管和共享体系。
%
\item \textbf{推进公共数据开放。} 新时代软件发展的一个重要特征是大数据驱动。需通过政策和法规制定,鼓励地理、气候、统计、环境、交通等政府数据和公共数据开放,构建基于互联网的大数据开放共享平台及开放的数据分析工具库,支持不同组织和个人开展数据汇聚、管理、分析和应用的大规模协作和高附加值的数据类软件产品和服务创新。
\end{enumerate}