03173软件开发工具-总复习

  • 格式:doc
  • 大小:274.50 KB
  • 文档页数:24

03173软件开发工具-串讲(考点串讲班)

题型 题量 分值 总分

单选 20 1 20

填空 20 1 20

简答 6 5 30

论述 1 10 10

应用 1 20 20

课程性质

本课程是高等教育自学考试“计算机信息管理”专业自学考试计划中,本科阶段的一门专业课程,开发软件能力是本专业学生必备的条件之一,本课程的目的是使学生在学习程序设计的基本知识之后,进一步了解和掌握软件开发的各类工具,从而提高软件开发能力与水平,以适应未来工作的需要。

本课程不是只介绍若干常用的软件开发工具,使学员只是站在一般程序员的角度,而是要从软件开发的组织者的高度,全面地认识与考虑软件开发的过程、组织等问题。

本课程既有一定的理论基础,又有实际上机操作作为背景。因此。学生应当结合自己的实践经验,认真从实践提高到理论,建立软件工程与软件开发工具的思想方法。

课程特点

理论部分1章,作为导言,概括地介绍软件开发工具的由来,概念,功能,性能,类别与使用环境。

理论部分2-4章,主要介绍了软件工程与程序设计学的基础知识;软件开发工具的有关理论基础知识,包括概念模式,信息库,人机界面,项目管理;软件开发工具各方面的技术状况。这部分是本课程理论知识的核心部分。

理论部分5-6章,主要介绍了人们在面对具体问题时,是购买现成的工具还是自行开发,以及需要考虑的各个因素;了解软件开发工具技术领域的发展现状和趋势。

实践部分7-8章,介绍Eclipse是什么,历史,用途以及体系结构,详细描述了Eclipse和JDK安装方法,着重介绍了Eclipse工作台的各个部分及基本功能,详细介绍了Eclipse中的透视图,视图,编辑器。

实践部分9-11章,介绍了MinGW和CDT的概念和安装方法,并着重介绍了使用Eclipse创建项目,源文件夹,类以及Eclipse重构功能。最后介绍了Eclipse CDT常用功能:编辑器自定义,定制工作台,格式化代码,生成历史记录。

实践部分12-14章,介绍了版本管理软件CVS的使用,Eclipse插件的开发,最后介绍了Rational Rose建模工具的使用。

基本要求

1、系统了解与掌握软件开发过程及其管理工作,深人理解有关的概念与原则,掌握提高软件质量的基本方法与途径。

2、全面了解软件开发工具的有关概念、功能、使用方法、开发方法等知识。

3、通过若干具体的软件开发工具,形成对使用软件开发工具的感性认识。

4、初步了解自行开发软件的方法与步骤。

5、了解软件工程及软件开发工具发展趋势,做好相应的知识准备。

第一篇 理论篇

第一章 绪论

考点1 软件开发工具的由来 考点2 软件开发工具的概念

考点3 软件开发工具的功能与性能 考点4 软件开发工具的类别

考点5 软件开发工具的研究使用

考点1 软件开发工具的由来

一、软件开发工具的范围

在高级程序设计语言(3GL)为基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、文档和管理等各方面,对软件开发者提供各种不同程度的帮助的一类型软件。

以下不属于软件工的范围:操作系统、计算机硬件系统、编译系统、第三代语言…、第四代语言(4GL)属于软件开发工具的范围

二、了解软件开发工具的展过程

1、工具产生之前:完全靠手工编写和绘图。

2、通用工具的使用:20世70年代,文档编写软件,绘图软件,不是专门为软件开发而设计的软件。

3、专用工具的使用:面向特定功能模块的代码生成程序(如报表生成器,菜单生成器,对话生成器),综合性第四代语言,专用于文档编写的工具,数字字典管理系统(DDMS),专用于画数据流图,E-R图或程序框图等绘图软件。

4、一体化工具的使用 :IBM公司的AD/Cycle,Eclipse,Viusal Stuodio。

三、理解软件开发工具产生及应用的必然性及发展趋势。

考点2 软件开发工具的概念

一、深刻理解软件与软件开发工作的实质。

软件:是机器的灵魂,硬件是躯体,是用户与硬件之间的桥梁。更深层次理解,是人类知识与智慧的结晶,知识的载体,是人类文明知识的保存,经验的积累的一种新的形式。

软件开发工作:从最初的一次性,具体的编程,扩大到了长期的,不断更新的过程。引入了版本控制,项目管理,软件重用等一系列概念。

二、了解对软件开发工具的不同认识。

软件开发工具的继承性和创新性:它是软件技术发展的必然产物和自然趋势,它的基本思想是致力于软件开发的高效优质;另一方面,它具备了一些以前软件开发工作没有的新思想新方法。

三、理解软件开发工具的概念、地位与作用。

1、它是在高级程序设计语言(3GL)之后,软件技术进一步发展的产物。

2、它的目的是在人们开发软件中给予各种不同方面、不同程度的支持或帮助。

3、它支持软件开发的全过程,不仅仅局限于编程和其它的稳定的工作阶段。

考点3 软件开发工具的功能与性能

一、了解软件开发的过程

需求分析,总体设计,程序和文档编写,测试,应用。

二、理解软件开发工具的五项基本功能

1、描述系统:需求分析阶段,认识了解客户的需求。

2、管理信息:存储软件开发各个阶段产生的许多信息。

3、生成代码:自动根据框架生成代码,提高代码效率。

4、生成文档:帮助自动生成文档,效率和一致性提到了保证。

5、项目管理:包括进度管理,资源和费用的管理。

三、理解软件开发工具的主要性能指标

1、表达能力:能适应软件项目的情况的变化,准确表达用户需求。

2、逻辑能力(一致性的保证):充分保证各个部分信息一致。

3、人机界面的水平(易用程度):使用方便,易于使用。

4、防错能力(可靠性):在各种干扰下,仍然保证可信,可靠。

5、对软硬件环境的要求:软件开发工具的环境要求就尽量降低。

考点4 软件开发工具的类别

一、了解支持不同工作阶段的三种工具

1、计划工具:更宏观的角度看待软件开发,帮助组织,实施和管理项目。

2、分析工具:用于支持需求分析的工具,如数据字典,流程图,结构图,ER图绘制工具。

3、设计工具:直接帮助编写和调试软件的工具,如代码生成器,测试工具。出现的最早,数量最多。

二、了解单项工具和集成工具的区别

单项工具:专用的,针对某一工作阶段的。

集成工具:将软件开发过程各个阶段考虑在内。

三、了解依赖于机器或软件的工具与独立工具的区别

是否独立于特定硬件和软件。

考点5 软件开发工具的使用与研究

一、软件开发工具的使用

1.计算机专业出身的技术人员

2.各个应用领域,比如金融,会计

3.软件技术或系统工程专家

学习软件开发的目的在于了解软件开发工具的概念,理论基础,基本功能发展现状与前景,以便在实际工作中正确地选择与使用软件开发工具,在必要时参加或组织软件开发工具的自行研制,从而达到提高软件工作水平与效率。

第二章 软件开发过程及组织

考点1 软件开发的困难 考点2 软件开发方法的发展 考点3 软件开发过程的管理

考点1 软件开发的困难

一、了解软件开发中的两个转换过程

• 从用户的理解到程序员的理解

• 从程序员的理解到机器的实现

二、深刻理解大型软件开发中的困难及产生原因

1.一致性保持的困难

2.测试的困难

3.工作进度控制的困难

4.文档与代码协调十分困难

5.版本管理困难

考点2 软件开发方法的发展

一、了解结构化程序设计的思想方法。

主要为程序员服务,以结构模块化方法来解构软件。

模块划分的要求:

1.模块功能尽量单一,明确

2.模块之间影响尽可能小,高凝聚,低耦合

3.模块规模应当足够小,便于调试

二、了解软件工程的基本思想与方法。

以工程学的方法,来对待软件开发,为项目管理者服务。

三、了解面向对象的程序设计的基本思想与方法。

该方法设计对类,对象为元素的思想方法越来越接近人们思维的方式。它把对复杂系统的识别归结为对一批对象及其关系的认识。

四、了解即插即用程序设计的基本思想与方法。

把软件当作机器的一个局部结构,并且把软件组件插人这个结构,以便迅速地完成大型软件的研制工作。

考点3 软件开发过程的管理

一、理解软件质量评价的主要方面

1、正确性:正确实现所有功能,输出正确结果。

2、易用性(界面友好):符合用户的使用习惯与知识能力。

3、效率:能够在给定时间,给出用户要求的结果。

4、可靠性:能在各种干扰条件下,正常工作。

5、可维护性:结构良好,文档齐全,方便以后修改。

二、理解程序员与项目组的关系

单个程序员:

一、具有程序设计所需要的基本知识与技能;

二、对本项目所在的领域有较深人的了解,

三、对于软件开发的技术环境比较熟悉;

项目组程序员:

一、保证严格地在本模块范围内操作,决不使用可能干扰其他模块的命令或函数。

二、二、严格按总体设计的要求和理解去传递参数值,决不随意修改其内容或含义。

三、了解对软件项目组的评价

1、有严格的、成文的工作规范和文档标准。

2、人员之间有严格的分工。

3、每个项目都要事先制定详细的时间表,并且得到严格执行。

第三章 软件开发工具的理论基础

考点1 软件开发过程的信息需求 考点2 概念模式及其作用 考点3 信息库及其一致性考点4 人机界面及其管理 考点5 项目管理与版本管理

考点1 软件开发过程的信息需求

一、了解软件开发过程中信息流通的模型

用户提供有关系统环境、现状及需求的信息。有关软件的功能设计与物理设计的各种信息。这类信息是由分析人员(或设计人员)根据需求分析而形成的,它体现为设计方案。软件成果本身,包括程序与文档。它是程序员根据设计方案,依据某种计算机语言编制出来,以上三类信息都存储在计算机中。

二、理解软件开发过程中涉及的信息类型

三、理解软件开发过程中要进行的信息管理

四、了解软件开发工具的理论及技术基础