什么是软件技术
软件技术是指为计算机系统提供程序和相关文档支持的技术。所谓程序,是指为使计算机实现所预期的目标而编排的一系列步骤,没有软件,计算机就没有存在的必要,也就没有蓬勃发展的计算机应用。
软件技术的发展阶段
历史上第一个写软件的人是Ada(Augusta Ada Lovelace),17世纪60年代,她开天辟地的第一次为Babbage(Charles Babbage)的分析机(Analytic Machine)编制程序,其中包括计算三角函数的程序、级数相乘程序、伯努利函数程序等等。Ada编制的这些程序,即使到了今天,计算机软件界的后辈仍然不敢改动任何一条指令,人们公认她是世界上第一位软件工程师。在20世纪40年代末,软件伴随着第一台电子计算机ENIAC(Electronic Numerical Integrator And Calculator)在美国的问世而诞生,从此以写软件为职业的人陆续开始出现,他们大多是经过训练的数学家和电子工程师。到了20世纪60年代,美国大学里开始出现专门教授人们编写软件的专业,并且对该专业毕业的大学生、研究生授予计算机专业的学位。伴随着信息产业的迅速发展,软件对人类社会的作用越来越重要,人们对软件的认识也更为深刻。
在几十年的发展过程中,软件技术主要经历了以下4个发展阶段。
1.第一阶段:程序设计阶段
在计算机系统发展的早期阶段(20世纪50年代初期至20世纪60年代中期),软件技术经历了它的第一个阶段,即程序设计阶段。这个阶段的软件生产以个体化为主。由于软件规模不大,几乎没有什么系统化的标准可遵循,对软件的开发也无良好的管理方法。大多数的软件由使用者自己开发、编写,然后个人应用,也很少涉及到软件文件的制作。程序设计阶段早期并没有软件的概念,开发工作主要是围绕硬件进行的。工程规模很小,所使用的工具也较为单一,开发者之间也没有明确的分工。
2.第二阶段:程序系统阶段
当计算机发展到第二阶段(20世纪60年代中期至70年代末期)时,软件技术发展到程序系统阶段。多道程序设计、多用户系统引入了人机交互的新概念。这时候出现了实时系统和第一代数据库管理系统。这个阶段的另一个特点就是软件产品的使用和软件作坊的出现。软件的应用范围更广阔,一个程序能够有多达上百的用户。
在软件的使用中,纠正源代码错误、变更程序功能、适应硬件环境被称为软件的维护。随着计算机软件规模越来越大,应用范围越来越广,软件的维护也花费人们更多的精力和资源,却依然没有解决许多程序个人化特性的问题。这时,人们开始有了“软件危机”感。
3.第三阶段:软件工程阶段
从20世纪70年代中期开始,软件技术发展到软件工程阶段,该阶段跨越了近10年。随着这个时候的分布式系统、高带宽数字通信系统、实时数据访问控制系统等应用技术的迅速发展,人们对计算机软件的需求变得更高,同时也使得软件开发的效率和质量成为人们关注的焦点。因此,以软件产品化、系列化、工程化、标准化为特征的软件产业迅猛发展,推动了软件工程学的进步。
4.第四阶段
计算机系统发展的第四阶段已经不再着重于单台计算机系统和程序,而是面向计算机和软件的综合影响。Internet和世界范围的信息网提供了一个基本架构,使得计算机体系结构迅速从集中的主机环境转变为分布式的客户机/且艮务器环境,由复杂的操作系统控制强大的桌面机、广域网络和局域网络,配以先进的软件应用已成为标准。计算机科学与软件技术正朝着社会信息化和软件产业化的方向发展。一些新技术的蓬勃兴起,面向对象的开发方法和其他技术方法在许多领域中表现出强大的生命力。下表给出了4个阶段典型技术的比较。
阶段 | 第一阶段 | 第二阶段 | 第三阶段 | 第四阶段 |
典型技术 | 面向批处理 有限的分布 自定义软件 |
多用户 实时 数据库 软件产品 |
分布式系统 嵌入“智能” 低成本硬件 消费者的影响 |
强大的桌面系统 面向对象技术 专家系统、人工神经网络 并行计算、网格计算 |
软件技术的应用
(一)数据库技术
数据库技术是数据处理中的一门技术,它研究的是如何科学的组织、储存数据,如何高效的获取和存储数据。数据库技术的发展提高了数据的独立性和共享性,缩短了查询时间,可以使应用程序从容面对海量数据。数据库是建立管理信息系统的基础,没有了数据库也就谈不上统计信息系统。从技术角度看,数据库解决了数据共享性差,冗余量大和数据不一致的问题;从应用角度说,数据库存放的数据主要反映业务运作状况。统计信息系统就是要利用数据库中的原始数据对其进行加工、分析,得出趋势性和规律性的东西,供管理者使用。国库统计信息系统中每日处理的数据量十分巨大,不仅要求数据库查询效率高,稳定性良好,还要有较高的数据安全性,使用技术水平高、功能强的数据库是必然的选择。
(二)数据仓库,数据挖掘,联机分析处理
目前国外很多大银行和大型企业均采用先进的数据仓库技术建立了自己的数据仓库。数据仓库(Data Warehouse)是一个面向主体的、集成的、随时间变化但信息本身相对稳定的数据集合,它是为了解决高层次决策人员提出的业务需求而在数据库的基础上发展起来的,它保存的数据是业务运作过程的记载。具体的说,统计信息系统数据仓库是由国库业务处理系统中的数据和一些相关经济数据经过抽取和集成而建立起来的面向主体的、多维的、适合决策使用的一种新型组织形式的数据库。数据仓库技术强调的是存储经过集成的信息,采用数据仓库技术可以提高分析的全局性,使统计分析不仅仅局限于各个单独的业务或数据上,它更适宜用对应数据源的相关数据进行全局分析及复杂分析。国库业务运作中,每日都要对数据库进行大量的增加、删除与查询操作,统计分析要从大量的历史数据中获取信息,要求系统保存大量的历史数据,而且还要能进行复杂分析。这些功能对于用于支持日常业务频繁操作的数据库系统而言将成为沉重的负担。数据仓库的建立可以将国库的信息环境分成两大部分:操作环境和分析环境。操作型数据库处于底层,负责日常业务数据的处理,当数据对分析有用时,经过一定的综合归人到数据仓库中,如此可以提高系统的效率,还有利于统计分析的深入进行。
在线分析处理(OLAP)和数据挖掘(DM)是在数据库基础上建立起来的用于复杂分析的软件技术。在统计信息系统中采用OLAP和DM可以丰富系统的内容,提高系统的统计分析性能,为决策者提供重要而极有价值的信息或知识,从而产生巨大经济效益和社会效益。利用OLAP,分析人员、管理人员和执行人员能针对同一个主题,从多个角度对此主题进行分析,从而快速、交互地对待分析结论。DM可以高度自动化的分析原有数据、归纳推理从中挖掘出潜在的模式,预测各种业务行为,辅助决策者做出正确决策。DM的主要技术手段也是统计方法,包括计量经济学方法、时间序列分析方法、多元统计方法,其它统计方法等。另外,还运用了运筹学、人工神经网络和专家系统的技术和思路。
利用上述国际先进的软件技术,将其融人我国国库统计信息系统中,提高国库运作分析的职能化程度是一项重要的课题,是提升国库运作绩效并与国际接轨的必经之路。