计算机软件技术基础教程(21世纪)

分类: 图书,计算机/网络,软件工程/开发项目管理,
作者: 刘彦明主编
出 版 社: 西安电子科技大学出版社
出版时间: 2001-2-1字数: 475000版次: 1页数: 312印刷时间: 2008/03/08开本: 16开印次: 8纸张: 胶版纸I S B N : 9787560609911包装: 平装编辑推荐
本书是根据新的教学计划和教学实践编写而成的,其最大特点是实用、易懂,特别适合于自学。
全书内容包括:软件工程、面向对象的系统分析和设计、并发程序设计、数据结构、数据库系统等五部分,共19章。本书覆盖了计算机软件技术基础的主要内容。
本书适合作为非计算机专业的本、专科教材,也可供自学计算机基础知识的参考答案。
内容简介
计算机软件技术基础是掌握计算机知识的必学内容。目前计算机软件技术基础的内容还没有统一的定义。作者在多年从事计算机软件技术基础课的教学实践过程中,经过不断的总结,认为计算机软件技术基础的内容应包括软件工程、程序设计方法、程序设计语言、操作系统的基本原理、常见操作系统的使用、数据库系统、常用数据库语言、计算机网络、数据结构和面向对象技术等。对于非计算机专业的学生来说,有些内容是不适宜放在一本书中介绍的。鉴于这种原因,在编写本书的过程中,作者对《计算机软件技术基础教程》(第一版)进行了适当的取舍,保留了软件工程、数据结构和数据库系统等三部分内容,同时增加了面向对象的系统分析和设计、并发程序设计和基于C/S计算模式的数据库开发技术(以SQL Server平台为基础)。
本书根据西安电忆科技大学非计算机专业计算机课程指导委员会研究确定的教学内容编写,内容主要包括软件工程、面向对象的系统分析和设计、并发程序设计和基于C/S计算模式的数据库开发技术、数据结构(用C语言描述算法)和数据库系统。软件工程主要介绍了开发较大型软件的全过程,使读者对开发大型软件系统有一个清楚的认识;面向对象的系统分析与设计主要介绍了基于面向对象的软件系统的开发过程;数据结构主要介绍了常见的数据结构(线性表、数组、队列、栈、树、图)以及查找、排序等算法,其中的算法都是用C语言实现的;数据库系统主要介绍了数据库系统的基本概念、关系数据库的基本概念、关系数据库的基本理论、数据库的设计以及基于客户/服务器的数据库开发技术。
目录
第1章绪论
1.1计算机软件及其发展
1.1.1计算机软件
1.1.2计算机软件的分类
1.1.3计算机软件的发展
1.2计算机软件技术
1.2.1计算机软件技术的主要范畴
1.2.2计算机软件技术的现状
1.2.3计算机软件技术的发展趋势
1.3软件技术基础
第2章软件工程概述
2.1软件危机
2.2软件工程
2.3技术审查和管理复审
2.4软件质量的评价
第3章需求分析
3.1问题定义和可行性研究
3.2需求分析
3.3结构化分析(SA方法)概述
3.3.1由顶向下逐层分解
3.3.2描述方式
3.4数据流图
3.5数据词典
3.5.1数据词典与数据流图的联系
3.5.2数据词典条目的各种类型
3.6需求分析阶段的其他工作
第4章总体设计
4.1模块化设计方法
4.2结构化设计(SD)方法
4.3arnas方法
4.4Jackson方法
4.5总体设计的其他工作
4.6详细设计
4.7编程
第5章软件检验
5.1动态检验
5.2静态检验
5.3正确性证明
5.4测试步骤
第6章面向对象的系统分析和设计
6.1面向对象技术概论
6.1.1引论
6.1.2面象对象的基本概念
6.1.3面向对象的分析方法
6.1.4面向对象设计初步
6.2面向对象的系统分析和系统设计
6.3系统分析方法
6.3.1OOA过程模型.
6.3.2研究问题论域及用户需求
6.3.3对象识别的客观性方法
6.3.4识别对象的内部特征
6.3.5识别对象的外部特征.
6.3.6信息建模的规范化过程
6.4系统设计阶段和步骤
6.4.1系统划分
6.4.2设计阶段
6.4.3设计步骤
6.5评审和修正OOA模型
6.5.1分析模型的一致性和完整性
……
第7章并发程序开发技术
第8章数据结构概述
第9章线性表
第10章栈和队列
第11章数组
第12章树
第13章图
第14章排序
第15章查找
第16章数据库系统概述
第17章关系数据库基本理论
第18章数据库设计
第19章客户/服务器数据库设计
参考文献
书摘插图
第1章 绪 论
随着计算机科学技术的发展和日趋成熟,计算机软件的概念也越来越准确。从广义上讲,它包括系统软件和应用软件两大类;从其分支学科的内涵来讲,当前它所包含的内容可概括为:软件基础理论和算法、构造计算机软件的方法学和软件开发工具以及与此相关的各种软件技术。计算机软件技术在整个计算机科学技术领域中,占有极其重要的地位。国际上许多专家都认为,软件技术有可能成为未来科学技术中最大的突破领域。我国也把计算机软件列为信息与通信领域的九项关键技术之一。因此,学习和掌握软件技术基础意义深远。
1.1计算机软件及其发展
1.1.1计算机软件
简单地说,计算机软件就是程序,但这一概念不够准确。严格地讲,计算机软件是指计算机程序和与之相关的文档资料的总和。文档是指编制程序所使用的技术资料和使用该程序的说明性资料(使用说明书等),即开发、使用和维护程序所需的一切资料。
从功能上讲,计算机软件是指利用计算机本身提供的逻辑功能,合理地组织计算机的工作流程,简化或替代人们使用计算机过程中的各个环节,提供给使用者一个便于操作的工作环境的“程序集”。因此,不论是支持计算机工作,还是支持用户应用的“程序集”,都是软件。
1.1.2计算机软件的分类
计算机软件种类繁多,概括起来分为两类:系统软件和应用软件。系统软件是指操作系统及其与之相关的各种软件的总称;应用软件是指为用户的特殊目的而开发的软件。
系统软件包括操作系统、语言开发系统和测试工具等。常见的操作系统有DOS、UNIX以及与之相关的Windows环境。常见的语言开发系统有C、C++、BASIC、FORTRAN、PASCAL、Lisp、Ada、Sybase、Informix、Oracle以及最新出现的Java等。
测试工具是指测试软件正确性的工具。测试工具主要有两种类型的工具。一类是调试工具,用来帮助软件设计人员排除软件错误,如汇编调试工具Debu9, 面向源代码的调试工具Turbo Debugger、CodeView等;另一类是测试工具,用来检验软件的正确性和可靠性。
1.1.3计算机软件的发展
计算机软件是在计算机软件技术和硬件技术发展的前提下得到发展的,其发展过程主要是从以下两条线索来体现的:
(1)计算机操作系统的发展过程;
(2)计算机软件开发系统的发展过程。
1.操作系统的发展
操作系统是随着计算机的发展而形成和发展起来的。概括地讲,其发展过程经历了三个阶段。
1)操作系统的酝酿阶段
在第一代计算机中,操作系统尚未出现,那时人们使用计算机都必须手工操作。每个程序员都必须亲自动手操作计算机,装入卡片叠或纸带,按按钮,查看存储单元等。这种操作方法给程序员带来许多不便。为了摆脱人的手工干预,使其自动进行,人们在计算机中装入了批处理软件,这样就可以成批处理程序员的成批输入。虽然这一进步克服了手工操作的缺点,但一些根本问题没有得到解决,例如系统保护差、错误处理和恢复能力差,更为严重的是有可能因为程序的错误而导致系统瘫痪。
随着硬件技术的发展,新的硬件不断出现,如通道、中断,这就迫使要对计算机上安装的软件做进一步的改进,因此就出现了系统程序。它负责整个计算机系统的硬件和软件的管理,体现了操作系统的雏形。
2)操作系统的形成阶段
由于计算机的硬件十分昂贵,因此人们就提出多道程序设计技术,即在单一的CPU下,
并发运行多个程序的技术。随之又出现了分时系统。为了适应新技术的需要,对系统程序进行了进一步的改进,形成了现在的操作系统。可以这样说,多道程序设计技术和分时系统的出现标志着操作系统的形成。
……
