1. 找回并完善README.md; 2. 使用LaTeX自动索引。
This commit is contained in:
parent
ec3cd307a5
commit
eb5385bc85
|
@ -4,3 +4,6 @@ main.toc
|
||||||
main.pdf
|
main.pdf
|
||||||
main.bbl
|
main.bbl
|
||||||
main.blg
|
main.blg
|
||||||
|
main.idx
|
||||||
|
main.ilg
|
||||||
|
main.ind
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
|
% !TEX root = main.tex
|
||||||
|
|
||||||
\section{引言}
|
\section{引言}
|
||||||
|
|
||||||
软件是以计算为核心手段实现应用目标和价值的解决方案。从1966年首届图灵奖至2018年的53次颁奖中,属于软件领域的有37次(69.8\%),其中以程序设计语言、编译和操作系统为主获奖的有22次获奖,还有4次数据库获奖。作为本书第一部分的开篇,本章将简要回顾软件和软件技术的发展历程,通过梳理软件发展脉络,总结软件学科的基本内涵、关键问题、研究方法和发展规律,为第二部分学科发展战略提供基础。
|
软件\index{软件}是以计算为核心手段实现应用目标和价值的解决方案。从1966年首届图灵奖至2018年的53次颁奖中,属于软件领域的有37次(69.8\%),其中以程序设计语言、编译和操作系统为主获奖的有22次获奖,还有4次数据库获奖。作为本书第一部分的开篇,本章将简要回顾软件和软件技术的发展历程,通过梳理软件发展脉络,总结软件学科的基本内涵、关键问题、研究方法和发展规律,为第二部分学科发展战略提供基础。
|
||||||
|
|
||||||
\section{软件发展简史}
|
\section{软件发展简史}
|
||||||
\subsection{人力/机械计算时代}
|
\subsection{人力/机械计算时代}
|
||||||
|
@ -48,7 +50,8 @@ Computer一词历史上出现在1613年,用来指完成演算或计算的人
|
||||||
“软件”一词最早出现在1953年兰德公司R.R. Carhart的报告中,用来说明讨论可靠性时与硬件相对应的“人因”。而人们现在一般认为“软件”的术语来自John W. Tukey在1958年的论文。文中指出 “软件由精心编写的解释程序、编译器和自动编程等组成,它们至少象电容器、晶体管、电线和磁带等现代计算机硬件一样重要”。1968年,或许是巧合,出现两个软件发展史上的重大事件。一是,软件与硬件的解绑;二是,软件工程会议的召开。这两个事件的背景都与IBM著名的IBM S/360系统相关。
|
“软件”一词最早出现在1953年兰德公司R.R. Carhart的报告中,用来说明讨论可靠性时与硬件相对应的“人因”。而人们现在一般认为“软件”的术语来自John W. Tukey在1958年的论文。文中指出 “软件由精心编写的解释程序、编译器和自动编程等组成,它们至少象电容器、晶体管、电线和磁带等现代计算机硬件一样重要”。1968年,或许是巧合,出现两个软件发展史上的重大事件。一是,软件与硬件的解绑;二是,软件工程会议的召开。这两个事件的背景都与IBM著名的IBM S/360系统相关。
|
||||||
|
|
||||||
软件依附在硬件之上解决应用问题。早期的计算机系统中硬件和软件时捆绑的。所谓“捆绑”,指IBM在收费上采取只考虑硬件价格而软件和系统服务免费的策略。这在当时对于用户是很有吸引的,也增强了公司的竞争力。到1964 年,情况发生了变化,IBM宣布了新的IBM S/360系列,希望能够升级硬件系统而不需要替换或改变用户的应用程序。而稍后RCA也宣布了其新的Spectra 70系统与IBM 360兼容。这使得IBM难以阻止RCA在市场上“免费”使用IBM的软件。1968年,IBM宣布了其软件和硬件系统的解绑,改变了软件的商业和竞争模式。自此软件从计算机系统中与硬件的剥离,获得了可以独立发展的空间。可以看到,除了商业上的反垄断和市场竞争因素外,软件本质上“解决方案”的独立性和计算平台抽象为解绑提供了历史必然和技术可行。自此,人们逐步认识到软件是计算机系统的灵魂,它向下管理计算机系统的各类资源,向上满足用户对计算机系统的应用需求。
|
软件依附在硬件之上解决应用问题。早期的计算机系统中硬件和软件时捆绑的。所谓“捆绑”,指IBM在收费上采取只考虑硬件价格而软件和系统服务免费的策略。这在当时对于用户是很有吸引的,也增强了公司的竞争力。到1964 年,情况发生了变化,IBM宣布了新的IBM S/360系列,希望能够升级硬件系统而不需要替换或改变用户的应用程序。而稍后RCA也宣布了其新的Spectra 70系统与IBM 360兼容。这使得IBM难以阻止RCA在市场上“免费”使用IBM的软件。1968年,IBM宣布了其软件和硬件系统的解绑,改变了软件的商业和竞争模式。自此软件从计算机系统中与硬件的剥离,获得了可以独立发展的空间。可以看到,除了商业上的反垄断和市场竞争因素外,软件本质上“解决方案”的独立性和计算平台抽象为解绑提供了历史必然和技术可行。自此,人们逐步认识到软件是计算机系统的灵魂,它向下管理计算机系统的各类资源,向上满足用户对计算机系统的应用需求。
|
||||||
第二个事件是软件工程的兴起。计算机能力的快速提高和软件复杂性困难,出现了“软件危机”现象,例如,IBM 360操作系统OS/360的进度、开销和可靠性均不尽人意。NATO在1968年举行了首次软件工程会议,人们逐渐认识到需要如同其他领域的工程方法一样,系统化地进行软件开发。正如Margaret Hamilton在开发阿波罗在轨飞行和导航系统项目中明确指出,“我努力使软件具有合法性,使得构造软件的活动要受到应有的尊重,因而我开始用‘软件工程’将其与硬件和其他类型的工程区分开来,成为整个系统工程的一部分”。软件工程的出现不仅激活了软件发展的巨大活力,也隐喻了软件发展的外在驱动力,不断增长的应用需求和不断增长的计算能力。
|
|
||||||
|
第二个事件是软件工程\index{软件工程}的兴起。计算机能力的快速提高和软件复杂性困难,出现了“软件危机”现象,例如,IBM 360操作系统OS/360的进度、开销和可靠性均不尽人意。NATO在1968年举行了首次软件工程会议,人们逐渐认识到需要如同其他领域的工程方法一样,系统化地进行软件开发。正如Margaret Hamilton在开发阿波罗在轨飞行和导航系统项目中明确指出,“我努力使软件具有合法性,使得构造软件的活动要受到应有的尊重,因而我开始用‘软件工程’将其与硬件和其他类型的工程区分开来,成为整个系统工程的一部分”。软件工程的出现不仅激活了软件发展的巨大活力,也隐喻了软件发展的外在驱动力,不断增长的应用需求和不断增长的计算能力。
|
||||||
|
|
||||||
|
|
||||||
\subsection{软件发展的主线}
|
\subsection{软件发展的主线}
|
||||||
|
@ -82,7 +85,7 @@ Computer一词历史上出现在1613年,用来指完成演算或计算的人
|
||||||
|
|
||||||
\section{软件学科的内涵、发展规律和基本架构}
|
\section{软件学科的内涵、发展规律和基本架构}
|
||||||
\subsection{内涵与学科特征}
|
\subsection{内涵与学科特征}
|
||||||
软件作为计算平台上实现应用价值的解决方案,是最存粹的人工制品,其内涵特征包括了三个方面:
|
软件作为计算平台上实现应用价值的解决方案,是最存粹的人工制品,其内涵特征包括了三个方面[4]:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item [-] 功能性:以何种结构和行为
|
\item [-] 功能性:以何种结构和行为
|
||||||
\item [-] 目的性:达成什么应用目的
|
\item [-] 目的性:达成什么应用目的
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
# 软件科学与工程学科发展战略
|
||||||
|
|
||||||
|
软件学科发展战略协作编辑repo
|
||||||
|
|
||||||
|
## repo协作注意事项
|
||||||
|
1. 秘书组负责维护master;
|
||||||
|
2. 各章节作者请fork自己的分支,在自己的分支上更新;欢迎对其他各章提出修改建议(可以在自己的分支上直接修改)。
|
||||||
|
3. 各章作者完成一个milestone后,请通知秘书组审核分支修改,并merge到master中。
|
||||||
|
|
||||||
|
|
||||||
|
## 编译方法
|
||||||
|
1. 建议使用TexLive 2019发行版。
|
||||||
|
2. 请使用 XeLaTeX 编译,以便更好地支持中文排版。
|
||||||
|
|
||||||
|
## LaTeX编写注意事项
|
||||||
|
1. 目前参考文献尚未处理,各章自己维护即可;回头统一处理。
|
||||||
|
2. 请各位注意在阐述重要概念、使用重要概念时添加 \index 标注; 例如 “软件\index{软件}是以计算为核心手段实现应用目标和价值的解决方案。”、“第二个事件是软件工程\index{软件工程}的兴起”。
|
||||||
|
|
||||||
|
|
||||||
|
## 各章文件对照关系
|
||||||
|
* 八千字摘要 软件科学与工程学科发展战略(摘要): Ch0-1-Abstract
|
||||||
|
|
||||||
|
* 第一篇 第一章 软件学科历史回顾: Ch1-1-History
|
||||||
|
* 第一篇 第二章 程序语言与理论: Ch1-2-ProgrammingLanguage
|
||||||
|
* 第一篇 第三章 系统软件: Ch1-3-SystemSoftware
|
||||||
|
* 第一篇 第四章 软件工程: Ch1-4-SoftwareEngineering
|
||||||
|
* 第一篇 第五章 软件产业: Ch1-5-SoftwareIndustry
|
||||||
|
|
||||||
|
* 第二篇 第一章引言: Ch2-1-Overview
|
||||||
|
* 第二篇 第二章 软件理论: Ch2-2-SoftwareTheory
|
||||||
|
* 第二篇 第三章 软件语言: Ch2-3-SoftwareLanguage
|
||||||
|
* 第二篇 第四章 软件开发方法与技术: Ch2-4-DevelopmentMethodology
|
||||||
|
* 第二篇 第五章 操作系统与运行平台: Ch2-5-OperatingSystem
|
||||||
|
* 第二篇 第六章-数据管理: Ch2-6-DataManagement
|
||||||
|
* 第二篇 第七章 面向领域的应用软件系统: Ch2-7-DomainApplication
|
||||||
|
* 第二篇 第八章软件质量与安全保障: Ch2-8-Quality&Security
|
||||||
|
* 第二篇 第九章 软件生态: Ch2-9-SoftwareEcosystem
|
||||||
|
* 第二篇 第十章 软件学科教育: Ch2-10-Education
|
6
main.tex
6
main.tex
|
@ -8,6 +8,9 @@
|
||||||
\usepackage{booktabs}
|
\usepackage{booktabs}
|
||||||
\usepackage{makecell}
|
\usepackage{makecell}
|
||||||
\usepackage{subfigure}
|
\usepackage{subfigure}
|
||||||
|
\usepackage{imakeidx}
|
||||||
|
\makeindex
|
||||||
|
|
||||||
|
|
||||||
\title{软件科学与工程学科发展战略}
|
\title{软件科学与工程学科发展战略}
|
||||||
\author{梅宏~~等 \\ \emph{中国科学院}}
|
\author{梅宏~~等 \\ \emph{中国科学院}}
|
||||||
|
@ -23,7 +26,7 @@
|
||||||
|
|
||||||
\chapter*{ 软件科学与工程学科\\发展战略(摘要) }
|
\chapter*{ 软件科学与工程学科\\发展战略(摘要) }
|
||||||
\addcontentsline{toc}{chapter}{软件科学与工程学科发展战略(摘要)}
|
\addcontentsline{toc}{chapter}{软件科学与工程学科发展战略(摘要)}
|
||||||
\input{Ch0-1-Abstract.tex}
|
\input{Ch0-1-Abstract}
|
||||||
|
|
||||||
\mainmatter
|
\mainmatter
|
||||||
|
|
||||||
|
@ -80,6 +83,7 @@
|
||||||
\part{软件学科发展建议}
|
\part{软件学科发展建议}
|
||||||
and so on
|
and so on
|
||||||
|
|
||||||
|
\printindex
|
||||||
\end{document}
|
\end{document}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue